Help - Search - Members - Calendar
Full Version: Working Tomtom Nav On Angstrom
OESF Forums > General Forums > General Support and Discussion > General Discussion
Pages: 1, 2, 3
speculatrix
OK, the good news is that we're fairly close to being able to release something which contains NO tomtom files and therefore won't result in us having our dangly bits chopped off by TomTom!!

There are just a few things to clear up:
1/ whether we should expect the zaurus owner to also have a linux box - this affects whether we can rely on them to extract the tomtom files themselves or have to do it all on the zaurus
(see http://www.opentom.org/Ttimgextract)

2/ whether the typical zomtom user will be running a 3x00 or 1000 - to set the default behaviour


My Z isn't quite working yet, problem with map setup, but I have made a video and will present it as soon as it's rendered to something suitable.

---EDIT---EDIT2---
OK, I was pretty tired and waffled way too much, but it too so long to get here I just wanted to share it! Remove the .zip file extension, the forum wouldn't allow me to upload it as a .avi
Click to view attachment
portalgod
QUOTE(speculatrix @ Jun 27 2007, 04:07 PM)
OK, the good news is that we're fairly close to being able to release something which contains NO tomtom files and therefore won't result in us having our dangly bits chopped off by TomTom!!

There are just a few things to clear up:
1/ whether we should expect the zaurus owner to also have a linux box - this affects whether we can rely on them to extract the tomtom files themselves or have to do it all on the zaurus
(see http://www.opentom.org/Ttimgextract)

2/ whether the typical zomtom user will be running a 3x00 or 1000 - to set the default behaviour


My Z isn't quite working yet, problem with map setup, but I have made a video and will present it as soon as it's rendered to something suitable.
*


1) My suggestion is to assume Linux machine ownership. Otherwise, where would the knowledge to fiddle with Linux on the Z come from? (Mind you this comment is coming from me, a person who has no Linux boxen as of the present, but has extensively ran Linux in the past)

2) MY suggestion is to assume 1000 default behaviour. 3x00 owners can always fiddle with mountpoints and such to point to HDD vs memory cards vs internal memory. And that is not just becuase I own a 1000 smile.gif
speculatrix
Well, I am in a stunned state. After more hours of playing, I got it working on my C3100. Boy, stuff really runs slowly using strace, doesn't it? My problem with the maps turned out to be that tomtom relied on the memory card being FAT16 and thus file name case insensitive, but I'd copied files to HDD; even when I made an sdcard copy to a fresh sdcard the filenames were still wrong for some reason.

So, strace + grep ENOENT and also strings on the binary... and it works. Such a thrill to see it have the map of my house on the Zaurus, and plot a route to a friends house. It seems to run at about half the speed of the tomtom 510.

OK, so, by now you're desperate, yes?

What are you going to need?
1/ any kind of GPS that the zaurus can read - serial, usb, bluetooth - so long as its NMEA, as you simply hack a link from /dev/gpsdata to /dev/rfcomm0 or whatever
2/ a copy of *YOUR* memory card from a GO300 or 500. the product code and activation key for the maps. WE WILL NOT BE SUPPLYING ANY TOMTOM FILES, CODES OR KEYS. Please don't ask. I believe that the codes for the Palm and PocketPC versions would probably work too.
3/ a Zaurus running Angstrom - I think this would even work on an old 5000/5500 series as the Zaurus drops down into 320x240 display mode.
4/ the ttimgextract program from opentom (I can provide an x86 binary if anyone needs it) to split the ttsystem file from the memory card, cpio to unpack the file system

Then, you simply unpack Rick's package, copy over the files extracted from ttsystem, edit the start script with your GO's unique ID, and run it.

I will discuss with Rick some tweaks to the start script before we can release the package.
portalgod
QUOTE(speculatrix @ Jun 29 2007, 04:57 PM)
Well, I am in a stunned state. After more hours of playing, I got it working on my C3100. Boy, stuff really runs slowly using strace, doesn't it? My problem with the maps turned out to be that tomtom relied on the memory card being FAT16 and thus file name case insensitive, but I'd copied files to HDD; even when I made an sdcard copy to a fresh sdcard the filenames were still wrong for some reason.

So, strace + grep ENOENT and also strings on the binary... and it works. Such a thrill to see it have the map of my house on the Zaurus, and plot a route to a friends house. It seems to run at about half the speed of the tomtom 510.

OK, so, by now you're desperate, yes?

What are you going to need?
1/ any kind of GPS that the zaurus can read - serial, usb, bluetooth - so long as its NMEA, as you simply hack a link from /dev/gpsdata to /dev/rfcomm0 or whatever
2/ a copy of  *YOUR* memory card from a GO300 or 500. the product code and activation key for the maps. WE WILL NOT BE SUPPLYING ANY TOMTOM FILES, CODES OR KEYS. Please don't ask. I believe that the codes for the Palm and PocketPC versions would probably work too.
3/ a Zaurus running Angstrom - I think this would even work on an old 5000/5500 series as the Zaurus drops down into 320x240 display mode.
4/ the ttimgextract program from opentom (I can provide an x86 binary if anyone needs it) to split the ttsystem file from the memory card, cpio to unpack the file system

Then, you simply unpack Rick's package, copy over the files extracted from ttsystem, edit the start script with your GO's unique ID, and run it.

I will discuss with Rick some tweaks to the start script before we can release the package.
*


How does a TT500 run (speed wise) in comparison to a TT300. My assumption is it's th same.

Overclock your Z a bit and it'll probably run as fast as a TT.
speculatrix
QUOTE(portalgod @ Jul 18 2007, 06:39 PM)
How does a TT500 run (speed wise) in comparison to a TT300.  My assumption is it's th same. 

Overclock your Z a bit and it'll probably run as fast as a TT.
*


I have both a TTG300 (which broke in a car crash, and whose license I have "ported" to the Zaurus) and a TTG500. Although I didn't have them back to back the 500 was definitely snappier, maybe 30% faster - the specs on www.opentom.org back that up.

When I first had a Go, it ran tomtom 5, but (and it's one of the advantages of getting the appliance rather than the palm or pocketpc software packs) it got a free upgrade to 6.1x using tomtom's desktop software "tomtomhome" to update it.

BTW, the "tomtom home" recognises the tomtom software on both the Go (it emulates a mass storage device when connected) an d also if you simply insert the memory card into the PC's card reader!

So far I have not had a response from my contact at TomTom, so I will try someone else. Yes, I am scared.
e.stoiber
any updates on the how-to yet ???
speculatrix
QUOTE(e.stoiber @ Oct 15 2007, 10:33 PM) *
any updates on the how-to yet ???


I guess I am going to go ahead and publish the toolkit seeing as how I've had no feedback from TomTom (I hope they're not sitting in wait).. I need to make a couple of minor fixes and tests, but no promises it will be this week as I am snowed under at work
e.stoiber
good to hear you,......

Since you don't circumvent any copyprotection, i don't see what they could do,....
I guess anyway they make their most income from the services they sell (Maps, Add-ons,...)
The Device should only be for convinience.

rasva
Still nothing? sad.gif
pelrun
Speculatrix, you're killing me with the wait here ;D

Any idea when you might get time to work on a release?
DonYouAn
I would be happy if there would be a possibility to get a TomTom-Nav on the Zaurus. I use the TomTom Rider with my motorcycle an I must say, that I like this little helper. So I'm courious about the ipk release. Hopefully it will come soon.

Regards
DonYouAn
nilch
I guess you can catch Speculatrix here.
He seems to be more interested in his new toy tongue.gif
speculatrix
QUOTE(nilch @ Dec 18 2007, 10:11 PM) *
I guess you can catch Speculatrix here.
He seems to be more interested in his new toy tongue.gif


actually, I'm hoping to play with getting tomtom working on the n800 too. problem is that between work and domestic duties I don't get free time in large blocks, and I need, probably, a whole day to make zomtom a relatively painless install. with angstrom being a rapidly moving target, no sooner do I do an ipkg update/upgrade then I find myself having to test and tweak. That said, now they're trying to go for an official release, I am aiming to set aside some time to start with a freshly clean zaurus + angstrom release and write the tomtom setup/startup scripts.
espi
Here's my vote to get this released even in a buggy state!
jocasmi
So do I :- )
speculatrix
good news! I have managed to contact someone at TomTom who seems positive about the idea, has heard of the Zaurus and will ask someone in authority about it!
speculatrix
unfortunately my contact at TomTom has gone very quiet (not someone I knew particularly well) - hasn't responded to a couple of emails.

meanwhile, I have tried out the latest Go300 software, v 7.9 with Cortez's ZUbuntu, and I'm sad to say it doesn't want to run at all, I think it's something to do with the format of the binaries. I'll dig out an old version and see. Shame, because I'd put in a lot of effort to write an automated install/setup/starter program dry.gif which was coming together nicely, it might mean having to run angstrom. I'll let you know.

--edit--
hmm, no, an old version of "ttn" doesn't want to run either. I am not sure I actually understand what the problem is! My hunch is that Cortez's kernel is missing something that allows it to recognise the ttn binary.

/tmp# uname -a
Linux cool 2.6.26-omegamoon-spitz #1 PREEMPT Mon Dec 29 23:14:05 CET 2008 armv5tel GNU/Linux

/tmp# file ttn
ttn: ELF 32-bit LSB executable, ARM, version 1, for GNU/Linux 2.4.0, dynamically linked (uses shared libs), stripped

/tmp# ./ttn
-bash: ./ttn: No such file or directory

/tmp# file /bin/bash
/bin/bash: ELF 32-bit LSB executable, ARM, version 1 (SYSV), for GNU/Linux 2.6.14, dynamically linked(uses shared libs), stripped

/tmp# strace ./ttn
execve("./ttn", ["./ttn"], [/* 15 vars */]) = -1 ENOENT (No such file or directory)
dup(2) = 3
fcntl64(3, F_GETFL) = 0x2 (flags O_RDWR)
fstat64(3, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4001f000
_llseek(3, 0, 0xbea575b8, SEEK_CUR) = -1 ESPIPE (Illegal seek)
write(3, "strace: exec: No such file or di"..., 40strace: exec: No such file or directory
) = 40
close(3) = 0
munmap(0x4001f000, 4096) = 0
exit_group(1) = ?
Process 5024 detached


--edit2--
I get the same error when I try and run any of the tomtom binaries on my tablet. :-(
Is there anyone running a fresh release of angstrom who'd be willing to try something for me, I don't really want to b0rk my zaurus just as it's got stable with zubuntu. PM me please.
pelrun
Does the zubuntu kernel have OABI compatibility switched on?
speculatrix
lack of OABI was suggested by someone else, so I am going to ask Cortez if he can produce a kernel for me with both EABI and OABI turned on.

still no comment from my contact at TomTom, which makes me wonder what the hell is going on.

it's annoying 'cos I spent a while writing a complex setup/config/runtime wrapper, and Rick says he has got sound working.

--edit-- sadly there doesn't seem to be anyone on the ubuntu forum who can roll an OABI kernel for me. whilst we run ubuntu on some servers at work, I'm nowhere near having a zubuntu development environment up and running.
risc
I'm quite close to a full running navcore at my Z.
Using Debian 5.0 with 2.6.24.4 and chroot environment.
Have my own fullfeatured busybox, strace, strings a.s.o for debugging + faked procfs and modified /dev
Everything works fine incl. FB and TS, except maps. NO MAPS FOUND!
They are at correct location and ttn finds them incl. dct

...
open("/mnt/sdcard/Western_and_Central_Europe/", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 10
...
stat64("/mnt/sdcard/Western_and_Central_Europe/Western_and_Central_Europe-9.meta.dct", {st_mode=S_IFREG|0755, st_size=132, ...}) = 0
...


I assume it blames on DeviceUniqueID, which is going to be calculated in some way.
Both of my ONE and my Z are different.
You mentioned changing DeviceID some posts before. I have no idea where to start.
Any trick?
speculatrix
Hi,
here's a bit of my setup script (and no, the guy from tomtom has remained invisible now). my chroot'd environment is in /home/tomtom. None of the following is secret and has been revealed by opentom project.

CODE
TTPROC="/home/tomtom/proc/barcelona"
mkdir -p $TTPROC
echo -n "1" > $TTPROC/battery
echo -n "0" > $TTPROC/bluetooth
echo -n "1" > $TTPROC/cputype
echo -n "0" > $TTPROC/gyro
echo -n "0" > $TTPROC/harddisk
echo -n "0" > $TTPROC/lightsensor
echo -n "0" > $TTPROC/lowbutton
echo -n "TomTom GO 500" > $TTPROC/modelename
echo -n "2" > $TTPROC/modelid
echo -n "0" > $TTPROC/remote
echo -n "0" > $TTPROC/sdcard
echo -n "GO 500" > $TTPROC/shortname
echo -n "2" > $TTPROC/tfttype
echo -n "0" > $TTPROC/tsfets
TTFLASH="/home/tomtom/mnt/flash"
mkdir -p $TTFLASH/sysfile
echo -n "4.28000000000000" > $TTFLASH/sysfile/bootver
echo -n $TTSERIAL > $TTFLASH/sysfile/id
TTDEV="/home/tomtom/dev"
rm $TTDEV/hwstatus
mknod $TTDEV/hwstatus p
rm $TTDEV/barc-snd
rm $TTDEV/acc
touch $TTDEV/acc
rm $TTDEV/ts
mknod $TTDEV/ts p

futaris
This should also work on an Android device in a chroot, right?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2014 Invision Power Services, Inc.