User:Historybuff/notes

From Openmoko

< User:Historybuff(Difference between revisions)
Jump to: navigation, search
(GPS stuff: Web archive doesn't have this on its site; the original blog is still pokey, but it seems to be working stometimes)
(GPS stuff: add some links)
Line 13: Line 13:
 
(all on one line, cut for readability)
 
(all on one line, cut for readability)
  
[http://vancouver-webpages.com/peter/nmeafaq.txt] contains some good info for decoding, and [http://www.openmoko.org.pl/node/55] is a good link for getting started.
+
[http://vancouver-webpages.com/peter/nmeafaq.txt] contains some good info for decoding, and [http://www.openmoko.org.pl/node/55] is a good link for getting started. Another good link is [http://wiki.openstreetmap.org/index.php/NMEA here at OSM]
  
 
There are some reasonable packages which can help with GPS now, such as [[Navit]] and [[Installing_Pyroute|Pyroute]] (thanks [[User:Wurp]]. I'll have to hack at them a bit when I get a chance.
 
There are some reasonable packages which can help with GPS now, such as [[Navit]] and [[Installing_Pyroute|Pyroute]] (thanks [[User:Wurp]]. I'll have to hack at them a bit when I get a chance.
 +
 +
I've done some hacking with awk scripts, so I know a bit about the layout and format of the various NMEA bits. For one bit that is undocumented, here is a ref to the [http://svnweb.openmoko.org/developers/olv/openmoko-agpsui2/src/nmea.h?rev=3371&view=markup OM repo] - the bit I was looking for was the $PGLOR sentence.
  
 
== Power/PM/tray icon ==
 
== Power/PM/tray icon ==

Revision as of 08:53, 25 February 2008

These are my scribbles. Should be cleaned up and moved into real pages if useful.

Contents

Build info

Get your daily Snapshot_review -- find out if a snapshot works before you flash it.

GPS stuff

GPS Sight - seems to be a basic track visualizer

Ugly hack to get Time info from a GPS stream: (UNTESTED)

awk -F',' '/^\$GPRMC/{print "date "substr($10,3,2) substr($10,1,2) 
substr($2,1,2) substr($2,3,2) 2000+substr($10,5)"."substr($2,5)}'

(all on one line, cut for readability)

[1] contains some good info for decoding, and [2] is a good link for getting started. Another good link is here at OSM

There are some reasonable packages which can help with GPS now, such as Navit and Pyroute (thanks User:Wurp. I'll have to hack at them a bit when I get a chance.

I've done some hacking with awk scripts, so I know a bit about the layout and format of the various NMEA bits. For one bit that is undocumented, here is a ref to the OM repo - the bit I was looking for was the $PGLOR sentence.

Power/PM/tray icon

Module for mb_panel -- should use /proc/apm to look at Power remaining.

Getting Battery status: cat `find /sys/ -name battvolt` the output is in millivolts. ~4224 millivolts is completely charged (observed 3568 lowest, 4207 highest)

exact location is /sys/devices/platform/s3c2410-i2c/i2c-adapter/i2c-0/0-0008/

nicer script (cwd must be above)- CHARGE=`cat battvolt` && awk -v charge=${CHARGE} 'BEGIN {print charge/4224*100" "charge }'

uncatted now

This is a mess right now, but undergoing cleaning.

Setting the timezone: [3] (I had to use a hard link, but a symlink should work. Remember to log out (remote) or cycle the GUI/reboot to get this to take effect).

Development with Eclipse - have to check it out.

The essential GSM_850_test

Orientation of screen:

xrandr -o 1 turns screen to landscape mode (xrandr -o 0 to go back to ordinary portrait)


GTA01_gsm_modem for AT commands; Gsmd for manual AT stuff

To get sound working: alsactl -f /etc/alsa/gsmhandset.state restore

Trying to record sound from the mic:

cat /dev/dsp does sample the ADC It's then 'simply' a case of setting the mixer controls so that the sound is routed from the mic to the adc See the nice simple explanatory block diagram in the middle of http://wiki.openmoko.org/wiki/Neo1973_Audio_Subsystem for guidance. In principle. You need to find which mic input the mic is connected to, setup the input gain and mic selector appropriately,setup the ALC mixer right, then set it up to route to the left or right ADC alsactl can do it (alsamixer)

alsactl -f /etc/alsa/capturehandset.state restore
arecord -f cd -t wav -d 10 foo.wav
Make noise for 10 seconds
alsactl -f /etc/alsa/stereoout.state restore
aplay foo.wav

Note from User:Wurp: You'll need to shut down pulseaudio before aplay will work (you also need to do this to get mplayer to play audio). Use '/etc/init.d/pulseaudio stop' before 'aplay foo.wav'. There is probably a better way to do this, but I don't know it.

Booting: Old boot noise documented here

more GPS:

Note from User:Wurp: I got an awk script, I think from SpeedEvil, that deciphers /tmp/nmeaNP. Here it is:

BEGIN{FS=","}
/GPRMC/{v=$8*1.1507}
/PGRME/{herr=sqrt($2^2+$4^2); err=$6}
/GPGGA/{
h=substr($2,1,2)
m=substr($2,3,2)
s=substr($2,5,2)
ndeg=substr($3,1,2)
nmin=substr($3,3)
wdeg=substr($5,1,3)
wmin=substr($5,4)}
/GPRMC/{print substr($10,1,2)"/"substr($10,3,2)"/"substr($10,5,2), h":"m":"s,(h*3600)+(m*60)+s,ndeg,nmin,wdeg,wmin, ndeg+(nmin/60),wdeg+(wmin/60), $10,$9,herr+0,err+0,v }

I prefer to use gpsd output, though, via pygps.

Personal tools
These are my scribbles. Should be cleaned up and moved into real pages if useful.

Build info

Get your daily Snapshot_review -- find out if a snapshot works before you flash it.

GPS stuff

GPS Sight - seems to be a basic track visualizer

Ugly hack to get Time info from a GPS stream: (UNTESTED)

awk -F',' '/^\$GPRMC/{print "date "substr($10,3,2) substr($10,1,2) 
substr($2,1,2) substr($2,3,2) 2000+substr($10,5)"."substr($2,5)}'

(all on one line, cut for readability)

[1] contains some good info for decoding, and [2] is a good link for getting started. Another good link is here at OSM

There are some reasonable packages which can help with GPS now, such as Navit and Pyroute (thanks User:Wurp. I'll have to hack at them a bit when I get a chance.

I've done some hacking with awk scripts, so I know a bit about the layout and format of the various NMEA bits. For one bit that is undocumented, here is a ref to the OM repo - the bit I was looking for was the $PGLOR sentence.

Power/PM/tray icon

Module for mb_panel -- should use /proc/apm to look at Power remaining.

Getting Battery status: cat `find /sys/ -name battvolt` the output is in millivolts. ~4224 millivolts is completely charged (observed 3568 lowest, 4207 highest)

exact location is /sys/devices/platform/s3c2410-i2c/i2c-adapter/i2c-0/0-0008/

nicer script (cwd must be above)- CHARGE=`cat battvolt` && awk -v charge=${CHARGE} 'BEGIN {print charge/4224*100" "charge }'

uncatted now

This is a mess right now, but undergoing cleaning.

Setting the timezone: [3] (I had to use a hard link, but a symlink should work. Remember to log out (remote) or cycle the GUI/reboot to get this to take effect).

Development with Eclipse - have to check it out.

The essential GSM_850_test

Orientation of screen:

xrandr -o 1 turns screen to landscape mode (xrandr -o 0 to go back to ordinary portrait)


GTA01_gsm_modem for AT commands; Gsmd for manual AT stuff

To get sound working: alsactl -f /etc/alsa/gsmhandset.state restore

Trying to record sound from the mic:

cat /dev/dsp does sample the ADC It's then 'simply' a case of setting the mixer controls so that the sound is routed from the mic to the adc See the nice simple explanatory block diagram in the middle of http://wiki.openmoko.org/wiki/Neo1973_Audio_Subsystem for guidance. In principle. You need to find which mic input the mic is connected to, setup the input gain and mic selector appropriately,setup the ALC mixer right, then set it up to route to the left or right ADC alsactl can do it (alsamixer)

alsactl -f /etc/alsa/capturehandset.state restore
arecord -f cd -t wav -d 10 foo.wav
Make noise for 10 seconds
alsactl -f /etc/alsa/stereoout.state restore
aplay foo.wav

Note from User:Wurp: You'll need to shut down pulseaudio before aplay will work (you also need to do this to get mplayer to play audio). Use '/etc/init.d/pulseaudio stop' before 'aplay foo.wav'. There is probably a better way to do this, but I don't know it.

Booting: Old boot noise documented here

more GPS:

Note from User:Wurp: I got an awk script, I think from SpeedEvil, that deciphers /tmp/nmeaNP. Here it is:

BEGIN{FS=","}
/GPRMC/{v=$8*1.1507}
/PGRME/{herr=sqrt($2^2+$4^2); err=$6}
/GPGGA/{
h=substr($2,1,2)
m=substr($2,3,2)
s=substr($2,5,2)
ndeg=substr($3,1,2)
nmin=substr($3,3)
wdeg=substr($5,1,3)
wmin=substr($5,4)}
/GPRMC/{print substr($10,1,2)"/"substr($10,3,2)"/"substr($10,5,2), h":"m":"s,(h*3600)+(m*60)+s,ndeg,nmin,wdeg,wmin, ndeg+(nmin/60),wdeg+(wmin/60), $10,$9,herr+0,err+0,v }

I prefer to use gpsd output, though, via pygps.