View source for User talk:Theo

From Openmoko

Jump to: navigation, search

You do not have permission to edit this page, for the following reasons:

  • The action you have requested is limited to users in the group: Administrators.
  • You must confirm your email address before editing pages. Please set and validate your email address through your user preferences.

You can view and copy the source of this page:

Return to User talk:Theo.

Personal tools

Three weeks with FreeRunner This is the third week with the FreeRunner GTA02, and to this date it is of no better use to me than a brick. I have installed different versions of the OM2008, Qtopia and Debian, but none of these installations are working to any satisfaction in my world. This is of course a product in development thus one cannot expect things to work flawlessly compared to an ordinary phone. But then again, after more than one year of development I do at least expect a few things to work:

  • Make calls
  • Receive calls
  • Have a good enough audio quality
  • Receive SMS messages
  • Send SMS messages
  • Be able to connect with ssh through USB
  • Be able to change the volume

As I can see it it all comes down to sound problems at the moment. One of the most simple tasks is either totally lacking in some distributions, or simply not working. I still haven't been able to adjust the volume for the speaker and microphone on any of the distros. The function might either be there with no effect, or simply not exist at all which at least is a bit more honest to the user. Beyond this you clearly hear antenna interference in the speaker when calling, and the people you talk to will hear their own voice clearly echoing back to them whilst speaking. om2007.2 The phone came with this Distribution installed. After making my first call, getting complaints about the people at the other end finding it unbearable to hear a clear echo of their own voice I gave up and installed the new OM2008.8 version

om2008.8 Well, here the first problem is to be able to enter your PIN code for your SIM card. There is about no way to understand how you are able to change the keyboard to write numbers. It took a while to figure out how to change the keyset and finally input the PIN code. Beware to accidentally write the wrong number. If doing so you will end up having to battle against the input field and preview display field as they become un synchronised.


Ok, found a way to actually change the volume by starting a terminal and run

alsamixer

and change the values to:

Bypass = 29, Your speaker
Mono   = 95, your microphone

Don't do this while calling though, as you will hang the dialer. Why bypass changes the speaker volume is beyond my knowledge, as this I found out by trial and error.


See the Neo Freerunner audio subsystem to tune the phone volume.


Qtopia 4.3.3 When using the standard theme, you can at least make phone calls, but no matter how you try to adjust the volume on the speaker, it will stay at the top level. Changing to the second theme available makes things even funnier. There is no dial menue in sight wherever you look.

Debian Even though this one looks promising, I am still struggling with the simplest of things which is to get the pointer aligned with the screen after having done an apt-get upgrade of the basic installation. People are giving lots of nice hints about what values should be in the /dev/etc/pointercal file, but no matter what I put in there, only a portion of the screen is needed to access the phole display. Most people are refering to the touch screen events being received through /dev/input/event1, but no such device exists in my Debian installation.

Qtopia 4.4.1 They seem to have sorted out the echo problem. Still, using the volume levers in the the Qtopia menue doesn't work. You cannot change the time zone, it is stuck on New York. Also one of the themes doesn't have any dialer option, thus you cannot dial, if not going through your address book or call history.


About Debian

Hello Theo,

Your feedback about Debian sounds strange. Did you follow this procedure? My FreeRunner has been running Debian for three weeks and I never experienced such pointer related problems.

--

_Gilles.

Reply: About Debian

hi Gilles,

thank you for your very quick reply. Yes, I have used that page to be able to install Debian on it. It took me quite a while to find any working kernel to go with it though. At the moment, the OS itself works fine through USB. The problem lays solidely with the touch screen and xfce. The funny thing is that the /dev/input/event1 device xorg.conf is refering to doesn't exist under /dev/input. Only event0,2,3,4 and mice... Even so the touch screen works, but only uses a portion of the screen to address the whole display making the screen useless. :-(

As of writing I am starting to suspect /dev/input/mice might actually be the disguised /dev/input/event1, giving a bit of light in this dark matter...

Did you do an apt-get upgrade of your unit? Because that's when the screen problem started. --

/Theo

Part two: About Debian

I have sent this to the smartphone-userland forum, but nobody has replied

I have the same kind of problem that can be read about on the internet, that only a small portion of the touch screen is used to point all over the display. This weird behaviour started after doing an apt-get upgrade.

Most people recommend to use ts_calibrate to fix the issue, after setting the parameter TSLIB_TSDEVICE="/dev/input/event1" But when looking into /dev/input/ there is no such thing as event1, there is event0,2,3,4 and if using them ts_calibrate will not recognize it as the touch screen. I have also seen recommendations such as /dev/input/touchscreen1 (or similar) but it doesn't exist as well. This means I have no clue where the xserver listens to the touch screen input.

Trying to configure the screen by using all kinds of different pointercal values recommended all over the Internet hasn't made things work any better, nor has trying to tamper with ts.conf. I notice that it pointercal is actually read as different parameters change its behaviour slightly, but nothing works. These ones I have used so far:

poinercal -132 19425 -2039232 -25919 -218 23835853 33070 pointercal_current -67 38667 -4954632 -51172 121 46965312 65536 pointercal-fso 557 38667 -4654632 -51172 121 46965312 65536

pointercal -132 19425 -2039232 -25919 -218 23835853 65535 calibrated-qtopia -158 19425 -2071883 -25955 -290 24063475 33118 calibration_tip 0 80000 -8000000 -80500 0 74500000 65536


I have also tried to copy the old libts* files as some person did recommend that as well to solve the issue, but no success.

Reply: About Debian

Well... I issued my last apt-get update && apt-get upgrade yesterday morning (Paris time) and didn't notice any change about the pointer behavior. I have since rebooted my FR several times. Some more details about my config:

Linux debian-gta02 2.6.24 #1 PREEMPT Thu Sep 11 09:16:38 UTC 2008 armv4tl GNU/Linux
  • pointercal parameters: 557 38667 -4654632 -51172 121 46965312 65536
  • packages:
ii  xserver-xorg-input-tslib             0.0.5-1               tslib touchscreen driver for X.Org/XFree86 s
ii  fso-frameworkd                       0.2.0-git20080909-2   freemsmartphone.org Framework Daemon
ii  fso-frameworkd-wireless-glue         0.2.0-git20080805-4   Free Smartphone Framework Daemon - wireless
ii  fso-gpsd                             0.5-1                 gpsd compatibility daemon for the FSO framew
ii  fso-utils                            0.git20080812.2       Useful tools for the freesmartphone.org syst
  • ts.conf: module_raw input
  • bits from dmesg:
input: Neo1973 Buttons as /devices/platform/neo1973-button.0/input/input0
wake enabled for irq 48
s3c2440-ts s3c2440-ts: successfully loaded
input: s3c2410 TouchScreen as /devices/virtual/input/input1
input: lis302-1 (top) as /devices/virtual/input/input2
lis302dl spi0.0: Found lis302-1 (top)
input: lis302-2 (bottom) as /devices/virtual/input/input3
lis302dl spi0.1: Found lis302-2 (bottom)
i2c /dev entries driver
s3c2440-i2c s3c2440-i2c: slave address 0x10
s3c2440-i2c s3c2440-i2c: bus frequency set to 390 KHz
s3c2440-i2c s3c2440-i2c: i2c-0: S3C I2C adapter
input: GTA02 PMU events as /devices/platform/s3c2440-i2c/i2c-adapter/i2c-0/0-0073/input/input4
  • The touchscreen device in /sys:
debian-gta02:~# cat /sys/devices/virtual/input/input1/name
s3c2410 TouchScreen

Hope this helps.

/Gilles.

The quest for a good Debian config

Everything is the same except for the kernel being:

Linux fic-gta01 2.6.24 #1 PREEMPT Wed Aug 27 14:17:59 CEST 2008 armv4tl GNU/Linux

(as this one was the only one I got working nicely) and I do not have the fso packages installed.

GTA01 ??

This raises a few inconsistencies:

  • You said your Neo is a GTA02 but you're using a GTA01 kernel. You may want to give a try to the FSO3 kernel for GTA02
  • BTW, the fso-* packages should have been installed by the Debian installation script. Theses packages are required for the GSM usage.

Just in case, here are the /etc/apt/sources.list entries to use:

deb http://ftp.debian.org/debian unstable main        # pick a mirror near you at http://www.debian.org/mirror/list
deb http://ftp.debian.org/debian experimental main    # idem
deb http://pkg-fso.alioth.debian.org/debian unstable main

/Gilles.

Reply GTA01

(Gosh your quick, I was just to add these lines)

I have now updated the kernel to:

Linux fic-gta01 2.6.24 #1 PREEMPT Wed Sep 3 19:01:18 CST 2008 armv4tl GNU/Linux

But still the screen is behaving like earlier described, and still no /dev/input/event1 to be found. I knew you where to pin point gta01, but thats just the name of the unit at the moment. It came with the rootfs system. The guy preparing it probably had a gta01 or something... I think I downloaded the first debian version from

http://wiki.openmoko.org/wiki/Manual_Debian

before finding the correct kernel to use for the gta02.

Model name

Please have a look at the model name stated under the battery. Mine says clearly Model: GTA02 as on this picture:

Menu11.jpg

Just to be be sure...

In case it's a GTA01 I can't help you further. But if it's a GTA02 please consider reinstalling Debian this way (the wiki page Manual_Debian is now obsoleted).


It is a GTA02, mine is even from 2008-07-21. the name just got inherited when getting the root filesystem for Debian from that site. But to make things more coherrent I am at the moment reinstalling it all to your recommendations.


Ok, so I reinstalled Debian and I am trying to get xfce4 up and running. At the moment I only have the console. I now do have /dev/input/event1 and thats an improvement. But there is no /var/log/messages and if one tries to install a package that doesn't exist with apt-get you get an error and that ssh session totally hangs.

I can also see an error at boot

.udev/ already exists on the static /dev! (warning)

Ok, the apt-get problem was solved by doing dpkg-reconfigure apt (or by installing aptitude, I did both at the same time), thus the exitement increases will this unit come alive... or not...


Current problem:

(II) Loading extension XFree86-DRI
xf86PciVideoInfo is not set
Could not get primary PCI info
Backtrace:
0: /usr/bin/X(xf86SigHandler+0x70) [0x80aa8]
Fatal server error:
Caught signal 11.  Server aborting

X server

The Debian installation script normally installs the matchbox window manager. Did your FR successfully reboot with a working graphic session just after the Debian installation? It should have: my FR is from 2008-07-25 => probably the same hardware revision than yours.

I've had a look at my /tmp/Xorg.0.log. Here is the DRI loading part:

(II) LoadModule: "dri"
(II) Loading /usr/lib/xorg/modules/extensions//libdri.so
(II) Module dri: vendor="X.Org Foundation"
        compiled for 1.4.2, module version = 1.0.0
        ABI class: X.Org Server Extension, version 0.3
(II) Loading extension XFree86-DRI
(II) LoadModule: "fbdev"
(II) Loading /usr/lib/xorg/modules/drivers//fbdev_drv.so
(II) Module fbdev: vendor="X.Org Foundation"
        compiled for 1.4.0.90, module version = 0.4.0
        ABI class: X.Org Video Driver, version 2.0

Did you change your xorg.conf? The one provided by the Debian installation should have worked out of the box. Sorry if I can't be of more help.

/Gilles.


One step beyond

You have been of great help already. Just to have a reference installation to check against is of great help.

I have surpassed that message now, and I have succeeded to get the graphic display up and running again. But after installing xfce4 the good old weird display behaviour is back again, one third of the screen representing the whole screen. Its like something tripples the value output from /dev/input/event1.

At the moment I have ts_calibrate etc giving a Segmentation Fault and the xserver returning:

Backtrace:
0: /usr/bin/X11/X(xf86SigHandler+0x70) [0x80aa8]
1: /lib/libc.so.6 [0x4021a374]
2: /usr/lib/libts-0.0.so.0 [0x404f8de4]
Fatal server error:
Caught signal 11.  Server aborting
waiting for X server to begin accepting connections
giving up.
xinit:  Connection reset by peer (errno 104):  unable to connect to X server
xinit:  No such process (errno 3):  Server error.

Ok that problem clearly has to do with putting:

Section "InputDevice"
      Identifier "Configured tslib"
      Driver "tslib"
      Option "CorePointer"
      Option "TslibDevice" "/dev/input/event1"
      Option "Protocol" "Auto"
EndSection

in /etc/xorg.conf. Changing back to use /dev/input/mouse makes xfce4 run, but one cannot move the mouse pointer (which is quite obvious).


I have now removed and reinstalled X and xfce4 a second time to get the touch screen to work, but I seem to be stuck with this error if trying to use the above lines in /etc/xorg.conf

(II) Loading sub module "GLcore"
(II) LoadModule: "GLcore"
(II) Loading /usr/lib/xorg/modules/extensions//libGLcore.so
(II) Module GLcore: vendor="X.Org Foundation"
        compiled for 1.4.2, module version = 1.0.0
        ABI class: X.Org Server Extension, version 0.3
(II) GLX: Initialized MESA-PROXY GL provider for screen 0
(**) Option "CorePointer"
(**) Configured tslib: always reports core events
(**) Option "TslibDevice" "/dev/input/event1"
Backtrace:
0: /usr/bin/X11/X(xf86SigHandler+0x70) [0x80aa8]
1: /lib/libc.so.6 [0x4021a374]
2: /usr/lib/libts-0.0.so.0 [0x404f8de4]
Fatal server error:
Caught signal 11.  Server aborting

My xorg.conf:

Section "InputDevice"
        Identifier      "Configured Touchscreen"
        Driver          "tslib"
        Option          "CorePointer"           "true"
        Option          "SendCoreEvents"        "true"
        Option          "TslibDevice"           "/dev/input/event1"
        Option          "Protocol"              "Auto"
        Option          "Width"                 "480"
        Option          "Height"                "640"
EndSection

Section "Device"
        Identifier      "Configured Video Device"
        Driver          "fbdev"
EndSection

I haven't tried xfce4 yet: my 512MB microSDHC card is currently full and I'm waiting for a 8GB one.

/Gilles.

Debian installation, mission accomplished :)

The last error was due to some bad character accidentally put into in the ts.config file. Finally the screen seems to be fairly aligned with the touch screen display. Before this i totally removed everything regarding Xwindows and reinstalled xfce4, xserver-xorg and whatever extra packages they did need, a third time. I also used your touch screen parameters in /etc/X11/xorg.conf.

Thank you Gilles for your patience and creative input. Next step will be to make the unit jump into Xwindows from boot and make. Please continue to check this page for a while as I might need a bit more help on my way to a perfect unit. A good question is how to use the GSM functions in the xfce environment.

\o/

Great!

The X session automated start - and BTW the GSM functions - are handled by the zhone-session package:

# apt-get install zhone-session

It installs the /etc/init.d/zhone-session startup script. You can then customize the set of X apps launched at the beginning of the X session by editing the /usr/bin/zhone-session file.

/Gilles.

XFCE

My idea is to run the xfce desktop to be able to use the alsa mixer etc, and from there use the GSM functions when needed, but maybe I am looking upon things from the wrong track. As far as I understand the zhone desktop is only a demo, and there are no more softwares to install for zhone beyond the ones provided, right?

I have zhone as a program on the xfce desktop at the moment, it seems to work nicely (I haven't tried calling with it yet).


You're right. I've finally managed to have a supported 8 GB microSDHC card so I've installed xfce4. I too have zhone running as a program on the xfce4 desktop. I've automated the zhone launching using the xfce4 default session file /etc/xdg/xfce4-session/xfce4-session.rc:

[Failsafe Session]
Count=5
...
Client4_Command=zhone
Client4_PerScreen=True

Have you been able to call yet? I tried but no sound or anything. I also installed the xfce4-mixer and the amount of levers and toggle buttons are quite overwhelming. It looks like doing any changes enters the risk of screwing things up rather than solving it.

When it comes to web browsers I have tried Konqueror, Iceweasel, netsurf, dillo and Midori stands out to be the fast, light and able to represent the web pages correctly.

What window manager are you running at the moment xfwm?


I've been able to call and being called: my FreeRunner is my main phone. No need to tune anything, no need for xfce4-mixer. Zhone default settings are ok. If you want to tune the FreeRunner audio, have a look at the Neo Freerunner audio subsystem.

About web browsers I've tried Midori and Iceweasel. Midori is for default usage. I switch for Iceweasel when the site is peeky about javascript.

And I use the matchbox window manager.


How did you get the matchbox window manager to work? As soon as i kick out xfwm it also throws away xfce4...


No need to apt-get remove xfwm4. Just create the file /root/.config/xfce4/xinitrc with:

#!/bin/sh
matchbox-keyboard-toggle &
exec matchbox-window-manager -use_titlebar yes -use_cursor no &
xfce4-session

I use matchbox with the titlebar option set to yes to be able to close applications.

This file must be executable.

Then edit /etc/xdg/xfce4-session/xfce4-session.rc as stated above to start zhone automatically.


I did the above, but when after rebooting, it was still not using matchbox...

Xglamo

Have you succeeded to install the xserver-xglamo? I removed xserver-xorg, and installed xserver-xglamo, but I haven't got it up and running yet.


I haven't tried it yet. Stay tuned ;o)


Got it running, but you have to create this link

ln -s /usr/bin/X11/Xglamo /usr/bin/X11/X

to make it work. The package creates the link in

/usr/bin

but

/etc/X11/xinit/xserverrc

looks like this

#!/bin/sh
# $Id: xserverrc 189 2005-06-11 00:04:27Z branden $
exec /usr/bin/X11/X -nolisten tcp