User:ThomasT

From Openmoko

Revision as of 11:04, 12 November 2008 by ThomasT (Talk | contribs)

Jump to: navigation, search

Contents

My System

  • Debian without frameworkd
  • window manager: ratpoison
  • GUI: ratmen4wp

Hardware Issues

GSM Modem not working

I could not communicate with the modem not even with u-boot and after removing battery over night. In this case with FSO frameworkd slowed down the system very much, OM2008.9 was almost not usable.

I removed frameword (fso-gpsd does not work without frameworkd and therefore needed to be replaced by gpsd.

Using GPRS is possible, but a bit tricky. I am currently swichting GSM off and on waiting for the modem startup message. But sometimes I get a strange "alarm".

Real Time Clock unreliable

The RTC is approx. 12 min off per day. I wonder whether the 10pF capacitors at the oscillator crystal are really needed. Maybe I can tune the RTC by lowering the values of those capacitors. Or is there a tuning register in the RTC unit?

Bicycle Computer

Biking

Existing Projects and Experiences

Mounting


Water Protection

Power Supply

Due to the relatively high current consumption of the Freerunner a power supply from a hub dynamo seems to be unavoidable.

I skip the switch mode regulator and will use simple Z-Diode parallel to the Freerunner. Later I want to add an LED light parallel to both.

GPS

Existing Software

Getting GPS Data

On Freerunner there is no need to read from gpsd or similar. I just can get the data from /dev/ttySAC1

Additional GPS Functions

Altitude Plots

Of the travelled track and also of the upcoming (hopefully OSM will soon provide elevation information of the roads)

Trip Information

Garmin Etrex Legends trip information display is to stupid. I want infos for the current day and for the time since last break.

Location Reporting

If I have internet access via the phone during my trip I can regularily update my on webpage with location markers as shown here: http://wiki.openstreetmap.org/index.php/Openlayers_POI_layer_example

Slope, Vertical Speed

The GPS does not give sufficiently accurate vertical speed. A barometric sensor (see Variometer) would be nice. Calculation of the vertical speed by integrating the accelerometer readings also not accurate. But maybe it is possible to use the accelerometers to measure the slope of the road. How to calibrate it? Is it possible to automatically calibrate it from GSP reading?

Sideward Inclination of the Bicycle

By measuring the increase of the total acceleration not by change of the acceleration angle.


Road Quality

Can the road (e.i. surface) quality be recorded by measuring the vibrations with the accelerometers?


Car Counter

... using the builtin microphone. Or would it be possible with the accelerometers using high sampling rate?


Heart Rate Monitor

Are there Bluetooth Heart Rate Transmitters available?


Pedalling Frequency

Pedal sensors with Bluetooth and power supply by magnetic induction would be nice.

Otherwise USB with an FTDI chip.


Panorama Viewer

Online panorama viewer similar to gipfel. Instead of the photo image we show the mountain panorama calculated from SRTM data. Online calculation with the SRTM data is much to slow, we use only the precalculated water divide lines.

Programming

Language

Python

UI

python-etk

I could not find any documentation yet. Seems to be the same as python-gtk.

I don't want to have eye-candies. Maybe eye-candies are neccessary for selling phones. Eye-candies cause eye-caries or even brain-caries. ;-) They are for gamers.

Colors are o.k. if they carry information. Color gradients of menu bars are useless and annoying.

Maybe I should directly call xlib instead of using some *tk. From python I could try http://python-xlib.sourceforge.net/ .

Tichy

Tichy

alternative window managers

The bicycle computer should show different values at the same time. This should be user configurable at runtime. What about having little python scripts just showing a window with one value and let the window mananger do the rest?

It seems ratpoison is the best window manager for openmoko.


Plotting

matplotlib? might be an overkill. Anything usable lightweight available?

Jogging

Accelerometer

Mount the Freerunner to the shin and measure the damping and motion style with different shoes at various speeds. Especially interesting to watch the aging of the shoes (different damping).

Openstreetmap

I would like to have a simple application to add map information at my current location. Say, I am standing beneath an ATM, just use a menu item "Add ATM" and typing in its name - finished. There is no need for a map display. The program just displays the OSM nodes near the current location. And you can add a new node or modify an existing node.

Accelerometer

Ideas

  • Indoor use of those GPS games
  • Programming a Marble game would be more fun than playing it (Martin Senkerik is now having that fun http://projects.openmoko.org/projects/accelgame/)
  • Moving within a larger virtual screen by tilting the display.

Hardware

I was wondering about the steps of 18 units in the histogram of the accelerometer data. Now I know: the kernel driver already scales the raw data from the chip to mg units. The data from the chip come as 8 bit data. In +-2.3G mode we get a resolution step size of 18 mg.

/Measurements/Accelerometer

Games

Finger-usable application to play the game of Go: Somebody somewhere suggested a double click methode for keyboard input. The first click zooms the area of the keyboard the second click activates the key. I don't want this for keyboards but for Go and similar games this could be quite interesting.

Maybe a guesture interface is better. Circle right meens zoom in. Circle left means zoom out.


I thought I am no gamer, but just discovered Numptyphysics.

HAM Radio

As we can't use the WIFI or the GSM modem or the GPS receiver for HAM purposes there is not much difference to HAM applications on other PDAs.

CW Trainer

Audio Modems

Input and Output via audio interface (what is the maximum sampling rate?).

Spectrum Analyzer

Spectrum auf audio input signal

Line of Sight Calculation

Smith Chart

linsmith

Circuit Entry and Simulation

* Qucs

Radio Control

Control for Commercial TRXs

Homemade TRXs

* I2C interface on test points
* SPI interface on debug connector

Music

Midi Input via Touchscreen

There is not much space to use the touchscreen as an ordinary piano keyboard.

What about using the touchscreen like the left hand fingering on a guitar, mandolin, banjo ore similar? The touchscreen lays in front of you in landscape mode. There are four rows, one for each finger.

 | D# | G  | B  | d# |
 | D  | F# | A# | d  |
 | C# | F  | A  | c# |
 | C  | E  | G# | c  |
 This layout might be to simple. Should it be optimized for easy chord playing?
 To come more close to a piano and common string instruments it might be better 
 to flip the arrangment of the notes.
 | c  | c# | d  | d# |
 | G# | A  | A# | B  |
 | E  | F  | F# | G  |
 | C  | C# | D  | D# |  
 

Unfortunately the touchscreen handles only single touches (UI_Improvements#The_touchscreen). Therefore a polyphonic input is not possible.

Octave shifting via accelerometer reading?

Similiar project: http://www.neo1973-germany.de/wiki/epiano Obviously not what I am having in mind.


Keyboard

Why not using the above Midi Keyboard for character input?

| S | U | R | T |
| A | E | I | O |
| D | H | N | M |
| F | P | G | J |
| M1| M2|SPC| BS|

Letter order is random here. Need to be optimized for minimum mode switching. Space, Backspace,... can be done by guestures.

Morse Code Input

Will I be faster? Is there usable code available?

Decode would be easier if I'd use an "electronic keyer" e.g. which sends dots and dashes in a predefined length and predefined spaces.

Unsorted

  • I wonder what igelle is and whether it is worth trying that for FreeRunner. The website isn't very informative.
  • External Keyboard: The FreeRunner can supply 5V to an external USB device USB_host#Selecting_USB_host_mode. So I also can connect my MIDI keyboard?

OS Details

Mounting internal Flash when booting from SD

Mount the internal root file system

mount -t jffs2 /dev/mtdblock6 /mnt

On Debian this is already mounted at /mnt/flash


Links


Personal tools

My System

  • Debian without frameworkd
  • window manager: ratpoison
  • GUI: ratmen4wp

Hardware Issues

GSM Modem not working

I could not communicate with the modem not even with u-boot and after removing battery over night. In this case with FSO frameworkd slowed down the system very much, OM2008.9 was almost not usable.

I removed frameword (fso-gpsd does not work without frameworkd and therefore needed to be replaced by gpsd.

Using GPRS is possible, but a bit tricky. I am currently swichting GSM off and on waiting for the modem startup message. But sometimes I get a strange "alarm".

Real Time Clock unreliable

The RTC is approx. 12 min off per day. I wonder whether the 10pF capacitors at the oscillator crystal are really needed. Maybe I can tune the RTC by lowering the values of those capacitors. Or is there a tuning register in the RTC unit?

Bicycle Computer

Biking

Existing Projects and Experiences

Mounting


Water Protection

Power Supply

Due to the relatively high current consumption of the Freerunner a power supply from a hub dynamo seems to be unavoidable.

I skip the switch mode regulator and will use simple Z-Diode parallel to the Freerunner. Later I want to add an LED light parallel to both.

GPS

Existing Software

Getting GPS Data

On Freerunner there is no need to read from gpsd or similar. I just can get the data from /dev/ttySAC1

Additional GPS Functions

Altitude Plots

Of the travelled track and also of the upcoming (hopefully OSM will soon provide elevation information of the roads)

Trip Information

Garmin Etrex Legends trip information display is to stupid. I want infos for the current day and for the time since last break.

Location Reporting

If I have internet access via the phone during my trip I can regularily update my on webpage with location markers as shown here: http://wiki.openstreetmap.org/index.php/Openlayers_POI_layer_example

Slope, Vertical Speed

The GPS does not give sufficiently accurate vertical speed. A barometric sensor (see Variometer) would be nice. Calculation of the vertical speed by integrating the accelerometer readings also not accurate. But maybe it is possible to use the accelerometers to measure the slope of the road. How to calibrate it? Is it possible to automatically calibrate it from GSP reading?

Sideward Inclination of the Bicycle

By measuring the increase of the total acceleration not by change of the acceleration angle.


Road Quality

Can the road (e.i. surface) quality be recorded by measuring the vibrations with the accelerometers?


Car Counter

... using the builtin microphone. Or would it be possible with the accelerometers using high sampling rate?


Heart Rate Monitor

Are there Bluetooth Heart Rate Transmitters available?


Pedalling Frequency

Pedal sensors with Bluetooth and power supply by magnetic induction would be nice.

Otherwise USB with an FTDI chip.


Panorama Viewer

Online panorama viewer similar to gipfel. Instead of the photo image we show the mountain panorama calculated from SRTM data. Online calculation with the SRTM data is much to slow, we use only the precalculated water divide lines.

Programming

Language

Python

UI

python-etk

I could not find any documentation yet. Seems to be the same as python-gtk.

I don't want to have eye-candies. Maybe eye-candies are neccessary for selling phones. Eye-candies cause eye-caries or even brain-caries. ;-) They are for gamers.

Colors are o.k. if they carry information. Color gradients of menu bars are useless and annoying.

Maybe I should directly call xlib instead of using some *tk. From python I could try http://python-xlib.sourceforge.net/ .

Tichy

Tichy

alternative window managers

The bicycle computer should show different values at the same time. This should be user configurable at runtime. What about having little python scripts just showing a window with one value and let the window mananger do the rest?

It seems ratpoison is the best window manager for openmoko.


Plotting

matplotlib? might be an overkill. Anything usable lightweight available?

Jogging

Accelerometer

Mount the Freerunner to the shin and measure the damping and motion style with different shoes at various speeds. Especially interesting to watch the aging of the shoes (different damping).

Openstreetmap

I would like to have a simple application to add map information at my current location. Say, I am standing beneath an ATM, just use a menu item "Add ATM" and typing in its name - finished. There is no need for a map display. The program just displays the OSM nodes near the current location. And you can add a new node or modify an existing node.

Accelerometer

Ideas

  • Indoor use of those GPS games
  • Programming a Marble game would be more fun than playing it (Martin Senkerik is now having that fun http://projects.openmoko.org/projects/accelgame/)
  • Moving within a larger virtual screen by tilting the display.

Hardware

I was wondering about the steps of 18 units in the histogram of the accelerometer data. Now I know: the kernel driver already scales the raw data from the chip to mg units. The data from the chip come as 8 bit data. In +-2.3G mode we get a resolution step size of 18 mg.

/Measurements/Accelerometer

Games

Finger-usable application to play the game of Go: Somebody somewhere suggested a double click methode for keyboard input. The first click zooms the area of the keyboard the second click activates the key. I don't want this for keyboards but for Go and similar games this could be quite interesting.

Maybe a guesture interface is better. Circle right meens zoom in. Circle left means zoom out.


I thought I am no gamer, but just discovered Numptyphysics.

HAM Radio

As we can't use the WIFI or the GSM modem or the GPS receiver for HAM purposes there is not much difference to HAM applications on other PDAs.

CW Trainer

Audio Modems

Input and Output via audio interface (what is the maximum sampling rate?).

Spectrum Analyzer

Spectrum auf audio input signal

Line of Sight Calculation

Smith Chart

linsmith

Circuit Entry and Simulation

* Qucs

Radio Control

Control for Commercial TRXs

Homemade TRXs

* I2C interface on test points
* SPI interface on debug connector

Music

Midi Input via Touchscreen

There is not much space to use the touchscreen as an ordinary piano keyboard.

What about using the touchscreen like the left hand fingering on a guitar, mandolin, banjo ore similar? The touchscreen lays in front of you in landscape mode. There are four rows, one for each finger.

 | D# | G  | B  | d# |
 | D  | F# | A# | d  |
 | C# | F  | A  | c# |
 | C  | E  | G# | c  |
 This layout might be to simple. Should it be optimized for easy chord playing?
 To come more close to a piano and common string instruments it might be better 
 to flip the arrangment of the notes.
 | c  | c# | d  | d# |
 | G# | A  | A# | B  |
 | E  | F  | F# | G  |
 | C  | C# | D  | D# |  
 

Unfortunately the touchscreen handles only single touches (UI_Improvements#The_touchscreen). Therefore a polyphonic input is not possible.

Octave shifting via accelerometer reading?

Similiar project: http://www.neo1973-germany.de/wiki/epiano Obviously not what I am having in mind.


Keyboard

Why not using the above Midi Keyboard for character input?

| S | U | R | T |
| A | E | I | O |
| D | H | N | M |
| F | P | G | J |
| M1| M2|SPC| BS|

Letter order is random here. Need to be optimized for minimum mode switching. Space, Backspace,... can be done by guestures.

Morse Code Input

Will I be faster? Is there usable code available?

Decode would be easier if I'd use an "electronic keyer" e.g. which sends dots and dashes in a predefined length and predefined spaces.

Unsorted

  • I wonder what igelle is and whether it is worth trying that for FreeRunner. The website isn't very informative.
  • External Keyboard: The FreeRunner can supply 5V to an external USB device USB_host#Selecting_USB_host_mode. So I also can connect my MIDI keyboard?

OS Details

Mounting internal Flash when booting from SD

Mount the internal root file system

mount -t jffs2 /dev/mtdblock6 /mnt

On Debian this is already mounted at /mnt/flash


Links