User:Nukama

From Openmoko

(Difference between revisions)
Jump to: navigation, search
(Packages)
Line 1: Line 1:
==== Bicycle ====
+
= Software related =
  
Dynamo powered openmoko (and other USB-Devices/Host) using the frequency/voltage of the dynamo to gather information about speed and distance.
+
== [[Distributions]] ==
  
Wishlist for this USB-Charger:
+
=== [[OpenWrt]] ===
* 5V, 500-1500mA output (through diodes or MOSFET)
+
* Voltage, Frequency (should be dynamohub independable)
+
* USB-Device (maybe with USBprog)
+
  
nice to
+
append "arch s3c24xx 1" to /etc/opkg.conf
* 3d compass, altimeter, thermometer (with information of distance to map tunnels, dense forest, ...)
+
* buttons for turning lights (on lowpower/on highpower/off), setting waypoints/audionotes, easy navigation of openmoko (scrolling/enter)
+
  
==== A-GPS ====
+
 
agps.sh
+
Useful packages:
 +
opkg install openssh-sftp-server
 +
 
 +
 
 +
=== [[SHR]] ===
 +
 
 +
 
 +
ubi - ubinized for flashing with [[NeoTool]]
 +
 
 +
ubifs - [[UBIFS]]
 +
 
 +
==== Problems  ====
 +
with shr-lite-eglibc-ipk--20100115-om-gta02.rootfs @ uImage-2.6.32.3-oe1+gitr1+5827b20d022fb47ce9c9731d0fb894d361e16ffe-r4-om-gta02.bin booted with qi-ubi-s3c2442-1.0.2-r0+gitr0+c38b062a609f1442e6a9e13005cfbdfd59a5ac0d.udfu
 +
 
 +
*No SIM auth dialog (also in unstable jffs2)
 +
gsm_request_on_start = false
 +
 
 +
maybe restart phonefsod manually? (worked in jffs2-unstable@2.6.2)
 +
 
 +
 
 +
*whitescreen(ofstarving) from resuming and dimming, sometimes the lock-screen appears
 +
 
 +
Workaround: edit /etc/phonefsod.conf
 +
dim_idle_prelock_percent = 3                                       
 +
auto_suspend = never  /maybe normal would work also...                                           
 +
and don't try to suspend your device
 +
 
 +
 
 +
== USB-Networking ==
 +
 
 +
=== [[OpenWrt]] ===
 +
 
 +
/etc/config/network
 
<pre>
 
<pre>
agps-alm.py > /dev/ttySAC1
+
config interface lan
 +
option proto static
 +
option ifname eth0
 +
option ipaddr 192.168.0.202
 +
option netmask 255.255.255.0
 +
option gateway 192.168.0.200
 +
option dns 208.67.222.222
 
</pre>
 
</pre>
  
agps-alm.py
+
Without modifying the /etc/config/network
 
<pre>
 
<pre>
#!/usr/bin/python
+
sudo iptables -I INPUT 1 -s 192.168.1.1 -j ACCEPT
#
+
sudo iptables -I OUTPUT 1 -s 192.168.1.2 -j ACCEPT
# ublox AssistNow Online almanac downloader for Neo FreeRunner
+
sudo iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.1.0/24
#
+
sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
# v0.1
+
</pre>
#
+
# Wilfried Klaebe <wk-openmoko@chaos.in-kiel.de>
+
#
+
# Usage:
+
#
+
# agps-alm.py > /dev/ttySAC1
+
#
+
  
import sys
+
=== Ubuntu 9.10 ===
import socket
+
<pre>
import re
+
sudo iptables -I INPUT 1 -s 192.168.0.202 -j ACCEPT
 +
sudo iptables -I OUTPUT 1 -s 192.168.0.200 -j ACCEPT
 +
sudo iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.0.0/24
 +
sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
 +
</pre>
  
user='your@mail.address'
 
pwd='pwdfromublox'
 
  
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
 
s.connect(('agps.u-blox.com',46434))
 
  
s.send('user='+user+';pwd='+pwd+';cmd=alm;lat=0;lon=0;pacc=40000000;\n')
+
== Packages ==
  
buf = s.recv(4096)
+
<pre>
while True:
+
ffalarms
        b = s.recv(4096)
+
dates
        if not b:
+
openssh-sftp-server
                break
+
tangogps
        buf += b
+
navit
 
+
zinnia
h = {}
+
zinnia-tomoe-zh
 
+
enscribi
while True:
+
ttf-arphic-uming
        (l,s,buf) = buf.partition('\n')
+
elementary-sms?
        l = l.rstrip('\r\n')
+
elementary-alarm?
        #
+
intone
        sys.stderr.write(l+'\n')
+
intone-video
        #
+
browser
        if l == "":
+
                if 'content-length' in h and h['content-length'].isdigit() and 'content-type' in h and h['content-type'] == 'application/ubx':
+
                        sys.stdout.write(buf[:int(h['content-length'])])
+
                sys.exit(0)
+
        #
+
        m = re.search('\\A(.+): (.+)\\Z',l)
+
        if m:
+
                h[m.group(1).lower()] = m.group(2).lower();
+
 
</pre>
 
</pre>
  
 
+
=== Enscribi on OM2009 ===
==== Enscribi on OM2009 ====
+
  
 
Step 1:
 
Step 1:
Line 122: Line 139:
 
   opkg install task-fonts-truetype-chinese
 
   opkg install task-fonts-truetype-chinese
  
==== OpenWrt ====
+
http://trac.shr-project.org/trac/ticket/868
  
append "arch s3c24xx 1" to /etc/opkg.conf
 
  
 
+
== other tricks ==
Useful packages:
+
=== A-GPS ===
opkg install openssh-sftp-server
+
agps.sh
 
+
==== USB-Networking ====
+
 
+
===== OpenWrt =====
+
 
+
/etc/config/network
+
 
<pre>
 
<pre>
config interface lan
+
agps-alm.py > /dev/ttySAC1
option proto static
+
option ifname eth0
+
option ipaddr 192.168.0.1
+
option netmask 255.255.255.0
+
option gateway 192.168.0.2
+
option dns 208.67.222.222
+
 
</pre>
 
</pre>
  
 +
agps-alm.py
 
<pre>
 
<pre>
sudo iptables -I INPUT 1 -s 192.168.1.1 -j ACCEPT
+
#!/usr/bin/python
sudo iptables -I OUTPUT 1 -s 192.168.1.2 -j ACCEPT
+
sudo iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.1.0/24
+
sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
+
</pre>
+
 
+
===== Ubuntu 9.10 =====
+
<pre>
+
sudo iptables -I INPUT 1 -s 192.168.0.1 -j ACCEPT
+
sudo iptables -I OUTPUT 1 -s 192.168.0.2 -j ACCEPT
+
sudo iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.0.0/24
+
sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
+
</pre>
+
 
+
 
+
===== Ubuntu 8.10 =====
+
<pre>
+
sudo iptables -I INPUT 1 -s 192.168.0.202 -j ACCEPT
+
sudo iptables -I OUTPUT 1 -s 192.168.0.200 -j ACCEPT
+
sudo iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.0.0/24
+
sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
+
</pre>
+
 
+
===== Ubuntu 9.04 =====
+
/etc/network/freerunner (chmod -x)
+
<pre>
+
#!/bin/sh
+
 
#
 
#
# configures the freerunner for internet
+
# ublox AssistNow Online almanac downloader for Neo FreeRunner
 
#
 
#
 +
# v0.1
 +
#
 +
# Wilfried Klaebe <wk-openmoko@chaos.in-kiel.de>
 +
#
 +
# Usage:
 +
#
 +
# agps-alm.py > /dev/ttySAC1
 
#
 
#
  
DEVICE=usb0
+
import sys
IPADDR=192.168.0.200
+
import socket
REMOTE_IPADDR=192.168.0.202
+
import re
NETMASK=255.255.255.0
+
  
# get first ip for dns
+
user='your@mail.address'
DNSIP=$(awk '$1 == "nameserver"{print $2; exit(0);}' /etc/resolv.conf)
+
pwd='pwdfromublox'
  
case "$1" in
+
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
start)
+
s.connect(('agps.u-blox.com',46434))
iptables -A POSTROUTING -t nat -j MASQUERADE -s $REMOTE_IPADDR
+
iptables -A PREROUTING -t nat -p tcp -s $REMOTE_IPADDR -d $IPADDR --dport domain -j DNAT --to-destination $DNSIP
+
iptables -A PREROUTING -t nat -p udp -s $REMOTE_IPADDR -d $IPADDR --dport domain -j DNAT --to-destination $DNSIP
+
  
if [ "$(cat /proc/sys/net/ipv4/ip_forward)" = "0" ]; then
+
s.send('user='+user+';pwd='+pwd+';cmd=alm;lat=0;lon=0;pacc=40000000;\n')
echo "temoprarely allow ip_forward for openmoko" > /var/run/openmoko.ip_forward
+
echo 1 > /proc/sys/net/ipv4/ip_forward
+
fi
+
;;
+
stop)
+
iptables -D POSTROUTING -t nat -j MASQUERADE -s $REMOTE_IPADDR
+
iptables -D PREROUTING -t nat -p tcp -s $REMOTE_IPADDR -d $IPADDR --dport domain -j DNAT --to-destination $DNSIP
+
iptables -D PREROUTING -t nat -p udp -s $REMOTE_IPADDR -d  $IPADDR --dport domain -j DNAT --to-destination $DNSIP
+
  
if [ -f /var/run/openmoko.ip_forward ]; then
+
buf = s.recv(4096)
rm /var/run/openmoko.ip_forward
+
while True:
echo 0 > /proc/sys/net/ipv4/ip_forward
+
        b = s.recv(4096)
fi
+
        if not b:
;;
+
                break
esac
+
        buf += b
  
</pre>
+
h = {}
  
/etc/udev/rules.d/80-freerunner.rules
+
while True:
<pre>
+
        (l,s,buf) = buf.partition('\n')
# This file causes programs to be run on device insertion.
+
        l = l.rstrip('\r\n')
# See udev(7) for syntax.
+
        #
# rule to assign a fixed mac address specified in /
+
        sys.stderr.write(l+'\n')
KERNEL=="usb[0-9]*", DRIVERS=="cdc_ether", ACTION=="add", RUN+="/usr/local/sbin/freerunner-usb-add.sh %k"
+
        #
 +
        if l == "":
 +
                if 'content-length' in h and h['content-length'].isdigit() and 'content-type' in h and h['content-type'] == 'application/ubx':
 +
                        sys.stdout.write(buf[:int(h['content-length'])])
 +
                sys.exit(0)
 +
        #
 +
        m = re.search('\\A(.+): (.+)\\Z',l)
 +
        if m:
 +
                h[m.group(1).lower()] = m.group(2).lower();
 
</pre>
 
</pre>
  
/usr/local/sbin/freerunner-usb-add.sh  (chmod -x)
 
<pre>
 
#!/bin/sh
 
(
 
ip address add 192.168.0.200/26 netmask dev usb0 > /dev/null
 
ip link set usb0 up > /dev/null
 
/etc/network/freerunner start
 
) &
 
exit 0
 
</pre>
 
  
 +
= Hardware related =
 +
== Bicycle ==
  
==== Packages ====
+
Dynamo powered openmoko (and other USB-Devices/Host) using the frequency/voltage of the dynamo to gather information about speed and distance.
  
<pre>
+
Wishlist for this USB-Charger:
ffalarms
+
* 5V, 500-1500mA output (through diodes or MOSFET)
dates
+
* Voltage, Frequency (should be dynamohub independable)
openssh-sftp-server
+
* USB-Device (maybe with USBprog)
tangogps
+
 
navit
+
nice to
zinnia
+
* 3d compass, altimeter, thermometer (with information of distance to map tunnels, dense forest, ...)
zinnia-tomoe-zh
+
* buttons for turning lights (on lowpower/on highpower/off), setting waypoints/audionotes, easy navigation of openmoko (scrolling/enter)
enscribi
+
ttf-arphic-uming
+
elementary-sms?
+
elementary-alarm?
+
intone
+
intone-video
+
</pre>
+

Revision as of 16:58, 19 January 2010

Contents

Software related

Distributions

OpenWrt

append "arch s3c24xx 1" to /etc/opkg.conf


Useful packages:

opkg install openssh-sftp-server


SHR

ubi - ubinized for flashing with NeoTool

ubifs - UBIFS

Problems

with shr-lite-eglibc-ipk--20100115-om-gta02.rootfs @ uImage-2.6.32.3-oe1+gitr1+5827b20d022fb47ce9c9731d0fb894d361e16ffe-r4-om-gta02.bin booted with qi-ubi-s3c2442-1.0.2-r0+gitr0+c38b062a609f1442e6a9e13005cfbdfd59a5ac0d.udfu

  • No SIM auth dialog (also in unstable jffs2)

gsm_request_on_start = false

maybe restart phonefsod manually? (worked in jffs2-unstable@2.6.2)


  • whitescreen(ofstarving) from resuming and dimming, sometimes the lock-screen appears

Workaround: edit /etc/phonefsod.conf dim_idle_prelock_percent = 3 auto_suspend = never /maybe normal would work also... and don't try to suspend your device


USB-Networking

OpenWrt

/etc/config/network

config interface lan
option proto static
option ifname eth0
option ipaddr 192.168.0.202
option netmask 255.255.255.0
option gateway 192.168.0.200
option dns 208.67.222.222

Without modifying the /etc/config/network

sudo iptables -I INPUT 1 -s 192.168.1.1 -j ACCEPT
sudo iptables -I OUTPUT 1 -s 192.168.1.2 -j ACCEPT
sudo iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.1.0/24
sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'

Ubuntu 9.10

sudo iptables -I INPUT 1 -s 192.168.0.202 -j ACCEPT
sudo iptables -I OUTPUT 1 -s 192.168.0.200 -j ACCEPT
sudo iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.0.0/24
sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'


Packages

ffalarms
dates
openssh-sftp-server
tangogps
navit
zinnia
zinnia-tomoe-zh
enscribi
ttf-arphic-uming
elementary-sms?
elementary-alarm?
intone
intone-video
browser

Enscribi on OM2009

Step 1:

opkg install http://www.opkg.org/packages/zinnia_0.04_armv4t.ipk
opkg install http://www.opkg.org/packages/0_zinnia-tomoe-ja_0.6.0-20080911_armv4t.ipk (for Japanese support)
opkg install http://www.opkg.org/packages/0_zinnia-tomoe-zh_0.6.0-20080911_armv4t.ipk (for Chinese support)
opkg install http://www.opkg.org/packages/enscribi_0.2.0_armv4t.ipk


Step 2:

Create symbolic links for the old libs (tested with om2009-unstable 17-Aug-2009 17:19) If enscribi is linked against the new libs then these symbolic links are obsolete.

ln -s /usr/lib/libecore_evas-ver-svn-02.so.0 libecore_evas-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_fb-ver-svn-02.so.0 libecore_fb-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_x-ver-svn-02.so.0 libecore_x-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_input-ver-svn-02.so.0 libecore_input-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_x-ver-svn-02.so.0 libecore_txt-ver-pre-svn-01.so.0
ln -s /usr/lib/libedje-ver-svn-02.so.0 libedje-ver-pre-svn-01.so.0 
ln -s /usr/lib/libembryo-ver-svn-02.so.0 libembryo-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_job-ver-svn-02.so.0 libecore_job-ver-pre-svn-01.so.0
ln -s /usr/lib/libevas-ver-svn-02.so.0 libevas-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore-ver-svn-02.so.0 libecore-ver-pre-svn-01.so.0
ln -s /usr/lib/libeina-ver-svn-02.so.0 libeina-ver-pre-svn-01.so.0

Maybe link the old libs against the even older libs. But seems not to work.

cd /usr/lib
cp /location-of-old-libs-for-enscribi/* .
ln -s /usr/lib/libecore_evas-ver-svn-02.so.0.9.9 libecore_evas-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_fb-ver-svn-02.so.0.9.9 libecore_fb-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_input-ver-svn-02.so.0.9.9 libecore_input-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_job-ver-svn-02.so.0.9.9 libecore_job-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore-ver-svn-02.so.0.9.9 libecore-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_x-ver-svn-02.so.0.9.9 libecore_x-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_x-ver-svn-02.so.0.9.9 libecore_txt-ver-pre-svn-01.so.0
ln -s /usr/lib/libedje-ver-svn-02.so.0.9.92 libedje-ver-pre-svn-01.so.0 
ln -s /usr/lib/libeina-ver-svn-02.so.0.0.2 libeina-ver-pre-svn-01.so.0
ln -s /usr/lib/libembryo-ver-svn-02.so.0.9.9 libembryo-ver-pre-svn-01.so.0
ln -s /usr/lib/libevas-ver-svn-02.so.0.9.9 libevas-ver-pre-svn-01.so.0

Step 3:

goto "setup" --> "keyboard" --> "enscribi"

To get a Chinese/Japanese input method. Ensure, that you have Chinese/Japanes fonts installed.

 opkg install task-fonts-truetype-chinese

http://trac.shr-project.org/trac/ticket/868


other tricks

A-GPS

agps.sh

agps-alm.py > /dev/ttySAC1

agps-alm.py

#!/usr/bin/python
#
# ublox AssistNow Online almanac downloader for Neo FreeRunner
#
# v0.1
#
# Wilfried Klaebe <wk-openmoko@chaos.in-kiel.de>
#
# Usage:
#
# agps-alm.py > /dev/ttySAC1
#

import sys
import socket
import re

user='your@mail.address'
pwd='pwdfromublox'

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(('agps.u-blox.com',46434))

s.send('user='+user+';pwd='+pwd+';cmd=alm;lat=0;lon=0;pacc=40000000;\n')

buf = s.recv(4096)
while True:
        b = s.recv(4096)
        if not b:
                break
        buf += b

h = {}

while True:
        (l,s,buf) = buf.partition('\n')
        l = l.rstrip('\r\n')
        #
        sys.stderr.write(l+'\n')
        #
        if l == "":
                if 'content-length' in h and h['content-length'].isdigit() and 'content-type' in h and h['content-type'] == 'application/ubx':
                        sys.stdout.write(buf[:int(h['content-length'])])
                sys.exit(0)
        #
        m = re.search('\\A(.+): (.+)\\Z',l)
        if m:
                h[m.group(1).lower()] = m.group(2).lower();


Hardware related

Bicycle

Dynamo powered openmoko (and other USB-Devices/Host) using the frequency/voltage of the dynamo to gather information about speed and distance.

Wishlist for this USB-Charger:

  • 5V, 500-1500mA output (through diodes or MOSFET)
  • Voltage, Frequency (should be dynamohub independable)
  • USB-Device (maybe with USBprog)

nice to

  • 3d compass, altimeter, thermometer (with information of distance to map tunnels, dense forest, ...)
  • buttons for turning lights (on lowpower/on highpower/off), setting waypoints/audionotes, easy navigation of openmoko (scrolling/enter)
Personal tools

Software related

Distributions

OpenWrt

append "arch s3c24xx 1" to /etc/opkg.conf


Useful packages:

opkg install openssh-sftp-server


SHR

ubi - ubinized for flashing with NeoTool

ubifs - UBIFS

Problems

with shr-lite-eglibc-ipk--20100115-om-gta02.rootfs @ uImage-2.6.32.3-oe1+gitr1+5827b20d022fb47ce9c9731d0fb894d361e16ffe-r4-om-gta02.bin booted with qi-ubi-s3c2442-1.0.2-r0+gitr0+c38b062a609f1442e6a9e13005cfbdfd59a5ac0d.udfu

  • No SIM auth dialog (also in unstable jffs2)

gsm_request_on_start = false

maybe restart phonefsod manually? (worked in jffs2-unstable@2.6.2)


  • whitescreen(ofstarving) from resuming and dimming, sometimes the lock-screen appears

Workaround: edit /etc/phonefsod.conf dim_idle_prelock_percent = 3 auto_suspend = never /maybe normal would work also... and don't try to suspend your device


USB-Networking

OpenWrt

/etc/config/network

config interface lan
option proto static
option ifname eth0
option ipaddr 192.168.0.202
option netmask 255.255.255.0
option gateway 192.168.0.200
option dns 208.67.222.222

Without modifying the /etc/config/network

sudo iptables -I INPUT 1 -s 192.168.1.1 -j ACCEPT
sudo iptables -I OUTPUT 1 -s 192.168.1.2 -j ACCEPT
sudo iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.1.0/24
sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'

Ubuntu 9.10

sudo iptables -I INPUT 1 -s 192.168.0.202 -j ACCEPT
sudo iptables -I OUTPUT 1 -s 192.168.0.200 -j ACCEPT
sudo iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.0.0/24
sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'


Packages

ffalarms
dates
openssh-sftp-server
tangogps
navit
zinnia
zinnia-tomoe-zh
enscribi
ttf-arphic-uming
elementary-sms?
elementary-alarm?
intone
intone-video
browser

Enscribi on OM2009

Step 1:

opkg install http://www.opkg.org/packages/zinnia_0.04_armv4t.ipk
opkg install http://www.opkg.org/packages/0_zinnia-tomoe-ja_0.6.0-20080911_armv4t.ipk (for Japanese support)
opkg install http://www.opkg.org/packages/0_zinnia-tomoe-zh_0.6.0-20080911_armv4t.ipk (for Chinese support)
opkg install http://www.opkg.org/packages/enscribi_0.2.0_armv4t.ipk


Step 2:

Create symbolic links for the old libs (tested with om2009-unstable 17-Aug-2009 17:19) If enscribi is linked against the new libs then these symbolic links are obsolete.

ln -s /usr/lib/libecore_evas-ver-svn-02.so.0 libecore_evas-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_fb-ver-svn-02.so.0 libecore_fb-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_x-ver-svn-02.so.0 libecore_x-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_input-ver-svn-02.so.0 libecore_input-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_x-ver-svn-02.so.0 libecore_txt-ver-pre-svn-01.so.0
ln -s /usr/lib/libedje-ver-svn-02.so.0 libedje-ver-pre-svn-01.so.0 
ln -s /usr/lib/libembryo-ver-svn-02.so.0 libembryo-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_job-ver-svn-02.so.0 libecore_job-ver-pre-svn-01.so.0
ln -s /usr/lib/libevas-ver-svn-02.so.0 libevas-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore-ver-svn-02.so.0 libecore-ver-pre-svn-01.so.0
ln -s /usr/lib/libeina-ver-svn-02.so.0 libeina-ver-pre-svn-01.so.0

Maybe link the old libs against the even older libs. But seems not to work.

cd /usr/lib
cp /location-of-old-libs-for-enscribi/* .
ln -s /usr/lib/libecore_evas-ver-svn-02.so.0.9.9 libecore_evas-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_fb-ver-svn-02.so.0.9.9 libecore_fb-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_input-ver-svn-02.so.0.9.9 libecore_input-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_job-ver-svn-02.so.0.9.9 libecore_job-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore-ver-svn-02.so.0.9.9 libecore-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_x-ver-svn-02.so.0.9.9 libecore_x-ver-pre-svn-01.so.0
ln -s /usr/lib/libecore_x-ver-svn-02.so.0.9.9 libecore_txt-ver-pre-svn-01.so.0
ln -s /usr/lib/libedje-ver-svn-02.so.0.9.92 libedje-ver-pre-svn-01.so.0 
ln -s /usr/lib/libeina-ver-svn-02.so.0.0.2 libeina-ver-pre-svn-01.so.0
ln -s /usr/lib/libembryo-ver-svn-02.so.0.9.9 libembryo-ver-pre-svn-01.so.0
ln -s /usr/lib/libevas-ver-svn-02.so.0.9.9 libevas-ver-pre-svn-01.so.0

Step 3:

goto "setup" --> "keyboard" --> "enscribi"

To get a Chinese/Japanese input method. Ensure, that you have Chinese/Japanes fonts installed.

 opkg install task-fonts-truetype-chinese

http://trac.shr-project.org/trac/ticket/868


other tricks

A-GPS

agps.sh

agps-alm.py > /dev/ttySAC1

agps-alm.py

#!/usr/bin/python
#
# ublox AssistNow Online almanac downloader for Neo FreeRunner
#
# v0.1
#
# Wilfried Klaebe <wk-openmoko@chaos.in-kiel.de>
#
# Usage:
#
# agps-alm.py > /dev/ttySAC1
#

import sys
import socket
import re

user='your@mail.address'
pwd='pwdfromublox'

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(('agps.u-blox.com',46434))

s.send('user='+user+';pwd='+pwd+';cmd=alm;lat=0;lon=0;pacc=40000000;\n')

buf = s.recv(4096)
while True:
        b = s.recv(4096)
        if not b:
                break
        buf += b

h = {}

while True:
        (l,s,buf) = buf.partition('\n')
        l = l.rstrip('\r\n')
        #
        sys.stderr.write(l+'\n')
        #
        if l == "":
                if 'content-length' in h and h['content-length'].isdigit() and 'content-type' in h and h['content-type'] == 'application/ubx':
                        sys.stdout.write(buf[:int(h['content-length'])])
                sys.exit(0)
        #
        m = re.search('\\A(.+): (.+)\\Z',l)
        if m:
                h[m.group(1).lower()] = m.group(2).lower();


Hardware related

Bicycle

Dynamo powered openmoko (and other USB-Devices/Host) using the frequency/voltage of the dynamo to gather information about speed and distance.

Wishlist for this USB-Charger:

  • 5V, 500-1500mA output (through diodes or MOSFET)
  • Voltage, Frequency (should be dynamohub independable)
  • USB-Device (maybe with USBprog)

nice to

  • 3d compass, altimeter, thermometer (with information of distance to map tunnels, dense forest, ...)
  • buttons for turning lights (on lowpower/on highpower/off), setting waypoints/audionotes, easy navigation of openmoko (scrolling/enter)