Archive for the 'openmoko' Category

revers caller lookup for android in austria #update

7 Comments

I found a nice and also free application on the android market called “Lookup Incoming Call

It currently supports a lookup for:

  • Sweden (Hitta.se)
  • whitepages.com (US)
  • GoYellow.de (DE)

and it also supports a custom lookup!

so i decided to program a little script to lookup phone numbers in Austria.

After two days of coding (python) it’s finished.

just add this URL to your custom provider:

http://server.true-binary.com/_lookup/index.py/get_info?number=P

and you are done.

It will show you the name and the street of the caller.

for example:

Max Mustermann – Home Street 6a

if anything is missing, tell me.

cheerio, chaos

################################

#1 UPDATE:

added support for two more countries:

  • GERMANY
  • SWITZERLAND

################################

#2 UPDATE:

Because of DNS problems the server was unreachable for a few days.

It should work again on July, 28, 2009 18:00 (GMT+2)

################################

nvidia tv out on debian (ubuntu – linux)

9 Comments

I have tryed a long time to get a video singal out of my nVidia GeForce 8600 GT (rev a1) and finally it works.

I use a 10 meter S-VHS cable to my sony bravia 40″ 16:9 flat screen

here’s the lspci:

05:00.0 VGA compatible controller: nVidia Corporation GeForce 8600 GT (rev a1)

And here’s my xorg.conf:

Section “ServerLayout”
Identifier     “Layout0″
Screen      0  “Screen0″ 0 0
Screen      1  “Screen1″ RightOf “Screen0″
InputDevice    “Keyboard0″ “CoreKeyboard”
InputDevice    “Mouse0″ “CorePointer”
EndSection

Section “Files”
RgbPath         “/usr/X11R6/lib/X11/rgb”
EndSection

Section “Module”
Load           “dbe”
Load           “extmod”
Load           “type1″
Load           “freetype”
Load           “glx”
EndSection

Section “ServerFlags”
Option         “Xinerama” “0″
EndSection

Section “InputDevice”

# generated from default
Identifier     “Mouse0″
Driver         “mouse”
Option         “Protocol” “auto”
Option         “Device” “/dev/psaux”
Option         “Emulate3Buttons” “no”
Option         “ZAxisMapping” “4 5″
EndSection

Section “InputDevice”

# generated from default
Identifier     “Keyboard0″
Driver         “kbd”
EndSection

Section “Monitor”
Identifier     “Monitor0″
VendorName     “Unknown”
ModelName      “LG L1970HR”
HorizSync       30.0 – 83.0
VertRefresh     56.0 – 75.0
Option         “DPMS”
EndSection

Section “Monitor”
Identifier     “Monitor1″
VendorName     “Unknown”
ModelName      “TV-0″
HorizSync       28.0 – 33.0
VertRefresh     43.0 – 72.0
EndSection

Section “Device”
Identifier     “Device0″
Driver         “nvidia”
VendorName     “NVIDIA Corporation”
EndSection

Section “Device”
Identifier     “Videocard0″
Driver         “nvidia”
VendorName     “NVIDIA Corporation”
BoardName      “GeForce 8600 GT”
BusID          “PCI:5:0:0″
Screen          0
EndSection

Section “Device”
Identifier     “Videocard1″
Driver         “nvidia”
VendorName     “NVIDIA Corporation”
BoardName      “GeForce 8600 GT”
BusID          “PCI:5:0:0″
Screen          1
EndSection

Section “Screen”
Identifier     “Screen0″
Device         “Videocard0″
Monitor        “Monitor0″
DefaultDepth    24
Option         “TwinView” “0″
Option         “TwinViewXineramaInfoOrder” “CRT-0″
Option         “metamodes” “CRT: nvidia-auto-select +0+0″
Option         “TVStandard” “PAL-B”
Option         “TVOutFormat” “SVIDEO”
SubSection     “Display”
Depth       24
EndSubSection
EndSection

Section “Screen”

# Removed Option “metamodes” “TV: nvidia-auto-select +0+0″
# Removed Option “metamodes” “TV: nvidia-auto-select @1440×900 +0+0″
# Removed Option “metamodes” “TV: nvidia-auto-select @1440×900 +0+0; TV: nvidia-auto-select @1440×900 +0+0″
Identifier     “Screen1″
Device         “Videocard1″
Monitor        “Monitor1″
DefaultDepth    24
Option         “TwinView” “0″
Option         “metamodes” “TV: 1440×900 +0+0″
Option         “TVStandard” “PAL-B”
Option         “TVOutFormat” “SVIDEO”
SubSection     “Display”
Depth       24
EndSubSection
EndSection

Two lines are very important:

Option         “TVStandard” “PAL-B”
Option         “TVOutFormat” “SVIDEO”

If these options aren’t set the picture will flicker.

OK, now restart your X server and there should be a signal on the line.

Now the next question was how to get any application on tv out?

Here’s the answer:

DISPLAY=:0.1 ‘command’

for example:

DISPLAY=:0.1 vlc /home/user/video.mp4

have fun, cheerio – chaos

daily build android image for openmoko

2 Comments

Hi folks!

I just added a crontab. Now you can download a daily build android image, compiled from the koolu git repository.

daily-build

cheerio, chaos

building android for freerunner from source

11 Comments

After a month spending my time on the tyrolian mountains (snowboarding) I got a level head and decided to post how to build an android image for the neo freerunner (gta02) from the git repository!

My pre-built image can be found here.

Here we go:

Development machine:

  • Asus eeePC 4G
  • Processor: Intel Celeron M 900MHz @ 630Mhz
  • RAM: 507732 kB
  • Swap1: 224868 kB
  • Swap2: 4393768 kB
  • HDD: 250 GB external iomega (fs: ext3)
  • OS: debian 4.0 rc6
  • Kernel: 2.6.26-1-686
  • Environment: /bin/bash ;)

Target:

  • Neo FreeRunner gta02
  • Screen: 2.84″ (480×640 pixels)
  • Processor: 400 MHz ARM
  • RAM: 128 MB
  • Flash memory: 256MB
  • MicroSD Slot (2GB Nokia)
  • Connectivity: GPS (u-blox ANTARIS 4 ATR0635) – bluetooth – WiFi (Atheros) – USB – GSM and GPRS
  • 2 3D accelerometers


Preparing the development machine:

Installing the needed packages

git and gnupg:

apt-get install git-core gnupg

Java JDK 5 – update 12 or higher:

apt-get install sun-java6-jdk

and some more:

apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev mtd-tools

and the last package is the toolchain:

wget http://trac.koolu.org/attachment/wiki/Toolchain/android-toolchain_20081019-koolu1_i386.deb
dpkg -i android-toolchain_20081019-koolu1_i386.deb

Preparing the target machine:

It’s not a hard work, we just have to create two primary partitions on the memory-card and format them

You should use at least a 1GB memory-card (for me, in my case 2GB)

We have to create two partitions

One VFAT – FAT16/FAT32 partition which acts as the storage area

and one ext3 partition which is needed for android /data area (cache, sms, contacts, etc.)

That’s how it should look like:

sdb1                       Primary             FAT16                     999,94
sdb2                       Primary             Linux                    1031,94

Now we can start to sync the git repository:

Here’s a guide to make directories, downloading the tools and sync the repository step by step:

curl http://android.git.kernel.org/repo > /bin/repo
chmod a+x /bin/repo
mkdir /mydroid
cd /mydroid
repo init -u git://git.koolu.org/freerunner/platform/manifest.git
repo sync

this can take a while

When the sync is finished, it’s time to configure and compile the source:

First we have to configure the make file by typing:

choosecombo

LEAVE EVERYTHING HOW IT IS – JUST ADJUST THE PRODUCT JOICE TO USE FREERUNNER LIKE THIS:

Product choices are:
     0. emulator
     1. generic
     2. sim
     3. freerunner
which would you like? [generic] 3

First step is done, now start compiling the source by typing:

make TARGET_PRODUCT=freerunner TARGET_TOOLS_PREFIX=/opt/android-toolchain/bin/armv4t-android-eabi-

This takes a long time – go and make yourself a cup of coffee

When it’s finished, make an jffs2 image:

The easiest way is to use a script. (It’s by SeanMcNeil – I changed it a little bit, just to do the commands without sudo)

Just type the following command:

sh image_generate.sh release myandroidfs.jffs2

Now there is supposed to be a file called “myandroidfs.jffs2″.

The script can be found here

Now it’s time to flash the generated image into your phone:

First flash the kernel: (can be found here)

dfu-util -a kernel -R -D uImage-moredrivers-GTA02_android_458301db547e5375.bin

Now you flash the root-filesystem into your phone:

dfu-util -a rootfs -R -D myandroidfs.jffs2

YOU ARE DONE NOW – RESTART THE PHONE AND IT SHOULD START IN YOUR NEW ANDROID-OS

IF THE KERNEL DOESN’T BUT, OR YOU GET AN “BAD CRC” ERROR, PLEASE READ THE FIRST ENTRY IN THE FOLLOWING “KNOWN BUGS” LIST

KNOWN PROBLEMS:

##################################################
If the kernel doesn't start or you get an "BAD CRC" error follow this:

1. The easiest way:

Just flash the "qi-bootloader" into the NAND-memory of your phone (the u-boot-bootloader will still be on the phone(NOR-flash)):
dfu-util -a u-boot -R -D qi-s3c2442-master_a2d11c4dd18c9517.udfu
The qi-bootloader could be found here ATTENTION: This version of qi is only for gta02 devices! 2. The hard way: The harder way is to increase your uboot environment, because it only accepts a kernel with an size small than 2MB: First plugin the phone and start it into the uboot-environment (AUX+power button) On the development machine: Change the owner on device:
chown uucp.uucp /dev/ttyACM0
Open console to device:
cu -l /dev/ttyACM0
Increase the memory:
setenv bootargs ${bootargs_base} ${mtdparts}; nand read.e 0x32000000 kernel; bootm 0x32000000
Save the parameters:
saveenv
Everything should work now! ##################################################
##################################################
If you get error messages like that:
build/core/api/1.xml:273231: error 1: required string: "method"
You have to follow these instructions:
apt-get install eclipse sun-java6-jdk
update-java-alternatives -s java-6-sun
Now try again!
##################################################

I heared that some people had problems compiling the source.
So, if you get errors like:
Note: Some input files use or override a deprecated API. Note: Recompile with -Xlint:deprecation for details. Note: Some input files use unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. target Dex: framework make: *** [out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.dex]
it's probably a memory problem. I read that you need at least 1024MB RAM. If you don't have such an environment you can extend your swap partition (example: swapon /dev/sdb2) REMEMBER: The filesystem must be linux-swap ##################################################

cheerio, chaos

android on freerunner – kernel doesn’t boot

Add a comment

Thats a known issue!

It’s because the uboot environment just accept any kernel wich is smaller than 2MB.

You just have to adjust the environment.

How does this work?

Boot your openmoko into the bootloader (Press the AUX button and then turn it on) and connect it to your PC.

Then you have to change the permission like this:

chown uucp.uucp /dev/ttyACM0

Next step is to open a console to the device:

cu -l /dev/ttyACM0

Next step is to excecute this command:

setenv bootargs ${bootargs_base} ${mtdparts}; nand read.e 0x32000000 kernel; bootm 0x32000000

And the last step is to save the environment:

saveenv

for me, it works : )

cheerio