English Italiano

Ericsson chatboard


How to modify and reuse it in you own applications


I assume no responsibility for damage, loss of data or personal injury as a direct or indirect result of the use of informations contained in these pages. This material is provided as is without any express or implied warranty.


Home
Hardware
Software

Abstract
How it works
Connector replacement
Link description
UR3 connector
Chatsniff
FAQ
Contact me

Abstract

This page explains how the Ericsson chatboard works and how to use it in your own applications. You can investigate all its secrets and finally build a mini PC keyboard from it.
This article is also part of the UR3 project and explains how to connect the chatboard to it.

How it works

chatboard view First of all you have to know there are different models of chatboard, there are at least two models: a 5V powered model and a 3.3V powered model. The last one (3.3V model) seems to be black and this should be the biggest difference between two, but I have never seen it. It seems to be also another difference between two models: the connector should be different between the 5V and 3.3V power model, so pay attention becose this means also a different pinout.
On the right you can see my chatboard, a 5V powered model, and in this article I will refer only to this one. Pay attention in handling your keyboard, I assume no responsibility if you damage your chatboard or your equipment by doing what is explained in this page.

The operation principle is rather simple: inside the chatboard there is a chip that reads keys status and sends through a serial line a character string representing the pressed key. The keyboard will continue to send the same string until you acknoledge it by sending back the OK string.
'O','K',0x0d,0x0a Each keyboard message must be acknowledged using this string.
The serial line works at 9600bps 8n1.
Easy! Yes, it is not so complex, but there are some little particular you have to know:

1) The string representing a key is not always the same but it depends on what keyboard mode is set.

2) The on board chip isn't a pure key code scanner but iplements some other functions such as keyboard modes.

3) After some times you don't press any key the keyboard will swich back to the default mode.

4) You can change keyboard mode by pressing special keys on the upper line: WWW, Attachment, E-mail, SMS, etc.

5) Some key cannot work depending on what mode is set.

6) Key codes can change from one model to another.

The mode I prefere is SMS mode: it is complete and all keys work well. Later I will refer to this mode only.
If you want you can try all different modes to see wich keys work and how change the related string.
Ok! Let's go replace the orginal connector and switch on!

Connector replacement

cable view As you can see I have removed the original (very bad) connector and replaced it with a 5 wires mouse cable. In removing the connector please don't snap off it as someone has suggested, but use a soldering iron and remove it carefully, because the circuit is very delicate near the connector.
I have also added a wood tab to close the connector hole and held the cable in position, so that I can handle the chatboard as a normal cable linked keyboard.
If you like, you can think to put an additional microcontroller inside the keyboard case to perform protocol translation and connect the chatboard directly to a PS2 connector on the PC. In this way you can create a very litle PC keyboard from it. If you are modifying the chatboard for the UR3 project you don't need protocol translation, so add only the cable and follow the UR3 connector description to mount it.

Link description

link description As you can see in this picture, keyboard link is really simple. There is only one detail that require a little explanation: in this scheme there are two wires connected to +5V power line, one wire is the effective +5V power supply, the other one is the handshake control line. I am sorry, but I can't remember wich one is the handshake line and wich is the power supply line, I suppose the green wire is the handshake but I am not sure. If you connect both to +5V transmission is enabled and the keyboard is free to send key strings, if you tie the handshake line to GND the keyboard will not send any string. You can use this line to implement flow control, but you shouldn't need it, in all my experiments I have never used flow control.
On the other side of the cable you need a level translator to convert logic voltage level to RS232 voltage level, there are different solutions to do that: one way is to use a standard MAX232, one other way is to use this RS232 converter, it is smaller, simpler and cheaper than MAX232 and it works wery well.

UR3 connector

ps2 connector If you are modifying your chatboard for UR3 project look at this picture: it shows a standard PS2 connector with a little modification. A standard PS2 keyboard will use the signals printed in black, normally pins 2 and 6 are not used. We will use these unused pins to connect TX and RX signals from the chatboard.
In this way on your UR3 you will have a PS2 female connector wich can accept even a standard PC keyboard or a chatboard.
Note: in this picture TX and RX are seen from the chatboard point of view, so pin 2 is connected to the blue wire and pin 6 is connected to the brown wire. Inside UR3 you have to exchange TX and RX wires in order to let it to work properly.

Chatsniff

Chatsniff reads and shows message strings coming from the chatboard. It replies with the OK string at any received message, othervise chatboard will resend the string. If the key code is known chatsniff prints also the corresponding char.
Not all message strings are decoded, some string is completely ignored, some other seems to contain interesting data but no key is recognized. In fact I know nothing about the protocol involved between chatboard and the phone, simply I have observed there is some kind of scheme that seems to be repetitive. I have found one way to decode pressed keys, but I have also excluded some details, suck as special keys on the first row.
At my opinion this protocol is very contorted. For example if you press the same key more times, you will see the key code to change; why do key code have to change between the first time and others? I can't undestand this and other strange effects. Inside this caos protocol I have jumped the question and I have found a way to decode pressed keys.
The picture on the left shows a piece of chatsniff execution, as you can see key code is basically a repetition of the same char by a defined number of times, in fact decoding algorythm is based in counting how much times a char is repeated inside key code, it seems to work pretty well. In this example I have pressed the sequence h yeah!.
There is a little particular you have to know before to start: as I wrote before chatboard operation is affected by it's internal state: if you simply switch it on and try to press some keys it wouldn't work. There is a startup procedure to follow in order to let it to work.

1) Connect the chatboart to your Linux box.

2) Start chatsniff.

3) Turn on the chatboard. You will see some uncomprensible messages and some of these will be ignored.

4) Press SMS key. You will see some other uncomprensible messages but now chatboard will work correctly.

Warning: the story is not finished yet, if you wait a long time without pressing any key, chatboard will switch to it's initial state, then you have to press SMS again in order to work.
Well, now you are ready for your chatboard experience. Amuse yourself!

FAQ

Contatti

If you have any questions, suggestions, troubles, etc. contact me at: bit.trapper@gmail.com


This site has entirely made using vim.
Thanks to the open source comunity, the free software foundation and all free software writers.

English Italiano