Finding hardware revision
From Openmoko
NOTE! The string found in /proc/cpuinfo IS NOT A RELIABLE INDICATOR OF WHICH HARDWARE YOU HAVE! [citation needed -- for shipping A5 and A6 PCBs it should be perfectly reliable]
For all methods, you will need to login via USB Networking or otherwise SSH into your FreeRunner, and find the hardware revision using one of the following methods:
/proc/cpuinfo
root@om-gta02:~# cat /proc/cpuinfo . . . Hardware : GTA02 Revision : 0350
The line that says "Revision" is the one you want. The "03" means it's a FreeRunner, and the "05" indicates the hardware revision, in this case revision 05.
Caution: may be wrong for hardware versions earlier than 05, or for u-boot earlier than about June, 2008.
Using libgsmd-tool
root@om-gta02:~# libgsmd-tool -m shell libgsm-tool - (C) 2006-2007 by Harald Welte and Openmoko, Inc. This program is Free Software and has ABSOLUTELY NO WARRANTY rv # # Get revision revision: "HW: GTA02BV5, GSM: gsm_ac_gp_fd_pu_em_cph_ds_vc_cal35_ri_36_amd8_ts0-Moko8"
FSO
If your are running fso, you can use mickeyterm and the at+cgmr command. Or you can use mdbus, like this:
root@om-gta01:~# mdbus -s org.freesmartphone.ogsmd /org/freesmartphone/GSM/Device org.freesmartphone.GSM.Device.GetInfo
The result will be something like this:
/org/freesmartphone/GSM/Device: GetInfo -> dbus.Dictionary({dbus.String(u'imei'): dbus.String(u'nnnnnnnnnnnnnnn', variant_level=1), dbus.String(u'model'): dbus.String(u'Neo1973 GTA01 Embedded GSM Modem', variant_level=1), dbus.String(u'revision'): dbus.String(u'HW: GTA01Bv4, GSM: gsm_ac_gp_fd_pu_em_cph_ds_vc_cal35_ri_36_amd8_ts0-Moko1', variant_level=1), dbus.String(u'manufacturer'): dbus.String(u'FIC/OpenMoko', variant_level=1)}, signature=dbus.Signature('sv'))
Where 'nnnnnnnnnnnnnnn' is you IMEI.