User:Jebba

  • Name: Jeff Moe
  • Email: moe@blagblagblag.org
  • Nick: jebba, jebbajeb, jebba900, etc...
My old nokia
My old Nokia phone, replaced by N900. Makes a nice background :)


Usually I dot my laptop with READMEs in various ~/devel/ subdirs, but in this case I decided to write up some notes here. These are mostly for my own reference, but perhaps they will be of use to you.

Contents

Package Building HOWTO

The Package Building HOWTO now has its own page. :)

Debrick

Debrick without reflashing!

I have found a way to "de-brick" a device that does not require reflashing.

If your device is booting up and hung with the second dot lit, like:

*  (*)  *  *  *

this may solve your problem.

1) Get the proprietary (gah!) Nokia firmware flashing program.

2) Power off your phone.

3) Hold down "u" on your fone and plug the USB cable into your phone and your GNU/Linux laptop. This will put it in the same mode as you need when you are flashing it.

4) Run this command as root (or preface with "sudo"). It will only take a second or two.

./flasher-3.5 --enable-rd-mode

5) Unplug cables and your system will reboot (or poweroff).

6) Boot up your system, it is now in R&D mode. :) It will (possibly?) prompt you to enter time/data again.

7) Now that everything is fine, power off the system normally again. DO NOT LEAVE YOUR SYSTEM IN R&D MODE, as it eats babies.

8) With your phone powered off hold down "u" on the phone, and plug in the USB cables to the phone and your GNU/Linux laptop.

9) Run this command as root (or preface with "sudo"). It will only take a second or two.

./flasher-3.5 --disable-rd-mode

10) Unplug cables and your system will reboot (or poweroff).

11) Boot up your system, it is now recovered and NO DATA LOSS! Yippeee.


More info


Photos of what the hang looks like using a kernel that has the framebuffer console enabled: [1]


Some bugs, maybe related: [2] [3]


If you found this post helpful, please vote for this bug: [4]


Too mucha programmaz

I bricked my N900 (December 3rd) by adding the extras-testing + extras-devel repos and then installing lots of applications. I hit 100% on / (root filesystem) and on reboot the system hung at the "dots" part, ala:

  * (*) * * *

I had filled up to 100% a number of times before and rebooting the phone had cleared up space (e.g. 100% full before reboot, 96% full after reboot). This is likely because 5% or so is reserved for root. Anyway, the most recent time it didn't come back alive...

Gah, bricked again

I was "participating" in the "Bug day", when someone suggested installing gettext to look at translations. I installed this, but got up to 99% full. I then did an `apt-get clean` to empty the cache and this dropped me to 98% full. I've often booted gnulinux boxes with 99% (or even 100%) full, so I figured 98% was fine. I wanted to reboot because often when you reboot the N900, you get space freed, due to the icon cache being liberated. Anyway, on reboot, I got a brick exactly as described above with the second dot more lit than the others (which I have seen reported by others):

  * (*) * * *

This time I have my handy kernel with a console, so I can actually see WTF is going on. The images here show some details. In sum, things booted up and the root filesystem check went fine. Then it got an error right after "Freeing Init memory 152K" like this:

getbootstate: Unexpected reset count 50 exceeds maximum (51)
getbootstate: Entering state 'MALF'.
getbootstate: Houston, we have a problem, powering off...

The /sbin/getbootstate program is in the package "getbootstate". But look at this and hold back the tears:

[sbox-FREMANTLE_ARMEL: ~/getbootstate] > apt-get source getbootstate
Reading package lists... Done
Building dependency tree... Done
E: Unable to find a source package for getbootstate

The getbootstate package appears to be closed source. :( That pretty much ends the debugging and my bug day. Gah.

Flashing N900 with 0xFFFF

Many parts of the N900 are Free Software, but lamentably, many parts are still closed proprietary shit. Nokia's maemo_flasher program is an example of a closed application that Nokia makes for use with the N900. I understand why some parts of their suite are still closed (e.g. pre-ofono GSM stack), but why the flasher has to be closed I have no idea. Gar.

Thankfully, there is The 0pen Free Fiasco Firmware Flasher, which is designed for flashing Nokia tablets and is Free Software (GPLv3). Unfortunately, 0xFFFF doesn't work with the N900. There is some progress to support the device. You can grab the most recent code from the mercurial repository thusly:

hg clone http://hg.youterm.com/0xFFFF

I sent the author of 0xFFFF the output of my crash. Hopefully it will soon be a usable tool for flashing the N900. I built RPMs for Fedora 12 x86_64 running the latest mercurial code--the ones in the Fedora repo aren't even the lastest tarball release (0.3.9 vs. 0.4.0).

0xFFFF for Fedora

  • NOTE: recently I checked out the code via Mercurial and saw that the 0xFFFF developer has added much more N900 specific code, but I haven't tried it yet.
  • UPDATE: I have built the latest and greatest code of 0xFFFF from today and made a Fedora 12 package. You can grab it here:

Binary:

Source:

  • The 0xFFFF GUI uses gtkamlc. This is not packaged in Fedora. I built it, but compiling the GUI is still barfing.

Flashing with Nokia's Proprietary maemo_flasher

I now have ONE non-free program installed on my computer  :( It's the only way I know how to debrick the phone.

See also: Updating tablet firmware on this wiki.

yum -y install glibc.i686 libusb.i686
  • Untar the files....
  • Power off phone and unplug USB.
  • Hold down "u" on N900 keyboard and plug in USB cable between computer and N900. A USB icon will appear in the upper right corner--you can let go of "u" on the keyboard at this point.
  • Run this as root:
./flasher-3.5 -F ~/devel/maemo/FLASH/RX-51_2009SE_1.2009.42-11_PR_COMBINED_MR0_ARM.bin -f -R
  • Done.

Info from flasher

sudo ./flasher-3.5 --query-rd-mode
flasher v2.5.2 (Oct 21 2009)

USB device found found at bus 002, device address 008.
Found device RX-51, hardware revision 2101
NOLO version 1.4.13
Version of 'sw-release': RX-51_2009SE_1.2009.42-11_PR_MR0
The device is in production mode

Unpacking flash image

$ mkdir RX-51_2009SE_1.2009.42-11_PR_COMBINED_MR0_ARM-UNPACKED

$ cd RX-51_2009SE_1.2009.42-11_PR_COMBINED_MR0_ARM-UNPACKED/

$ sudo flasher-3.5 -u -F ../RX-51_2009SE_1.2009.42-11_PR_COMBINED_MR0_ARM.bin

Setup

Now that the device is debricked, I can use the thing again and "all" my data is there, but the repository setup is back to default and the applications I want are gone, amongst other things. To re-setup:


ssh server & keys

  • Enable Extras repository: tap, tap, tap...
  • Install openssh client/server package
  • Install rootsh package
  • Set up keys and such for easy access (my device hostname is burger):
  • On laptop, ssh into the sucker:
ssh root@burger
  • As root on N900, ssh to localhost as a quick/dirty way to setup /root/.ssh:
ssh localhost
  • On laptop, copy over ssh key and log back in:
scp -p ~/.ssh/id_rsa.pub root@burger:.ssh/authorized_keys
ssh root@burger
  • To allow ssh access for user "user", the passwd file needs to be edited.
vi /etc/passwd
  • Change
user:!:

to

user:*:
  • Set a password for user "user" (I couldn't ssh in without doing this, but someone on IRC said it wasn't necessary):
passwd user
  • Switch user to "user" and blow out the old known_hosts (or at least edit it) to remove the now bogus "localhost" entry:
su - user
rm .ssh/known_hosts
  • Quick/dirty way to set up /home/user/.ssh:
ssh localhost
  • Then GTFO:
exit
exit
  • This should work happily
ssh user@burger

Packages

Set up Repositories

  • Configure the repositories to set up things I like:
# vi /etc/apt/sources.list.d/hildon-application-manager.list

deb https://downloads.maemo.nokia.com/fremantle/apps/ ./ 
deb https://downloads.maemo.nokia.com/fremantle/mr0 ./ 
deb http://repository.maemo.org/extras/ fremantle free non-free
deb http://repository.maemo.org/extras-testing/ fremantle free
deb http://repository.maemo.org/extras-devel/ fremantle free
deb http://repository.maemo.org fremantle/tools free

apt-get update

Apparently the above gets blown out if you run the hildon application manager, so the repos need to be added via tap tap tap.

Install Needed Packages

apt-get install x11vnc
apt-get clean && sync

Mas y mas y mas

apt-get install vim bash htop ogg-support less file strace
apt-get clean && sync

Perhaps

apt-get install python-dbus python-gobject sysklogd klogd
apt-get clean && sync

Mas y mas y mas y mas y mas. The really big list...

mkdir /home/user/MyDocs/.apt-archive-cache/archives/
mkdir -p /home/user/MyDocs/.apt-archive-cache/archives/partial
apt-get -o dir::cache=/home/user/MyDocs/.apt-archive-cache    etc...


account-plugin-idle
adblock-plus
anki
ankimaemi
ankiqt
attitude
canola2
canola2-lastfm-plugin
canola2-tuning-plugin
canola2-youtube-plugin
canola-thumbnailer
conboy
decoders-support
easy-deb-chroot
emerillon
espeak
fmradio
gcompris
gcompris-sound-en
gcompris-sound-es
gonvert
google-album-art-downloader
gpxview
horizon
kmplayer
leafpad
maemo-mancala
maemo-mapper
maemo-recorder
maemo-recorder
mancala
mbarcode
midori
miniature
mirror
mplayer
mtracker
mytube
pastebinit
pidgin
qik
raeddit
rapier
recorder
rsync
sib
supertux
tuxpaint
vncviewer
xchat
xournal
zbar
zoutube

Configuration

Here's some configuration settings that got lost on reflash. I'm not sure where they are stored, so they need to be re-setup via tap tap tap. Note: if you do a backup on the device you may be able to then run restore which refreshes this, making the below unnecessary; untested.

The below are mostly stored in gconf under /system/osso/dsm/display, I believe these should be restored as per the back-up/restore application. - codeMonkey

Display

  • Settings-->Display-->Backlight time-out: 2 minutes
  • Settings-->Display-->Lock screen automatically: uncheck
  • Settings-->Display-->Display stays lit when charging: check

Text input

  • Settings-->Text input-->Word completion: uncheck
  • Settings-->Text input-->Auto-capitalization: uncheck
  • Settings-->Text input-->Insert space after word: uncheck
  • Settings-->Text input-->2nd language: Español (América Latina)
  • Settings-->Text input-->Use dual dictionaries: check


Time Zone

  • Settings-->Date and time-->Time Zone: Buenos Aires (this is unfortunately wrong due to incompetence of Argentine government)
  • Settings-->Date and time-->Update automatically: leave unchecked for now. When timezone data gets fixed, check it.

Connectivity

  • Settings-->Connectivity-->Internet connections-->Search interval: 5 minutes

General

  • Settings-->General-->Device lock-->Change lock code (default is 12345)

Email Accounts

  • Region: Argentina
  • Service Provider: Gmail -- I broke down and got a gmail acct :(
  • Account title: Gmail
  • Name: Jeff Moe
  • User name: jebbasan
  • Password: foo

Misc

echo ":syntax on" > ~/.vimrc
  • Uh, where should this be put, if no bash? In ~/.profile for busybox.
export TERM=xterm-color
  • To remove the overcute hands shaking at bootup (and therefore boot faster), edit /etc/hildon-welcome.d/default.conf thusly:
[hildon-welcome]
#filename=Hands-v32-h264.avi

You could also put in a different movie (playable by gstreamer), but a still image will not work.

Kernel

The new kernel page

VNC

VNC allows you to view the screen of the N900 on your laptop so you can do things more easily that having to use the tiny little thing if you are working on it all day.

  • Set up the Extras-testing repository
  • Install x11vnc (I think it's in -testing).
  • Set up a password for VNC on on the N900:
x11vnc -storepasswd
  • Run this script on your laptop (my hostname is burger and my laptop's IP is 10.0.0.3):
ssh -n user@burger \
       "x11vnc \
       -usepw \
       -display :0 \
       -desktop burger \
       -allow 10.0.0.3 \
       -nolookup \
       -q \
       -bg \
       -o /home/user/vnc-log \
       "
  • This works fine with tigervnc on Fedora 12.
  • Running x11vnc with "-ssl" does not work--I think the problem there may be with tigervnc as x11vnc starts with it OK.
  • I usually do VNC in an ssh tunnel--I don't know if this would create too much of a load on the N900 or not. Will test.
  • VNC behaves differently whether the keyboard is slid out or not. Basically, you want the keyboard out.

Backups

Thankfully, pre-bricking, I had made a backup. There are a billion different ways to do this, but one quick way is good old rsync. This script backs up everything except the --excluded directories which are either things I don't want to back up (cities) or things you can't/shouldn't back up (/proc).

#!/bin/sh

rsync \
       -avv -ult --progress --stats \
       --rsh=ssh \
       --exclude /home/user/MyDocs/cities \
       --exclude /home/user/MyDocs/.sounds \
       --exclude /proc \
       --exclude /dev \
       --exclude /sys \
       --exclude /syspart \
       root@burger:/ \
       /home/jebba/BACKUPS/burger/

Video

Encoding Video

I had some video which played way too slow on the N900, so I re-encoded with this pile of cruft:

#!/bin/sh

mencoder $1 -oac mp3lame -ovc lavc \
       -lavcopts vcodec=mpeg4:mbd=1:vbitrate=300 -vf scale=352:208 \
       -ffourcc DIVX -o $1-out.avi

Run thusly:

burger-encode ralf.mov

And it will give you "ralf-out.mov.avi"...Uh, I will have the output file get a reasonable name, of course... Works for now. This does not work on the N900 at the moment because the mencoder in the mplayer package is compiled without mp3lame support. Bah.

See also (where I got above from): Manual_video_encoding.

Ok, here's a far better script than the above that I took and slightly modified to work with gpac instead of mp4creator.

#!/bin/bash
# n900-encode
# Encode videos for N900...
#
# On Fedora 12 (rpmfusion.org) needs packages:
# gpac, mplayer, mencoder, x264, faac
# Run thusly:
# n900-encode [in video] [out video] [options]
# Example:
# n900-encode cabezon.mp4 cabezon.avi
#
# Largely taken from:
# http://www.seiichiro0185.org/doku.php/n800:mp4encoding

_INFILE="$1"
_OUTFILE="$2"
_MPOPTS="$3"

identifySource()
{
  mplayer -identify -ao null -vo null -endpos 2 ${_MPOPTS} "${_INFILE}" | grep ID_ > /tmp/n800-encode.$$.ident
 FPS=$(cat /tmp/n800-encode.$$.ident | grep ID_VIDEO_FPS | uniq | cut -d '=' -f 2)
  ASPECT=$(cat /tmp/n800-encode.$$.ident | grep ID_VIDEO_ASPECT | tail -n 1 | cut -d '=' -f 2 | cut -d ' ' -f 2)

  WS=`expr $ASPECT \> 1.6 \& $ASPECT \< 1.9`
  
  if [[ `expr $ASPECT \> 2.0` -eq 1 ]]
  then
    WS=2
  fi
  case ${WS} in
    0) SCALE="320:240"
      echo "encoding for standard"
      ;;
    1) SCALE="400:224"
      echo "encoding for widescreen"
      ;;
    2) SCALE="400:192"
      echo "encoding for extra-widescreen"
      ;;
  esac
}

encode()
{
  x264 -o "$PWD/n800-encode.$$/video.264" "$PWD/n800-encode.$$/video.y4m" --threads 3 --no-cabac --bitrate 250 -A i4x4,p4x4,p8x8,b8x8 --level 1.2 >/dev/null 2>/dev/null &
  faac -b 96 --mpeg-vers 4 -o "$PWD/n800-encode.$$/audio.aac" "$PWD/n800-encode.$$/audio.wav" 2>/dev/null >/dev/null&
  sleep 1
  mplayer -vf scale=${SCALE},unsharp=c4x4:0.3:l5x5:0.5 -ao pcm:file="$PWD/n800-encode.$$/audio.wav" -vo yuv4mpeg:file="$PWD/n800-encode.$$/video.y4m" -ass -embeddedfonts -noframedrop ${_MPOPTS} "${_INFILE}"
  rm -f "${_OUTFILE}"

  MP4Box -new -add "$PWD/n800-encode.$$/video.264" -add "$PWD/n800-encode.$$/audio.aac" -fps ${FPS} "${_OUTFILE}"
}

prepareTemp()
{
  mkdir -p "$PWD/n800-encode.$$"
  mkfifo "$PWD/n800-encode.$$/video.y4m"
  mkfifo "$PWD/n800-encode.$$/audio.wav"
}

cleanupTemp()
{
  rm -Rf "$PWD/n800-encode.$$"
  rm -f /tmp/n800-encode.$$.ident
}

trap cleanupTemp SIGINT SIGTERM

identifySource
prepareTemp
encode
cleanupTemp

mplayer

Play video from main "good" back camera:

mplayer tv:// -tv device=/dev/video0

Play video from front camera (next to screen):

mplayer tv:// -tv device=/dev/video1

Note, the front camera looks absolutely terrible like there is far too much gain or something and has a huge band across the right side. I'm hoping this is just a kernel driver issue and it will contain less suck in the future.

More extensive scriptlet:

mplayer \
        -fs \
        -v \
        -nosound \
        -ao null \
        -nojoystick \
        -nolirc \
        -ontop \
        -framedrop \
        -stop-xscreensaver \
        -nocache \
        -noslices \
        -vo xv \
        -tv device=/dev/video0 \
        tv://

The -tv option can take many more options, like:

-tv brightness=50:contrast=50:hue=0:saturation=-0:gain=0:device=/dev/video0

If your camera settings get weird (e.g. like everybody looks like a green monster), just quit mplayer, close the camera and re-open it. The default/stock program will reset it.

See also

use cam as desktop webcam with gstreamer

DBUS

This section is being merged to form a new, better, more powerful Phone control page. See also call forward & CSD.

Here's a number of dbus examples that can be run as simple shell scripts. When running them they should be run with `run-standalone.sh` in front of them to set up the environment correctly. Otherwise they may barf when run from cron, startup, install scripts, etc. They run fine when run as user "user" without `run-standalone.sh`. Example:

run-standalone.sh dbus-send /foo bar 'boo'

dbus-send-call

dbus-send --system --dest=com.nokia.csd.Call --type=method_call --print-reply \
/com/nokia/csd/call com.nokia.csd.Call.CreateWith string:"$1" uint32:0

With this fantastic command you can make a fone call from the command line. Change $1 to whatever number you want, or if you put this in a shell script, run it and use the number you want to call as the option, ala:

dbus-send-call 15555551234

dbus-send-call-start-ui

dbus-send --print-reply --type=method_call --dest=com.nokia.HildonDesktop.AppMgr /com/nokia/HildonDesktop/AppMgr com.nokia.HildonDesktop.AppMgr.LaunchApplication string:'rtcom-call-ui'

dbus-send-tick

Vibrates like the "tick" when you tap or somethig.

dbus-send --print-reply --system --dest=com.nokia.mce /com/nokia/mce/request com.nokia.mce.request.req_vibrator_pattern_activate string:'PatternTouchscreen'

dbus-send-vibrate

Vibrate the phone  :)

dbus-send --print-reply --system --dest=com.nokia.mce /com/nokia/mce/request  com.nokia.mce.request.req_vibrator_pattern_activate string:'PatternChatAndEmail' is a little bit longer

dbus-send-activate-led

dbus-send --system --type=method_call --dest=com.nokia.mce /com/nokia/mce/request com.nokia.mce.request.req_led_pattern_activate string:PatternCommunicationIM

dbus-send-deactivate-led

dbus-send --system --type=method_call --dest=com.nokia.mce /com/nokia/mce/request com.nokia.mce.request.req_led_pattern_deactivate string:PatternCommunicationIM

dbus-send-disconnect-net

dbus-send --system --dest=com.nokia.icd /com/nokia/icd_ui com.nokia.icd_ui.disconnect boolean:true

dbus-send-email-new

dbus-send --print-reply --type=method_call --dest=com.nokia.modest /com/nokia/modest com.nokia.modest.MailTo string:mailto:

dbus-send-email-tx-rx

Doesn't work

dbus-send --session --type=method_call --dest=com.nokia.osso_email /com/nokia/osso_email com.nokia.osso_email.send_and_receive

dbus-send-get-imei

dbus-send --system --print-reply --type=method_call --dest=com.nokia.phone.SIM /com/nokia/phone/SIM/security Phone.Sim.Security.get_imei

dbus-send-google

dbus-send --system --type=method_call --dest="com.nokia.osso_browser" --print-reply /com/nokia/osso_browser/request com.nokia.osso_browser.load_url string:"google.com"

dbus-send-hello-world

dbus-send --print-reply  \
--type=method_call --dest=org.freedesktop.Notifications  \
/org/freedesktop/Notifications org.freedesktop.Notifications.SystemNoteDialog  \
string:'Hello, world!' uint32:0 string:'NAO OK!'

dbus-send-im-here

dbus-send --type=method_call --print-reply --dest=org.freedesktop.Telepathy.MissionControl /org/freedesktop/Telepathy/MissionControl org.freedesktop.Telepathy.MissionControl.SetPresence uint32:2 string:"I'm here"

dbus-send-lock

dbus-send --print-reply --system --type=method_call --dest=com.nokia.system_ui /com/nokia/system_ui/request com.nokia.system_ui.request.devlock_open string:'com.nokia.mce' string:'/com/nokia/mce/request' string:'com.nokia.mce.request' string:'devlock_callback' uint32:'3'

dbus-send-media-play

dbus-send --print-reply --dest=com.nokia.mediaplayer /com/nokia/mediaplayer com.nokia.mediaplayer.mime_open string:"file:///$1"

dbus-send-music-pause

dbus-send --dest=com.nokia.osso_media_server /com/nokia/osso_media_server com.nokia.osso_media_server.music.pause

dbus-send-notification

Usage:

dbus-send-notification "foo bar boo bah bang"
dbus-send --print-reply  \
--type=method_call --dest=org.freedesktop.Notifications  \
/org/freedesktop/Notifications org.freedesktop.Notifications.SystemNoteDialog  \
string:"$1" uint32:0 string:'NAO OK!'

dbus-send-pause-panucci

dbus-send --type="method_call" --dest=org.panucci.panucciInterface /panucciInterface org.panucci.panucciInterface.playPause

dbus-send-reboot

dbus-send --system --type=method_call --dest="com.nokia.dsme" --print-reply "/com/nokia/dsme/request" com.nokia.dsme.request.req_reboot

dbus-send-regist-status

dbus-send --system --print-reply --type=method_call --dest='com.nokia.phone.net' /com/nokia/phone/net Phone.Net.get_registration_status

dbus-send-show_conn

dbus-send --print-reply --system --dest=com.nokia.icd_ui /com/nokia/icd_ui com.nokia.icd_ui.show_conn_dlg boolean:true

dbus-send-shutdown

dbus-send --system --type=method_call --dest="com.nokia.dsme" --print-reply "/com/nokia/dsme/request" com.nokia.dsme.request.req_shutdown

dbus-send-speaker-off

dbus-send --type=method_call --dest=com.nokia.osso_hp_ls_controller /com/nokia/osso_hp_ls_controller com.nokia.osso_hp_ls_controller.loudspeaker.force_ loudspeaker_off

dbus-send-speaker-on

dbus-send --type=method_call --dest=com.nokia.osso_hp_ls_controller /com/nokia/osso_hp_ls_controller com.nokia.osso_hp_ls_controller.loudspeaker.force_ loudspeaker_on

dbus-send-task-switcher

dbus-send --type=signal --session /com/nokia/hildon_desktop com.nokia.hildon_desktop.exit_app_view

dbus-send-unlock

dbus-send --system --type=method_call --dest=com.nokia.mce /com/nokia/mce/request com.nokia.mce.request.req_tklock_mode_change string:"unlocked"

dbus-send-unlock2

dbus-send --print-reply --system --type=method_call --dest=com.nokia.system_ui /com/nokia/system_ui/request com.nokia.system_ui.request.devlock_close string:'com.nokia.mce' string:'/com/nokia/mce/request' string:'com.nokia.mce.request' string:'devlock_callback' uint32:'0'

dbus-send-switch-profile

dbus-send --session --dest=com.nokia.profiled --type=method_call /com/nokia/profiled com.nokia.profiled.set_profile string:"silent"

dbus-send-switch-to-offline-mode

dbus-send --system --dest=com.nokia.mce --type=method_call /com/nokia/mce/request com.nokia.mce.request.req_device_mode_change string:"offline"

Gripes

  • Not all Free Software....
  • 256M of NAND is way too little if it is going to be the root filesystem (/). It is way to easy to fill up. I see that they need to do this for reflashing, but since on reflash all the applications in /opt get lost anyway, what good does it do to have them there? Seems they could have mounted /usr on the 32G, or even better just put /boot on NAND and in that case NAND could even be smaller. Seems very dumb to have 32G+ of space on the device, yet still fill up the rootfs! The vast majority of users are going to have no clue how to repartition (which I will do here shortly) and aren't going to be able to install many applications, which should be a great strength of this device since it can multitask so well and the repositories are going to blossom
  • 4 rows of keys would have been a lifesaver.
  • No | (pipe) or tab key
  • The camera doesn't autofocus, or at least not when you need it to.
  • When charging the phone and talking on it, the power cable is sticking out the top, not the bottom.
  • No dictionary/translation program (!)
  • Docs, info, contacts, etc. are spewed all over the place. For instance, try to find out info about Canola. Some on this wiki, some in garage, some at their site, etc. Where does one file a bug? I've been told to ignore garage and do most at *.maemo.org, but then they should ditch those parts at garage to make things cleaner.
  • SDK pretty much assumes you are running 32-bit Debian or Ubuntu. It's not really cooperating nicely in a Debian Lenny install inside qemu.

Bugs

Bugs now has its own page.

My Packages

There is now a separate Packages by Jebba page.

SDK

The SDK page.

VoIP

SIP Configuration

Right now, I can make calls out ok, but the other end can't hear me... It's almost certainly due to NAT and how SIP works. Here's my configuration with Ekiga:

SIP Configuration 1
SIP Configuration 1
SIP Configuration 2
SIP Configuration 2
SIP Configuration 3
SIP Configuration 3
SIP Configuration 4
SIP Configuration 4

sbdmock

Build tool

  • Install on topo
(05:44:08 PM) tbf: jebba: just make sure to always run the beast with "--debug" switch to see what breaks

Random

Things to file/organize.

  • irc.freenode.net #maemo #canola
  • Under the battery there are two sets of gold "dots" on the motherboard. What are these for? JTAG? USB? Serial???
  • SDK hung forever after download at: "Preconfiguring packages".
  • Can Maemo be installed on Sharp Netwalker, since Ubuntu on that thing is a terrible dog by comparison?
  • People I /ignore in #maemo IRC (with pidgin plugin that doesn't seem to save the ignores...):
/ignore +pupnik_ +luke-jr_ +PaulFertser +Klowner_ +TommyBres
  • lshal
  • [5] - Core domain architecture
  • Turn on camera LEDs (e.g. for flashlight):
SpeedEvil: jebba: you open the camera file descriptor and send a ioctl(V4L2_TORCH_ON)
SpeedEvil: jebba: well, there may be a dbus thingy for it - there is no need though. mplayer could do it if it could control arbitrary v4l2 controls - but it can't
(07:39:24 PM) cehteh: SpeedEvil: V4L2_CID_INDICATOR_INTENSITY  ... the dim mode is supported in the driver
  • Icons:
(05:13:43 PM) VDVsx: 48x48 for the app menu and 64x64 for the desktop shortcuts
  • To make an icon to be put in debian/control (MUST be 48x48):
openssl base64 -in emacs-48x48.png | sed -e 's/^/ /' >> control
  • Accelerometer:
(12:34:03 PM) DocScrutinizer51: jebba: (accel) it's a lis302. I'm sure on wiki.openmoko.org you find quite some details, and link to datasheet
  • HOWTO ignore lamers on talk.maemo.org: click their Username, click "View Public Profile", click "User lists", click "Add to Ignore list", click "yes" to confirm. (OrangeBox for starters)

Thanks!

Hope you enjoyed the show. Feel free to edit this page.