Talk:TomTom Console

From OpenTom

Jump to: navigation, search

Contents

TTconsole works with following Navcore Versions

Navcore VersionTTconsole 1.09TTconsole 1.10TTconsole 1.11
6.560NONONO
7.162YESYESYES
8.2 NOseems YES seems YES
8.3 NONO seems YES

Features of TTconsole

FeatureTTconsole 1.09TTconsole 1.10TTconsole 1.11
english keyboard layout as optionNOsort of
transparent keyboardNONO
option to rotate the touchscreen coordinatesNOYES, not tested
optional bigger fontNONO
extended charackter setNONO
big/wide keyboard optionNONO


Icon bug?

I have a problem that when I add TTConsole.cap and Terminal.bmp and the SDKRegistry directory that my HelpMe button disappears, and I get two guided tour buttons. Is this normal behaviour? Is there any workaround?

This is not a TTConsole bug. It comes from the customized menu.

Screen Bug

^ New version works ^ However, I'm not sure if this is how it's designed or just how it works on the XL, but personally I dislike the keyboard setup. If I do two ls commands, the keyboard button (to access keyboard) in the upper right disappears. I also dislike the fact that if you do a command, it can push the keyboard only half way off the screen, then you have to guess where the key you want is. Personally, I think it would be better if the keyboard always stayed put, then you could press the hide button if you need to see something under it. Guess it's all about user though.

---

Comment: The keyboard can be redrawn if you touch the upper right corner of the screen (where the keyb button appears when the keyboard is on place). Al though the keybord scrolls off, you can tap the screen where they used to be. If you want a scroll region (only 19 lines) you should use screen. Screen can split the schreen into two windows. In the upper the keyboard will not move away, in the bottom you can see the output of the programs, if you want. So please use screen. in TTconsole always the full screen is available for text output. This is a feature not a bug. --Bello 21:34, 30 January 2008 (CET)

---

Thanks for clearing this up, I will use screen. However, I still feel that the button to launch the keyboard should be there at all times. Or at least make it so you cannot press the keys on the keyboard when it is hidden. This will avoid the need to erase the character you entered while searching for the keyboard.

OK, this is to be thought of. Please see that, If I would redraw the keyb button, I would have to do it potentially at every charackter-Output (because it could overdraw the button) and this will definitively slow down the TomTom. The Device has only a comparably slow processor, so this slow down would be noticable. So I decided not to do so. Maybe one could redraw it after every scroll-up. But is this worth it? I could of course disable the keyboard, when it is hidden. but if it is just scrolled away, (for the program) it is not hidden. It does not track where the keyboard is now. This also would mean additional overhead. So switchin it of, afer explicitly having pressed the hide button would be possible. Ill try if this is useful. --Bello 22:29, 30 January 2008 (CET)

---

Sorry I didn't know it was so involved.

It doesn't seem like it is worth it then, the way you make it seem.

Just to let you know, if you highlight a key, then drag your stylus or finger off the key, it remains highlighted. even when the keyboard goes away.

--Compy 23:16, 30 January 2008 (CET)

X11Basic

Please have a look at Talk:X11-Basic.

Bugs

Thank you for you job. I'm french and I have installed your tomtom console on my TonTom ONE V2 (soft in 6.56). with the previous version, I didn't find the keyboard. With the current version (1.01), I have the following error just after the program starts:

ERROR spawning programme Cannot spawn shell! ERROR, QUIT

With the version 1.06, the error is more explicit:

 IOERROR: errno=2
 There are no available ttys.
 slavename=
 ERROR spawning programme
 Cannot spawn shell! ERROR, QUIT

I'm sorry but I don't have btconsole access Many thanks. --marvalou 20:44, 14 January 2008 (CET)


OK: At least, the graphics work. I have TomTom ONE V3, Soft Version 7.162. The Error message means that either there is a device /dev/pts/ missing or the driver for pseudoterminals is not compiled into the kernel. The function which produces this error is forkpty(). If forkpty() fails, it is because you ran out of pseudo ttys.

It turns out that this problem can not be solved so far. You very likly have to get a different kernel. This can be done either by recompiling your own kernel or by getting a software update via TomTom HOME (it is not yet confirmed, that this really has helped.) First we have to compare the systems settings.

Here is my system configuration: TomTom ONE V3 Soft Version 7.162

 > uname -a
 Linux (none) 2.6.13-tt2327 #1 Wed Nov 21 13:09:35 CET 2007 armv5tejl unknown

cat/proc/driver should give you this output:

 > cat /proc/tty/driver
 /dev/tty             /dev/tty        5       0 system:/dev/tty
 /dev/console         /dev/console    5       1 system:console
 /dev/ptmx            /dev/ptmx       5       2 system
 rfcomm               /dev/rfcomm   216 0-255 serial
 ttySAC               /dev/s3c2410_serial 204 64-67 serial
 serial               /dev/ttyS       4 64-67 serial
 pty_slave            /dev/pts      136 0-1048575 pty:slave
 pty_master           /dev/ptm      128 0-1048575 pty:master


And as far as I already know, here is the difference. Some Models/Soft versions do not support the pty and ptmx devices. Lets compare. Maybe a Software update from TomTom (with the regular update procedure can help). Otherwise I also have no idea ho to fix this without replacing the kernel. Does anybody have a better idea? sorry for this. --Bello 20:50, 16 January 2008 (CET)


On a kernel which do not(!) support pseudo-terminals, the /proc/tty/drivers looks like this:

file bello-file-nr2.txt:

/dev/tty             /dev/tty        5       0 system:/dev/tty
/dev/console         /dev/console    5       1 system:console
rfcomm               /dev/rfcomm   216 0-255 serial
ttySAC               /dev/s3c2410_serial 204 64-66 serial

--marvalou 20:23, 17 January 2008 (CET)

This is bad news: as you can see, the drivers for the pseudo-Terminals /dev/ptmx and /dev/pts are not in the kernel. You will have to get a new kernel to run TTconsole. Sorry for that. I cannot give you advice on which kernel, where to get, which garantees that all original TomTom applications will still work. Have you tried a Software Update with TomTom HOME? --Bello 09:06, 18 January 2008 (CET) Maybe I could add an extra mode of operation to TTconsole, which allows you to enter single shell commands, which then are passed to the shell, excecutes, and the resulting text-output will be shown to the screen. (no interactive interface to programs). What do you think? --Bello 09:06, 18 January 2008 (CET)

I think the best way is to update my Tomtom with the last firmware (7.162). I'm going to do it. Thank you for your interest. I'm a beginner in tomtom plugins development and I think TTconsole will be very convenient for me, to start and debug my little plugins. Many thanks. --marvalou 14:36, 18 January 2008 (CET)

Hi, incredibly cool app. I am having the same problem, so I rebuilt the kernel on my TomTom-910 so that it had the pseudo-tty drivers. /proc/tty/drivers now has the following

/dev/tty             /dev/tty        5       0 system:/dev/tty
/dev/console         /dev/console    5       1 system:console
/dev/ptmx            /dev/ptmx       5       2 system
rfcomm               /dev/rfcomm   216 0-255 serial
ttySAC               /dev/s3c2410_serial 204 64-66 serial
pty_slave            /dev/pts      136 0-1048575 pty:slave
pty_master           /dev/ptm      128 0-1048575 pty:master
pty_slave            /dev/ttyp       3 0-255 pty:slave
pty_master           /dev/pty        2 0-255 pty:master

However, I am still getting the 'There are not available ttys'. One thing I suspect is that I have not created the correct /dev entries, because I don't know what they should be (pseudo ttys confuse me). Can you tell me the names of the devices that should exist ? thanks - --Franc 02:16, 26 January 2008 (CET)

Hi, I worked it out - I had /dev/ptyN instead of /dev/ptypN, ttconsole now starts fine and I am experimenting with the software - I will let you know how much of it I can get to work on the TomTom-910. For other readers - recompiling the kernel seems to have some downsides - I lost small bits of functionality - so make sure you backup before replacing ttsystem. --Franc 22:39, 26 January 2008 (CET)

Hello, I have a v4 and got very excited about ttconsole - but as others have found, no ptys. I have had no success with new kernels for this - anyone got there own kernel working on a v4 ? Other observations - if you look at a system that has ptys on new kernels there is a filesystem mounted by rc.sysinit (devpts on /dev/pts type devpts) similar to /proc. also - I wondered if bash would be too upset if it did not see a real(pseudo) terminal. what about opening a unix domain socket and doing stdio plumbing before forking a shell. I guess isatty() would fail but would that be the end of the world? --Jold 12:26, 2 April 2008 (CEST) Latest Tomom update fixes this. (Had to boot Windows app grr) - still like to know if anyone has their own compiled kernel on a v4


Small display bugs

I have a GO 720. TTconsole works on this (as noted by Foxdeman) but the new directories need to be on the internal filesystem - it didn't appear to work with them on the SD card (although the TT correctly found an mp3 directory there).

However, although the keyboard is painted in the top right corner of the console, there is some damage to the text - it appears that the first column or two of pixels on the rows where the keyboard is painted are lost. As the screen scrolls, the first character on each row becomes damaged as it scrolls into the region where the keyboard is painted. I'm using TTconsole 1.08 (from the binary bundle) on TT version 7.221

It would be nice to have a screenshot here. My susppicion is, that the keyboard is drawn over the right border of the screen, which then becomes wrapped to the left.

Screenshot below. I think you're correct - the characters are fine until the keyboard is painted, and note that the white border on the right hand side is missing. Image:TT-720-corruptchars-Pic.png


Also, if a character is typed that doesn't have a font entry, it is displayed as <nnn>. Which is fine .. but the console seems to count it as one character while displaying 5. If you then backspace, the cursor position is incorrect and it is not possible to delete all characters on the line.

OK, this is a point. I'll try to fix this in the next versions. Maybe it would be best to extend the internal font, so that it can display some more characters.--Bello 23:47, 30 March 2008 (CEST)

Getting ready-made Applications

You can (and probably should) compile the programs. But if you are lazy, you can take the binary files out of the packages of a ARM-linux distribution like http://www.netwinder.org/allrpms.html . (To extract the files from the rpm you can use following script:)

 rpm2cpio $1 | cpio -i -d

Be aware that the files in the distribution mentioned above are compiled with hardware floating-point, which is not available on the TomTom. So any application which uses floating point operations will fail with illegal instruction. On the other hand, if you compiled some sources on your own and want to link it to any .a file out of this dirto, it will fail. dynamically linking to .so files will work, but the library must not use floatingpoint operations. --Bello 09:45, 18 January 2008 (CET)

Interfacing with the Navi-Application

See: FileInterface This is important only if you want to run applications in the background (usually not with TTconsole). But If you want to set POIs or read the current position etc. This also makes sense in combination with the console.

Screenshots

Can anybody put some nice representative screenshots here? (Preferably from different devices/Screensizes)?!

Developing tools & infos

I use the original TomTom toolchain, which they offer on their Homepage. I also tried to build my own crosscompiler development environment, but I faild, and so I gave up. (see ARM-linux-crosscompiler).

Be aware that, although you can get a binary version of the compiler, all libraries (like ncurses, readline etc.) need to be comiled from source. --Bello 09:22, 18 January 2008 (CET)


Where can I find the "ARM-Linux crosscompiler development environment"? on the TomTom-Homepage

  • Is there a website where I can download it? Yes
  • Is it free? Yes
  • Do I need Linux? Yes (cygwin may aswell do) -Thankyou. by TheFax-

Well, where is the problem? You are on a WIKI which mainly deals with this topic. OpenTom is(!) and includes a development environment.

Sorry but I don't see any kind of compiler in this WIKI... (am I inadvertent?)
I see only source file, but no compiler!
Can you paste here a link to a compiler that I can use for MAKE the source files? -by TheFax-

The sourcefiles mentioned, are the compiler. You have to compile the cross-compiler yourself. But this is a bit painful and can take many frustrating hours to succeed. Maybe what you want is a binary installation of the compiler+development environment (see above). You need the full development environment, there is no single-file-compiler. Thats why you need linux or some other UNIX-like OS or cygwin (if you want to use WINDOWS). --Bello 09:22, 18 January 2008 (CET)


Keyboard layout

The keyboard layout is close to the German layout. Here's a handy cheat sheet if you're not familiar with it. Use the AltGr key for the blue coloured keys. Made my life a lot easier! --Zerbey 20:23, 12 January 2008 (CET)

Starting with Version 1.10 there is an option to change the keyboard-layout (from ge) to us. You will have to execute TTconsole with the --keyboardlayout_en option. This can be done e.g. by modifying the TTconsole-wrapper script.

Wishes for next release

  • We can add one more Key to the keyboard, which one should we have?
  • Could we have it so that pressing the shift key shows the shift characters on the keyboard for the duration the shift key is triggered.
  • Maybe X.org Framebuffer? (what for? please explain --Bello 15:08, 11 January 2008 (CET))
  • A transparent keyboard?
  • Some sort of 3-state pin key to fix the keyboard?
 1st click = fix at the top, 2nd = fix at the bottom, 3rd = same behaviour as now, 1st click = ...
 With first and second you would only get 19 line display on TT ONE 3RD, but I prefer this to keyboard scrolling off. 
 Seems most of my typing right now goes into top-right corner (if not followed by 'clear' and 10 'ret'-s :)
  • Arrows to scroll the screen --20:26, 12 January 2008 (CET)
    • You mean Page up and down ?! (done in V.1.06) --Bello 21:36, 12 January 2008 (CET)
  • If one starts a program from the console which makes use of the touchscreen, there is an interference with TTconsole. The called program has the possibility to switch off the cut/paste feature of TTconsole, and instead it gets the touchscreenevents.(done in V.1.08) The keyboard may be switched off as well, but this is maybe not wanted. Maybe we can switch it off if it is hidden. (at the moment it still works even if its hidden).

One also can implement a settings menu (from the Key MENU on the keyboard) where such actions could be defined.

  • the madplay mp3 functionality is nice, but the volume is too high (always maximum). It would be nice to be able to adjust it (the navcore volume seems to be totally independent). madplay's "-a" or "--attenuate" command line options don't seem to work. Neither does aumix from the arm rpm packages mentioned (no mixer available).

Tips & Tricks

You can now use TTconsole as a wrapper to execute console applications:

#!/bin/sh
cd /mnt/sdcard
export PATH=$PATH:/mnt/sdcard/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/mnt/sdcard/lib
export HOME=/mnt/sdcard/

# use this, if you want a login-session:
# ./TTconsole/TTconsole --login /bin/login
# use this, if you want a normal shell:
# ./TTconsole/TTconsole

# use this, if you do want to directly enter pico (and not return to the shell prompt when pico finishes)
./TTconsole/TTconsole -c pico

TTconsole-wrapper

  • a shell.rc file should be excecuted (better: passed to the shell) at the beginning, so that one can configure the working directory, environment settings etc..

Comment: This is not necessary: A wrapper script (TTconsole-wrapper) does the job. It looks like:

#!/bin/sh

# Wrapper script for TTconsole (c) Markus Hoffmann 2008
# Change these values if you like 

#first do some settings like the PWD, HOME and PATH

cd /mnt/sdcard

export PATH=$PATH:/mnt/sdcard/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/mnt/sdcard/lib
export HOME=/mnt/sdcard/

# now start the console application

./TTconsole/TTconsole

Also here is the location for placing options like --keyboardlayout_en. The last line would look like:

./TTconsole/TTconsole --keyboardlayout_en

TomTom ONE XL

I've confirmed the TT Console works on the new TomTom ONE XL (4S00.000), running under golinux-tt2311. The screen size is detected correctly, and the keyboard occupies the upper right corner of the new widescreen. Screenshot soon. Thanks for a very useful piece of software! --Ka9mva 04:37, 4 March 2008 (CET)

TomTom ONE Europe

After installing TTConsole according to instructions, it appears in Menu, and it opens but fails to run. These messages are displayed. Aferwards touching the screeen returns to Menu:

IOERROR: error=2
There are no available ttys.
slavename=
ERROR spawning programme
Cannot Spawn shell! ERROR, QUIT

Device hard and soft versions (out of box):

  • TomTom ONEv4
  • Version: 6.560
  • Apl. 6.560 (7914/051211) SO:1713
  • GPS V1.21 Start 5.05
  • Hardware: TomTom ONE (400.005)

--Pacoriviere 20:12, 1 June 2008 (CEST)

Solved. Once updated the software on first TomTomHOME update, now console opens and I get a prompt without errors. Just a little thing: Keyboard draws over prompt, and some returns are necessary to be able to see what I'm typing. Exit command works as expected.

New working soft version:

  • Version: 7.162
  • Apl. 7.162 (8492/071121) SO:2327
  • GPS V1.21 Start 5.3026

--pacoriviere 00:07, 2 June 2008 (CEST)



Installing TTConsole according to instructions and the Icon appears in Menu but when trying to open nothing happens. Just returns to the nav-application. The the TTTracklog work application works fine. I have tried both the 1.10 and 1.11 version with same results. Can I view some error logs or something ?

Device (out of box):

  • TomTom ONEv6 ( TomTom ONE X)
  • Hardware: TomTom ONE (4N01.002.2)

Updated 2008-12-27 to latest version via the TomTom Home software. Joachim Osbeck

Answer: Hm, it looks like, with the newest Software update it does not work anymore. We hat this problems with the latest four firmware-releases... It may take awhile to find out what the reason is. (I myself do not upgrade the firmware, so I cannot find out without your help). First, find out which Soft-version nr. it is. On 8.3 it should work. (see above). It is possible to catch error messages. You need to modify the TTconsole-wrapper-script. Change

./TTconsole/TTconsole

to

 ./TTconsole/TTconsole > ./error-log.txt

This should produce error-log.txt, which you can analyze with a texteditor.



Thanks for response OK added it to the TTconsole-wrapper-script but no error-log.txt was created. Also added some echo and sleep events in the script but it seams that the wrapper script isn't executed at all ? Icon are there but nothing that I add to the script affects the behavoir when I try to start it ?

--Josen 11:29, 28 December 2008 (CET)

Eyesore on TomTom GO 730 T

Basically, the console works fine on the TomTom GO 730 T. But: The keyboard extends only over about two-thirds of the screen -- as in the screen shot under Small display bugs. In reality the screen is about 50% smaller than this image, though. As it is, the keyboard is almost unusable.

Same with the font size, way, way too small. I pondered checking out the source of TomTomConsole, in the hope of being able to fix this somehow, but the link is broken.

Then there's the suggestion to use screen. I've installed it, but now I've no idea what to do with it, as it comes with absolutely no word of advice. When I start it from the console, it lists a number of files and says that they exist. Then there's some error message at the bottom of the screen, which I can't read because it vanishes to fast. Something like "Could not write var/run/bla..."

Now, I assume that making the keyboard bigger/wider may be a bit of a hassle, but increasing the console's font size, now that can't be too much of a problem. Ideally, it should be possible to set it as a command line option or in a config file.
--SipSip 06:57, 2 July 2008 (CEST)

Sorry: Changing the screen Font is not that easy: You first have to compile a new font in. Then you need to write the new characker rendering routines. The source now is there. Give it a try. Every usfull extention is welcomend and will be included into the official source. --Bello

TomTom GO 700

Console executes properly on my GO 700. However, the display is rotated 90 degrees. The touchscreen registers input as though the screen wasn't rotated, so it's pretty difficult to actually do anything. Checking out the source to see if I come up with a fix.

Just bought this little guy from a coworker, and it's quite a pleasant surprise to find out that it runs on Linux.

Image:tomtom700_ttconsole.jpg


OK, lets solve this by addinc a commandline option --rotatets in Version 1.10

Check the resolution, if there's more height than width, rotate it. :) That happens on Classic, x00 and Rider, as far as I remember.

OK, but there is nearly no chance to rotate the graphics output. The simplest way is just to rotate the touchscreen coordinates if the touchscreen is not in sync with the display. At least we should make sure that the display and touchscreen has the same coordinates, which is obviously not the case here. --Bello 16:50, 17 September 2008 (CEST)

Menu Item?

I have a custom menu to enable Itinerary Planning that's normally disabled on the ONE 3rd Edition. Does anyone know the menu item line for TomTom Console so I can use Console and Itinerary Planning?

Thanks. -Kubel 03:57, 20 September 2008 (CEST)

it is TASK_SDK1 (see menu structure)

Personal tools