Samstag, 30. Juni 2012

I recently got my Raspberry Pi, so now it is time for some comments...

A few days ago my Rasperry Pi from Farnell has arrived. The delivery took about 7 Days from Great Britain to South Germany. After unboxing the little monster I realized that I don not own that much SD-Cards. The old 2GB SD-Card I which I found in my Junk Box was not that 100% compatible device.

So I ordered a 32GB Samsung high Speed SD-Card because bootup time matters. I do not have an up to date PC TFT with HDMI input so I will have to run my RPi headless. This was my first RPi Challenge. After fixing my Sparkfun FTDI Basic UART breakout board to 3.3V instead of 5V I had an serial console to my RPi. This was what I thought would it be. Every Board I previously used had some sort of bootloader talking over the serial line to me. But not the Pi.

So back on topic. Installing a pre build Debian, Fedora or maybe even a Suse Distro. I thought would be to easy. So I decided to search for a Openembedded Layer for the RPI. I was suppressed that there is not that big community for the ŔPI in the OpenEmbedded universe. So after some hours of fighting I got my first OpenEmbedded (Ångström) based image. I put it on the SD-Card inserted the card in my RPi and nothing happend.... ;-(

Thats not that good. So I decided to go the easy way and install some prebuild Debian on the SD-Card. I decided to use the Debian “wheezy” public beta.

Because Debian stable is in most cases not the bleeding edge distro. Everything booted up very well and so I am also tested my seriel connection to the device. I hopfully can report some good news about OpenEmbedded on this Blog in the next few days....

Donnerstag, 18. August 2011

Switching the Nokia 1208 from local mode to Normal mode by FBUS

Yes I did it!!!!!

After fiddling around a little bit I solved the issue how to power up the Nokia 1208 only by FBUS and by enabling battery power. I just disabled the CheckDCT4Only() function code in gammu.

Because the phone seems to get stuck on this code segment. After removing the code the phone powers up as expected. The code segment is located in this file: gammu/depend/nokia/dct4.c in line 31.

I hope I can investigate the whole CheckDCT4Only() function in the next few days.
And maybe I'll develop a patch for gammu.

The next step will be writing my own code to access the phone.


[Update] How to boot Nokia 1208 in local mode

While playing around with the BSI PIN in the Easy Flash Interface of my Nokia 1208 I discovered that if I do things in the following order my device powers up in local mode.

  1. Remove the Battery
  2. Connect the BSI with a pull-down resistor of 3.3k Ohm to Ground
  3. Plug-in the USB-Adapter cable
  4. Reassign the Battery to the Nokia 1208 Phone
  5. On the display appears a sallow "Local Mode"

The only disadvantage is, I did not have any fbus command to bring the phone in normal mode so far. Any hints?

[Update]
It seems not necessary that the phone is connected to the USB Cable. But it seems that there should be a larger time gap between attempts. I looks that there are some capacitors in the phone which have to be discharged before the next successful switch to local mode.

Mittwoch, 10. August 2011

How to build my modified gammu version from git on ubuntu

First of all you the git package have to be installed on your box:
sudo apt-get install git
Next step is to install all the required source and development packages.
sudo apt-get build-dep gammu
Now you have to get the gammu sources from my github repository
git clone https://github.com/ka23/gammu.git
Change the directory to the newly created gammu folder and create a new build folder and change to it
cd gammu/
mkdir build
cd build
Now cmake have to be executed
cmake ..
This will take some time ... after everything have been created, you have to call make
make
Now You have to wait even longer... But after a successful compiler run gammu is available in the gammu folder
gammu/gammu
To test your freshly compiled gammu you have to provide a gammurc file "~/.gammurc" which looks like this in my case:
[gammu]
device = /dev/ttyUSB0
connection = fbus

After this you can call
gammu/gammu --identify







This is my homebrew universal USB to Nokia FBUS Cables Adapter

As I mentioned in a previous Post I use this RJ45 Connector which I extracted from an old DSL router to plug-in various Adapter Cables.



The banana sockets are used to connect the different not fbus related pins to the adaptor cables. These are Power for example.The cable straps are used as strain relief (Zugentlastung in German).

The following Banana jacks are connected to the following PINS on adapter cable

For the easy-flash 3 in 1 adapter:
  • The red one is connected to the power clamp on the small cable. And to VCC Pin of Easy Flash I.
  • The green one is connected to the BSI Pin on the connector this applies to Easy Flash I and Easy Flash II Easy Flash III was not tested. There seems to be a 3.3k Ohm resistor included.
  • The blue one is connected to GND (Ground).
  • The black and yellow ones are not connected.

Donnerstag, 4. August 2011

Are there any fbus specifications available?

The only useful documentation if found is the one from gammu/gnokii which can be found on my github repository for example:

nokia.rst - The general nokia part which covers fbus and mbus
n6110.rst - Nokia 6110 and derivatives (Nokia 6130, 6150, 6190, 5110, 5130, 5150, 5190, 3210, 3310)
n7110.rst - Nokia 6210 and derivatives (7110)
n6510.rst - Nokia 6510 and derivatives (?)

The rest of the documentation can be found here.

If there is more documentation out there some one may can drop me a comment.

Some more c++ code can be found here.

Something about timings

There is not that much information about the fbus protocol in the internet. So I decided to gather the informations I am stumbling over in this Blog. Maybe there are more or less useful information for you.

In a avrfreaks discussion turboscrew talked about some timings of the fbus during initialization.
If you first output the 0x55's and then the query frame taking care that the time between the 0x55's or the bytes of the query message do not exceed 5 ms and that there is, say, 10 ms delay between the last byte of the 0x55 chunk and the first byte of the query, and still no response, then I'd suspect that there is still something wrong with the cable.
I am not sure if this is correct, but it is information ;-)