Talk:TomTom Console
From OpenTom
TTconsole works with following Navcore Versions
| Navcore Version | TTconsole | ||||||
|---|---|---|---|---|---|---|---|
| 1.09 | 1.10 | 1.11 | 1.12 | ||||
| 6.560 | NO, see psydoterminal bug | ||||||
| 7.162 | YES | not tested | |||||
| 7.901 | not tested | YES | not tested | ||||
| 8.010 | not tested | YES, see icon bug. | YES | not tested | |||
| 8.2 | NO | seems YES | YES | not tested | |||
| 8.3 | NO | YES | not tested | ||||
| 8.350 | not tested | partly, see flicker bug | not tested | ||||
| 8.351 (GO x20/x30/x40) | not tested | partly, see flicker bug | not tested | ||||
| 8.410 (One IQ/XL IQ) | not tested | not tested | |||||
| 8.412 beta (normally for One IQ/XL IQ) | not tested | YES | not tested | ||||
| 8.413 beta (normally for One IQ/XL IQ) | not tested | YES | not tested | ||||
| 9.001 (GO x50) | partly, see flicker bug | not tested | |||||
| 9.004 | partly, see flicker bug | not tested | |||||
| 9.022 (GO x50/One IQ/XL IQ) | partly, see flicker bug | not tested | |||||
| 9.024 (GO x50/One IQ) | partly, see flicker bug | not tested | |||||
| 9.025 (GO x50/One IQ/XL IQ) | partly, see flicker bug | not tested | |||||
| 9.026 (GO x50/One IQ/XL IQ) | partly, see flicker bug | not tested | |||||
Features of TTconsole
| Feature | TTconsole 1.09 | TTconsole 1.10 | TTconsole 1.11 | TTconsole 1.12 |
|---|---|---|---|---|
| english keyboard layout as option | NO | sort of | YES | YES |
| transparent keyboard | NO | NO | NO | NO |
| option to rotate the touchscreen coordinates | NO | YES, offset bug. | YES | YES |
| option to rotate the whole screen | NO | NO | NO | NO |
| optional bigger font | NO | NO | NO | NO |
| extended character set | NO | NO | NO | NO |
| big/wide keyboard option | NO | NO | NO | NO |
| flicker bug solved | NO | NO | NO | not tested |
Known bugs
Installation: Icon bug?
Q: 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?
A: This is not a TTConsole bug. It comes from the customized menu and seems to be normal/unavoidable.
Q: I have tried to install TTconsole on my tomtom one xl. from what I understand is to copy the folders SDKRegistry and TTconsole into the root of my tomtom device. If I do that i have no icon for TTconsole anywhere on my tomtom. Here the version information for my tomtom:
App: 8.010 (9369/080529) OS: 190943 GPS v1.21 Boot 5.3026
A: Did you take a look at http://www.ilpiola.it/roberto/tomtom/navcore8.asp ?
Screen Bug
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). Although the keyboard scrolls off, you can tap the screen where they used to be. If you want a scroll a 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 character output (because it potentially 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 switching it off after explicitly having pressed the hide button would be possible. I'll 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)
Psydoterminal Bug
This bug does only appear with Navcore firmware versions < 7.xxx
- BUG: I have installed your tomtom console on my TonTom ONE V2 (soft in 6.56). 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
--marvalou 20:44, 14 January 2008 (CET)
- A:
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 likely 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.
Here is my system configuration: TomTom ONE V3 Soft Version 7.162
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. A Software update from TomTom (with the regular update procedure) will help. 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:
/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.
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)
Keyboard doesn't hide properly or is in the way
(Tested on a TomTom ONE 130 navcore 8.010) When I clear the screen with:
clear
And then I start typing a command, what I write is writing over the keyboard and each time I type a new letter it hides what I already typed (as, I guess, it needs to draw the keyboard again). So you can only see a letter at once.
This seems to be a "WON'T FIX" bug to me. But it's necessary to report it anyway. --Weboide 12:18, 9 January 2009 (CET)
flicker bug, TTConsole is hidden behind TomTom menu
I've got a TomTom 720 with software version 8.35. When I run TTConsole, it is instantly overdrawn by the TomTom menu. I can press any button on the main menu, and the button command seems to also go through to TTConsole. One button press and the TomTom menu registers the press and also TTconsole (not visible) registers the press. When I press and drag my finger on the screen, the screen flickers back and forth between a highlighting on TTConsole and the TomTom Main Menu. I can't really see what is on the main menu, but I do see some small red text flicker every time I touch the screen. Sometimes I get some weird graphical glitches and lots of flickering as it seems to switch back and forth between the TomTom Main Menu and the TTConsole so fast that I can't see either well. --Sidicas 03:02, 14 May 2009 (CEST)
Answer: This is not a bug of TTconsole. Navcore version 8.350 shows this bug with all plugins. Unfortunately I have no solution for this behaviour. Avoid to use this Navcore Version.
WORKAROUD 1:
There is another idea: one can suspend the navigation process during runtime of the TTconsole. This can be done in the TTconsole-wrapper with
kill -STOP `pidof ttn`
after Ttconsole has finished, one can resume it with
kill -CONT `pidof ttn`
Could someone please test this on a device with the flicker-bug? Thanks --Bello 23:19, 17 December 2009 (CET)
RESULT: TomTom Go 950 App 9.001 OS:366544: Stopping and resuming ttn: The flicker bug disappears for few seconds, then the device reboots.
Comment: Hm, looks like, a watchdog has to be triggered. Any ideas how? Has someone tried to use the dogfeed program (see watchdog.) Is this still up to date? --Bello 00:19, 8 January 2010 (CET)
part. SOLUTION: The method describen in the capter Running TTconsole at System boot-up (see below) works!
SOLUTION: do following:
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 distro, it will fail. dynamically linking to .so files will work, but the library must not use floatingpoint operations (instead it should use floating foint simulation, also called soft-float). --Bello 09:45, 18 January 2008 (CET)
Screenshots
Can anybody put some nice representative screenshots here? (Preferably from different devices/Screensizes)?!
TTconsole with X11-Basic running |
Here pico is running (with my ttn file) |
||
This is the applications menu (with a customized Tomtom.mnu file). |
This is a screenshot directly taken from the framebuffer and then converted to png. |
This is a picture of TomTom running xearth. |
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 compiled from source. --Bello 09:22, 18 January 2008 (CET)
Q: Where can I find the "ARM-Linux crosscompiler development environment"?
A: 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.
- 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.
Tips & Tricks
You can 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
Installation
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..
A: 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
Running TTconsole at System boot-up
You can make the Tomtom boot directly into Ttconsole, without starting the navigation application after a reset of the device. The flicker bug should not show up in this case.
This can be done by modifying the file ttn with a texteditor. Mine looks like:
cd /mnt/sdcard export PATH=$PATH:/mnt/sdcard/bin export HOME=/mnt/sdcard/ # now start the console application ./TTconsole/TTconsole # after TTconsole has finished, start the navigation application.... ttn &
This blocks the use of the ttn file by other apps.
Instead, you can put and remove it whilst keeping a backup of any existing ttn file. name this ttn-TTconsole
#!/bin/sh # ttn file to get TTconsole loaded at startup and thus avoid the flicker bug. # cd /mnt/sdcard export PATH=$PATH:/mnt/sdcard/bin export HOME=/mnt/sdcard/ # Now start the console application ./TTconsole/TTconsole # After TTconsole has finished, start the navigation application.... ttn & # Remove our custom ttn to get things bootting clean on the next reboot. rm /mnt/sdcard/ttn #If we had backupped a ttn file from other app, put it back. if [ -f /mnt/sdcard/ttn_backed_by_TTconsole-wrapper ] then mv /mnt/sdcard/ttn_backed_by_TTconsole-wrapper /mnt/sdcard/ttn fi sync
Then modify TTconsole/TTconsole-wrapper to look like this:
#!/bin/sh # Wrapper script for TTconsole (c) Markus Hoffmann 2008 # Change these values if you like # Modified by Pere Pujal 2010 #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/ # Backup of ttn file if existing if [ -f /mnt/sdcard/ttn ] then mv /mnt/sdcard/ttn /mnt/sdcard/ttn_backed_by_TTconsole-wrapper fi # Copying ttn_TTconsole to get started cp /mnt/sdcard/ttn_TTconsole /mnt/sdcard/ttn sync # Reboot whith our custom ttn /sbin/reboot
This should boot into TTconsole only when taping the icon, not at each startup -- Pere Pujal 2010-01-08
TomTom ONE XL
I've confirmed the TTConsole 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. --Ka9mva 04:37, 4 March 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.
OK, lets solve this by adding a commandline option --rotatets in Version 1.10. Unfortunately the keyboard will not fit completely on the screen. There are two options: Either sqeeze the keyboard, or rotate the whole screen. Non of these options are realized so far. I am thinking of it.
Check the resolution, if there's more height than width, rotate it. :) That happens on Classic, x00 and Rider, as far as I remember.
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?
Q: 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)
A: it is TASK_SDK1 (see menu structure)
General application launcher for NavCore 9.x
This is a fix to the flicker bug.
Hello, I made a general application launcher for ttn 9.x. It setup the framebuffer and refresh the watchdog in the background. This code makes TTconsole works on my GO 950 Appl. 9.001.
#include <fcntl.h>
#include <sys/ioctl.h>
#include <linux/fb.h>
void fb_zero(int y)
{
struct fb_var_screeninfo fb_var={0};
int fb=open("/dev/fb", O_RDWR);
ioctl(fb,FBIOGET_VSCREENINFO,&fb_var);
fb_var.xoffset = 0;
fb_var.yoffset = y;
ioctl(fb,FBIOPAN_DISPLAY,&fb_var);
close(fb);
}
int main(int argc, char *argv[])
{
int c;
int fd = open("/dev/watchdog", O_RDWR|O_EXCL);
fb_zero(0);
for(c=0; c<10 && fd<0; c++) {
sleep(1);
fd = open("/dev/watchdog", O_RDWR|O_EXCL);
}
if(fork()) {
for(;;) {
sleep(1);
write(fd, "o", 1);
}
} else {
close(0);
close(1);
close(2);
close(fd);
fd=open("/dev/null", O_RDWR);
dup2(fd, 0);
dup2(fd, 1);
dup2(fd, 2);
if(fd>2) close(fd);
system(argv[1]);
system("/bin/ttn");
}
return 0;
}
Save the code as start9.c and compile with
arm-linux-gcc start9.c -o start9
However you need to kill the main ttn application, so you should use a shell script like this:
killall -9 ttn start9 ./TTconsole/TTconsole
Now I need your help! I made a program that lets TomTom to start navigate automatically to an arbitrary destination. That program use the SDK file interface with the string NavigateToCoordinates. As you know the program works until ttn versions prior to 9.x. Do you know some kind of solution to this problem, any idea? I could buy some SDK license if necessary, but it seems they aren't available any more. --Brutto 11:36, 8 February 2010 (CET)
Bello: Hm, If you run TTconsole before ttn, there has not been a problem with the watchdog at least on my device (Navcore 7). Can you confirm, that particularly this has changed with NC9? The other thing, panning the framebuffer to position 0 has not been necessary, but this could be included into TTconsole, if this is the only problem with NCv9. But I want to do this only if it is really necessay! feeding the dog, can then be done in the Wrapper-script (called dogfeed) if necessary.
#!/bin/sh sleep 2 while pidof TTconsole ; do echo "0" > /dev/watchdog sleep 2 done
the in the TTconsole-wrapper you can add
killall -9 ttn dogfeed & ./TTconsole/TTconsole ttn &
or even better
kill -STOP `pidof ttn` dogfeed & ./TTconsole/TTconsole kill -CONT `pidof ttn`
Thanks for your work!
- The need for panning the framebuffer to position 0 exists only if I want to run the TTconsole by the SDKRegistry/TTconsole.cap extension to the menĂ¹. If I create the
/mnt/sdcard/ttnfile as follows, with my GO 950, there's no need for usingstart9, nor feeding the dog. --Brutto 14:44, 8 February 2010 (CET)
#!/bin/sh /mnt/sdcard/TTconsole/TTconsole
- On the other hand, if you want to run TTconsole from the menĂ¹, stopping ttn and feeding the dog is not enough. The black screen of TTconsole doesn't appear until you set framebuffer to position 0. --Brutto 15:10, 8 February 2010 (CET)
Bello: OK, I created a new version of TTconsole (V.1.12). The changes should now be included. Could you please verify, that it works as desired? Tank you very much
- I've tested TTconsole 1.12. The black screen now appears and you can digit some commands, but the dog wont be feeded, in a few seconds the TomTom resets. Seems the navcore keeps /dev/watchdog opened in exclusive mode. The partial output of
"strace dogfeed"follows:
open("/dev/watchdog", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = -1 EBUSY (Device or resource busy)
--Brutto 10:42, 9 February 2010 (CET)
Bello:OH, then I only see that one must kill ttn, feed the dog and later restart ttn. Maybe one could try to completely deactivate the watchdog at boot time by deleting /dev/watchdog and replacing it by a regular file. Or one will have to overload the open() syscall using LD_PRELOAD, and catching the syscall, modifying it, so that the lock flag is cleared. Hm. Any other ideas? What abount strace /bin/ttn ?


