Trying to get the "big picture" of this Beagleboard!

Dear gentlemen (and ladies if any),

I have decided to obtain one of this Beagleboards in next few days.
I would like to ask you about some general issues regarding this
board, and would appreciate your help. I have already read messages
here and visited some sites that I was able to find, but didn't find
there exactly what I needed.
Maybe I miss it somewhere, so if you know any place where I could get
answers to following questions you don't have to answer, simple link
would be just ok.

So, here's how it is...
I have experience in working with 8-bit and 16-bit microcontrolers.
When I used any operating sistem on that platforms it was nothing like
linux or anythin else of that complexity.
I want to include this 32-bit ARM architecture in my work.
Regarding this Beagleboard I need some general information:

1. What all hardware, besides the Beagle borad, should I have in order
to START with this board? I know I need screen to see what's happening
and some keyboard or mouse to interact with the system, but is there
anything else besides that?
2. Can I program this board with just USB cable or I need some other
peace of hardware?
3. I have "USB Wiggler for Debug via OCDS Level 1" (JTAG) from
Infineon develpment kit for XC167 microcontroler. Can I use this
Wiggler on Beagleboard or do I need one especialy designed for it,
and which one if yes? The connector itself is not a problem, I can
arrange it "mechanicaly" if it doesn't fit, but what concerns me is if
it fits "electronicaly".
4. If I want to use Linux on Beagle board, do I need to have a linux
desktop/laptot sistem to go with that? I suppose that I can find
already compiled files and flash them in the board using windows
computer, but that's not what I ask. I ask if I want to write software
for this board, test it and debug it etc.. and if that software on
Beagleboard runs on Linux, should I have Linux sistem on my comp? In
other words, do the software development tools for linux ARM platform
exist only for linux OS, or it can be done also on Windows? I'm not
insisting on Windows, it's just a question. I'll instal linux right
away if it's only, or in any way better solution than Windows is for
this purpose.
5. What (embedded) version on linux can I use on this board?
6. What software tools do I need for developing programs for linux ARM
platform (IDE, compiler, programmer....)? I mean what are their names.
Please refer only to free software.
7. Is there any simple tutorial for first steps with this board in a
way that it starts with unpacking the board from the box, obtaining
appropriate hardware and software, connecting cables, writing and
compiling some simple program and running it on the Beagleboard? All
what I have found is how to test the board after getting it out of the
box to see if it operates correctly, but it's just like "plug the
cable and turn on the POWER button to see if its working"...
8. Is it true that the board will die if it gets 5.5V power supply?!
(0.5V more than required)

I know that the answers on this questions surrely could be find
somwhere, but it would be of great help not just for me, but for all
those like me, if we could get a few of this beginners information
collected together in one place. It could save us a lot of time.

Sorry for such a long post, and thank you for paying attention to
this.
And many thanks for those who answer any of this questions.

Will these two links useful to you?

http://code.google.com/p/beagleboard/
http://elinux.org/BeagleBoard

Check out the FAQ as well: http://elinux.org/BeagleBoardFAQ.

Unfortunately, there does not appear to be any stand-alone tutorial on
getting "Hello world" running in 25 easy steps. The information is
kind of scattered all over the place. It's hard to write a single
tutorial since people are using so many different development
platforms. A few of us even persist in using Windows as a development
platform, but the Linux people have treated us with kindness and pity
rather than name-calling and derision :slight_smile:

When I was a newbie I started by getting Koen's Ångström demo
working. That's a very nice Linux implementation suitable for
developing both graphical and non-graphical applications. I wrote up
a list of things that weren't easily found:
http://groups.google.com/group/beagleboard/browse_thread/thread/3156ba8903dac3f4.

I haven't needed to do any JTAG-level debugging, so I haven't needed
any JTAG equipment. I just do lots of printf's. So besides the
BeagleBoard I have: +5V regulated power supply (yes, it must be well-
regulated or you will have a toasted BeagleBoard), 10pin IDC to DB9
ribbon cable, null modem cable, DVI-D monitor, DVI-D to HDMI cable, a
1GB SD card for Linux file system, externally-powered USB hub, USB
mouse, USB keyboard, and USB flash drive for transferring executables
between development platform and BeagleBoard. I built my own case,
but you can buy them. Check out the BeagleBoard Wiki and FAQ for
information about the BeagleBoard OTG USB connector and the USB mini A/
B issues.

Hope this helps.

An important note about the JTAG wiggler:
You will need to do some voltage translation to get the JTAG signals from your wiggler ( probably 3V or 5V ) to interface to the 1.8V logic of the CPU, otherwise you may damage those pins and/or the CPU itself.

For the development tools you will need, i recommend using the angstrom distro and openembedded to start with, this is whats used to create Koen’s excellent demo images, and once you start to get your head around openembedded and how it works, its a great way to create software for beagle. Just make sure you have around 30GB of free space for it.

You also dont ‘need’ the JTAG for development, as since you will mainly be working with files on the SD card…you also dont need a monitor to play around with, as you can use the RS232 serial port to access a command line on beagle.

But unfortunately, there isnt much newbie developer information collected in one place for beagleboard, maybe because as mentioned, there are many different dev tools and systems people develop with, so making a ‘howto-to-rule-them-all’ would be difficult and time consuming. But since many beagle users use openembedded and angstrom, it may be a good idea to put together newbie information about common usage of these tools to get people started e.g. cross-compiling linux software for beagle, explaining what openembedded is all about and how to use/configure it in real-world beagleboard usage, explaining the daunting array of linux development jargon, tools and development processes, compiling a ‘hello world’ app, etc etc…I would do so myself, but i am very much a newbie as well ( im an 8/16 bit dev )

So the best way i have found to learn how to develop on beagleboard is to read, read and re-read. Slow, inefficient and confusing…absolutely, but it can be done :slight_smile: The links in this thread are a good start. If you can get your hands on some embedded linux books ( modern ones ), they can be a good help.

Also John Beetem’s advice on the extra bits and cables is very good, you will need pretty much all of those items in his list.

Hope this helps somewhat.
Caillyn

Thank guys, you've been of great help!

Some of links you've provided I've already seen, and some not, but
I've read them again anyway. It doesn't seem so confusing after
reading them second time. After all , those exces information that I
don't need right now, we'll probably come to use after I move a little
away from the start.
It seems that my desire to start as soon as possible was bigger then
the naturall speed of and collecting and learning usefull
information.

Nevertheless, when I'm done with this start I'll write my experince in
a "from a beginner to a beginner" fashion, trying to explain all those
procedures, terms, abbrevations and such things not known apriory to
people new to this area.

Kind regards,
omx