looking for canonical list of xM SD images, validation and otherwise

the short form: what is the *current* list of SD images that one
can download and boot on an xM? and now, the longer form.

  for the purpose of documenting use of a BB xM potentially as a
teaching platform for my embedded linux/kernel programming/device
driver courses, i've convinced a local linux person to start
documenting everything i might want to know about an xM, right from
when one takes it out of the box, holds it up and wonders, "ok, now
what?"

  in my mind, the first level of documentation would be to list all
available and downloadable SD card images, so a newbie can, at the
very least, copy that image to the SD card, plug in and watch it boot.
that's victory number one.

  next step i imagine would be how to create an SD card by formatting
it manually, then populating it with pre-bult components (using
mkcard.sh or equivalent). then moving on to how to download the
appropriate source and build those components, and so on and so on.

  i *realize* all that info is out there (sort of). the problem seems
to be that it's scattered over so many locations (beagleboard.org,
elinux.org, angstrom-distribution.org,
http://angstrom.s3.amazonaws.com,
http://code.google.com/p/beagleboard/ etc etc). additionally, some of
that info is (not surprisingly) out of date, there are broken links
and so on, which makes it tough to be confident that you've downloaded
something that really should work. (also, i specifically want to
concentrate on the xM and some docs don't make it clear which BB they
refer to.)

  i realize the standard rebuttal is to just update what's already out
there without starting yet *another* doc repository. but, as i said,
there are just too many locations with duplicate info, or now slightly
out of date info, etc. it's just easier to design my own doc
structure, and happily link to pages that have been verified so i have
everything i need on a single page.

  to this end, i gave a local linux lady a free xM and associated
cables and accoutrements and, in exchange, she's going to start
collecting all this info for me. her job will be to follow the trails
of xM docs, test what she finds, and document only what truly works in
a very structured fashion.

  so, as a start, all i'm after for step 1 are pointers to SD card
images that should boot on an xM. and as all this info is collected
and formatted, i'll put some of it on a public wiki page (probably
want to keep *some* of it to myself for courseware purposes).

  anyway, that's the idea. initially, pointers to those SD images
appreciated, and we'll take it from there.

rday

p.s. there are other beagle info pages out there we'll be perusing as
well, such as:

  http://elinux.org/ECE497_Instructor_Guide
  http://free-electrons.com/blog/beagle-labs/

anyway, there's no lack of content to work with.

...

As an individual newbie developer on the XM, I had much the same
frustration. There is no single authoritative voice about getting
started and/or selecting an appropriate path for your particular
needs. This may just be a fact of life in a volunteer project that is
producing a board with a very wide range of possible OSs and
applications.

If you can compile a good list for your teaching purposes, it will
likely be yet another web document among hundreds that new users will
have to search for and decide if it has the answer for them. (And it
will fall out of date in a few months!)

I hope I'm too pessimistic about this. Maybe someone will take on
documentation of the Beagle products and OS options as their mission
in life and people will coalesce around him or her.

Happy New Year!
Martin

Robert:
A list of SD images would be handy; however…

I’ve found that the timing for a 10 week course is too tight for most Open Source stuff. A day’s delay waiting for something to be fixed is often too much of a delay. My solution is to find an SD I like and keep a copy of it [1] so I can be sure what I have works. The local image has the added advantage of being much faster for the students to access on campus. (They have a rather generous rolling download limit, but 1.3G can push them over if they aren’t careful.)

My SD image has all the development tools preloaded so we can start work once the Beagle boots. No need to wait for them to get a Linux host installed somewhere. They use git [2] on the Beagle to load my most recent exercises.

I spend the first 4 weeks doing exercises on the Beagle only [3]. We finish with real-time audio and video I/O. We even do a little work with the DSP via c6run.

This 4 week Beagle-only work gives the students 4 weeks to get a Linux host installed and get a successful run of bitbake virtual/kernel. By week 5 I’m ready to start looking at kernel sources on the host and they have had plenty of time to get things installed.

This is the first time I’ve done it this way. Week 4 is about to end, we’ll see if it really works. If all else fails, I have a virtual machine (with the kernel sources preinstalled) ready to handout if needed.

–Mark

[1] http://www.rose-hulman.edu/~yoder/Beagle/
[2] https://github.com/MarkAYoder/BeagleBoard-exercises
[3] http://elinux.org/ECE497_Calendar_and_Exercises

Robert -- Being fairly new with the Beagles, I'm running into a similar situation. Thanks for being willing to take on the task of gathering image info together. I'm glad to contribute in any way I can, although I'm still near the bottom of the Beagle curve (I'm higher up on the Linux curve). What Martin said makes a lot of sense, about maintaining the docs and making them definitive enough to stand above all the other (sometimes conflicting) documentation.

There's one thing you may want to consider adding -- a list of errata for each image. Of the images I've tried so far (just a few), none of them worked completely; they all had some broken parts that needed finding and fixing. I realize that these may be out of date, but I see that as part of the problem...keeping up with the latest and best images.

For example, the Ubuntu 11.10 image (really a rootfs tarball, not an "image" per se) can't keep the network running for more than 10 minutes, the ULCD7 is out of alignment by several pixel rows, and its touchscreen doesn't work. The ULCD7 demo image has several Gnome-related issues, can't run the SGX graphics demos, and opkg update chokes on a missing libc upgrade package (after running opkg update, of course). I've found and fixed several of them, and it would be great to have a place to record those fixes (and have others improve upon them).

Mark -- thanks so much for sharing your class information. I like your approach of getting the basics running, then taking "deeper" passes into how things are put together, and how to build from source. It seems much more beginner-friendly than just pointing to the Angstrom build-from-source instructions straight away.

Again, let me know how I can help.
-Ed-

Robert -- Being fairly new with the Beagles, I'm running into a similar situation. Thanks for being willing to take on the task of gathering image info together. I'm glad to contribute in any way I can, although I'm still near the bottom of the Beagle curve (I'm higher up on the Linux curve). What Martin said makes a lot of sense, about maintaining the docs and making them definitive enough to stand above all the other (sometimes conflicting) documentation.

There's one thing you may want to consider adding -- a list of errata for each image. Of the images I've tried so far (just a few), none of them worked completely; they all had some broken parts that needed finding and fixing. I realize that these may be out of date, but I see that as part of the problem...keeping up with the latest and best images.

For example, the Ubuntu 11.10 image (really a rootfs tarball, not an "image" per se) can't keep the network running for more than 10 minutes,

Do you have a dmesg or serial log showing that? Wifi or ethernet?

the ULCD7 is out of alignment by several pixel rows, and its touchscreen doesn't work.

known issue as stated, "CircuitCo ulcd now works (needs a little
tweaking)" haven't had time to work our the rest, specially with the
holidays. your welcome to help out if you have time?

https://github.com/RobertCNelson/stable-kernel

The ULCD7 demo image has several Gnome-related issues, can't run the SGX graphics demos

Really, which SGX demo's, do you have an error log/etc?

You followed "http://elinux.org/BeagleBoardUbuntu#SGX_Video_Acceleration" right?

Regards,

> the short form: what is the *current* list of SD images that one
> can download and boot on an xM? and now, the longer form.
>
...

As an individual newbie developer on the XM, I had much the same
frustration. There is no single authoritative voice about getting
started and/or selecting an appropriate path for your particular
needs. This may just be a fact of life in a volunteer project that
is producing a board with a very wide range of possible OSs and
applications.

  i'm not trying to compile an "authoritative" doc that will be all
things to all people. all i want is a relatively comprehensive list
that suits *my* purposes -- i.e., a basis for getting people up to
speed in any embedded linux course i teach. so i don't need to cover
*everything*, but what i document absolutely has to be correct and
reproducible.

If you can compile a good list for your teaching purposes, it will
likely be yet another web document among hundreds that new users
will have to search for and decide if it has the answer for them.
(And it will fall out of date in a few months!)

  i've already arranged that the person helping me with this will
check around on a regular basis and update whatever needs updating.
again, i'm not trying to document *everything*; all i want is a decent
set of docs that covers a minimal set of topics that's guaranteed to
be correct.

  more rationale in the next post.

rday

Robert: A list of SD images would be handy; however...

I've found that the timing for a 10 week course is too tight for
most Open Source stuff. A day's delay waiting for something to be
fixed is often too much of a delay. My solution is to find an SD I
like and keep a copy of it [1] so I can be sure what I have works.
The local image has the added advantage of being much faster for the
students to access on campus. (They have a rather generous rolling
download limit, but 1.3G can push them over if they aren't careful.)

  the timing for a 5-day, 9-to-5 embedded linux course is even
tighter. :slight_smile: that implies what i mentioned in my last post -- i don't
want to document everything possible on an xM. but i need to make
sure that what i *think* works *does* work. so when i find something
stable, i'll hang onto it.

My SD image has all the development tools preloaded so we can start
work once the Beagle boots. No need to wait for them to get a Linux
host installed somewhere. They use git [2] on the Beagle to load my
most recent exercises.

I spend the first 4 weeks doing exercises on the Beagle only [3]. We
finish with real-time audio and video I/O. We even do a little work
with the DSP via c6run.

This 4 week Beagle-only work gives the students 4 weeks to get a
Linux host installed and get a successful run of bitbake
virtual/kernel. By week 5 I'm ready to start looking at kernel
sources on the host and they have had plenty of time to get things
installed.

This is the first time I've done it this way. Week 4 is about to
end, we'll see if it really works. If all else fails, I have a
virtual machine (with the kernel sources preinstalled) ready to
handout if needed.

--Mark

[1] http://www.rose-hulman.edu/~yoder/Beagle/
[2] https://github.com/MarkAYoder/BeagleBoard-exercises
[3] http://elinux.org/ECE497_Calendar_and_Exercises

  to make a long story short, given the necessity for stuff to "just
work" when teaching a corporate client, my main goal is simply to
document what works. period. when a corporate client is paying real
money for an embedded linux class, the last thing they want is time
wasted when something in the student manual doesn't work the way it's
described. and the one phrase i cannot abide in any technical
documentation is, "if that doesn't work, ...". that's just
unacceptable.

  that's pretty much it. i know what *i* need, so i've arranged for
someone else to start running around the net, tracking down various
sources of info, testing what works and what doesn't, and so on. and
if something out there doesn't work as described, there will be no
effort to fix it -- she'll just move on. and in the end, i'll get
what i need, and it'll be correct.

rday

... snip ...

[1] http://www.rose-hulman.edu/~yoder/Beagle/
[2] https://github.com/MarkAYoder/BeagleBoard-exercises
[3] http://elinux.org/ECE497_Calendar_and_Exercises

  the above is for an xM, not an original beagle, right?

rday

Yup, it’s all -xM, but It should also run on the original too.

–Mark

Ouch! A 5-day workshop would be very tight. I’ve done some 3-hour workshops for faculty and have found doing everything on the Beagle really simplifies things, but I don’t any kernel work in the workshop.

I’m beginning to think that “if that doesn’t work, …” is part of dealing with Open Source. You have to always be ready for something not working today that worked yesterday.

–Mark

well, we'll find out when i teach the re-designed course for the
first time, but i have some time-saving techniques i've used before
that really make a difference.

  the biggest time-saver is, if it's a single corporate client (which
it typically is), i send a *very* detailed list of what i expect each
student to do ahead of time. i'd have them set up at least the basics
of the development host, and "git clone" the mainstream kernel. and
assuming they'd get the boards ahead of time, i'd tell them it's their
responsibility to make sure they can boot a prebuilt image based on
detailed instructions i send.

  it doesn't take much prep to ensure that, come the first day of
class, every student has verified at least the first part of what's
necessary, at which point we can jump right in to the good stuff.

rday

Hi Robert -

Thanks for your kind offers of help. Unfortunately, I've already overwritten those SD cards with a couple of Android images. to see if they were more stable than the Linux images I've managed to find. So to debug either Angstrom or Ubuntu, I'd have to start over again. I'm not ready to do that just now. Although I'm quite capable of OS hacking, that isn't why I bought my Beagles. I want to tinker around with writing some interesting apps that relate to hobbies I have (ham radio and old VWs), not spend my time hunting and fixing OS bugs. I've been really disappointed so far that I haven't been able to find any "load and go" images that work well enough to be usable for me.

Sadly, the Android images I've tried, from Rowboat and from the TI devkit website, are in much the same shape as the Linux images I've tried -- some things work, but too much is broken to be usable to me. I guess I expected the OS layer to be much more stable than it actually is. Or maybe I just haven't opened the right treasure chest yet.

Linaro sounds promising; I'm going to give their milestone images a try next. If their OS builds are in the same state of flux as the others, I'll just have to rethink the whole Beagle thing.

Thanks again for being willing to work with me. From everything I've seen, this community is very supportive.
-Ed-

For example, the Ubuntu 11.10 image (really a rootfs tarball, not an "image" per se) can't keep the network running for more than 10 minutes,

Do you have a dmesg or serial log showing that? Wifi or ethernet?

the ULCD7 is out of alignment by several pixel rows, and its touchscreen doesn't work.

known issue as stated, "CircuitCo ulcd now works (needs a little
tweaking)" haven't had time to work our the rest, specially with the
holidays. your welcome to help out if you have time?

https://github.com/RobertCNelson/stable-kernel

The ULCD7 demo image has several Gnome-related issues, can't run the SGX graphics demos

Really, which SGX demo's, do you have an error log/etc?

You followed "http://elinux.org/BeagleBoardUbuntu#SGX_Video_Acceleration" right?

Regards,

--
Robert Nelson
http://www.rcn-ee.com/

Hi Robert -

Thanks for your kind offers of help. Unfortunately, I've already overwritten those SD cards with a couple of Android images. to see if they were more stable than the Linux images I've managed to find. So to debug either Angstrom or Ubuntu, I'd have to start over again. I'm not ready to do that just now. Although I'm quite capable of OS hacking, that isn't why I bought my Beagles. I want to tinker around with writing some interesting apps that relate to hobbies I have (ham radio and old VWs), not spend my time hunting and fixing OS bugs. I've been really disappointed so far that I haven't been able to find any "load and go" images that work well enough to be usable for me.

Most of the time it is "load and go", but there's always something
"unique" about the end users setup that requires a tweak.. This is
linux, not windows (one size fits all abomination :wink: )..

Sadly, the Android images I've tried, from Rowboat and from the TI devkit website, are in much the same shape as the Linux images I've tried -- some things work, but too much is broken to be usable to me. I guess I expected the OS layer to be much more stable than it actually is. Or maybe I just haven't opened the right treasure chest yet.

Linaro sounds promising; I'm going to give their milestone images a try next. If their OS builds are in the same state of flux as the others, I'll just have to rethink the whole Beagle thing.

Really? Just last month Linaro was about to drop all support for the
beagle... (until the community backlash'd)... Linaro operates on $,
the community's supported the Beagle long before Linaro came into
existence..

The Beagle has been supported primary by the community and has been
mainline for few years in both the u-boot/kernel.. And Angstrom is
the primary developers distro for most of the developers of the beagle
on this list..

Next time, report your issues to this mailing list, otherwise we can't
help you, and only you see the issue..

Regards,

the short form: what is the current list of SD images that one
can download and boot on an xM? and now, the longer form.

http://beagleboard.org/project was meant to be the canonical location to register projects, including ones that produce demo SD cards.

I’m interested in adding a field for a link to the latest 4GB SD card image file and a way to sort. Do you think people making demo images (or tracking people making demo images) would update them? Any suggestions to automatically update?