| Author |
Topic  |
|
mdeweerd
798 Posts |
Posted - 19 août 2008 : 21:26:16
|
| What is the NMEA string to use to download the code from the device ? |
 |
|
|
mdeweerd
798 Posts |
Posted - 19 août 2008 : 22:50:50
|
OK - found it myself - I used the Flashtool to download from my iblue 747.
From my quick observation of the protocol (some stuff is an educated guess): 1) The flash tool sends some stuff to the device to check if it is on and/or to reset itand then continuously 0xA0. The reset fails on the iblue 747, but I remember it worked on a Holux M241. 2) At some point we switch the device on. 3) The device responds. 4) The flash tool get the Flash type (it reports EN29LV400AB) in my case. 5) The flash tool sends the download agent. This is probably the code that takes care of the flashing. The device replies with the same data - probably to allow the flash tool to check that the download agent is transferred correctly. 6) The flash tool requests the memory content (start address, length) and the device reponds with the required data.
It looks like it is possible to use this tool (not holux specific) to download data to a device without valid ROM code. This must be done by using the flash tool with the device OFF. The start the flash procedure and switch the device on. |
 |
|
|
ProITM
11 Posts |
Posted - 20 août 2008 : 13:30:55
|
quote: Originally posted by Wictor
quote: Originally posted by ProITM
It is saved in the flash memory. It is the last chain from the first 256 bytes. If you made the read, and default length was set to 0x00000100 (in hex) is the last chain. Address from F8 to FD in reverse order, is the BT address.
How did you get this information? Do you happen to know what other bytes in this area define? I have compared two different M-1200 units with same FW and their only difference is the BT address. So no unit specific calibration data...
// Wictor
I read the flash of my Holux M1000, then open the file and search for BT address. After that compared with the firmware file. I think the rest of 256 bytes are firmware specific data. I don't think other specific info than BT is saved at firmware. Mine have a small button cell battery, I think it is for retain some kind of cmos data like last position, or sattelites info. |
 |
|
|
ProITM
11 Posts |
Posted - 20 août 2008 : 13:36:57
|
quote: Originally posted by mdeweerd
This must be done by using the flash tool with the device OFF. The start the flash procedure and switch the device on.
Did you try this with Holux flashtool, start flash and turn On device? |
 |
|
|
Wictor
Finland
14 Posts |
Posted - 20 août 2008 : 16:51:26
|
quote: Originally posted by mdeweerd
It looks like it is possible to use this tool (not holux specific) to download data to a device without valid ROM code. This must be done by using the flash tool with the device OFF. The start the flash procedure and switch the device on.
After my Holux died, I tried to start the upgrade with the device on and also device off multiple times. Flashtool always reports that it didn't receive boot start or something like that.
Normally these kind of devices have so called boot loader in flash memory that communicates with the SW(Flashtool etc.) that provides the new binary. If this boot loader is corrupted, there is usually no way to perform upgrade with SW tools, because device is not able to communicate. Some processors have boot loader that is hard coded into processor core and it is able to load the FW unless the HW is busted.
I can try to get some serial communication logs or scope traces with my dead device to see if it's sending anything after powering it.
// Wictor |
 |
|
|
Wictor
Finland
14 Posts |
Posted - 20 août 2008 : 18:25:43
|
Hi,
I managed to get my "dead" Holux M-1200 to communicate with Flashtool. I also managed to flash the FW again and now I have my Holux working again with new FW.
I tried to download FW so that my device was off and then clicked the download button. Then new window opens and tells you to reset device and hit go button. I turned Holux on and then hit go button, but no success. I tried this several times. Then I opened my serial port monitor program and tried again the download with same sequence as before. Holux started to communicate and FW was updated.
Before FW update I tried to do the read back with flashtool. It worked also with this serial port monitor, so I have "corrupted" flash image that made my device non operational. I did quick check and this image clearly shows that the flash was not empty. I need to check it more thoroughly to see if there is some checksum that fails. My feeling is that something at the beginning of the binary image defines checksum, because last thing that I did before corruption was edition of the first 256 bytes. EDIT: I checked the corrupted image and flash was erased from 0x100 to 0x3FFF. This means that sector size of the flash is 16kB.
It might be that this serial monitor has nothing to do with successful connection, but it was just coincidence that timings were right and I managed to start the device and download at the correct time window. I'll do more tests after some time... Now I need to go and service my car.
// Wictor |
Edited by - Wictor on 20 août 2008 20:06:13 |
 |
|
|
mdeweerd
798 Posts |
Posted - 20 août 2008 : 18:50:20
|
Good news - so it looks like finally there is an internal boot code in the device and the flash is probably external to the main chip, but in the same package. I've noticed that timing is indeed somewhat important.
To be sure to download the entire rom image, one must get 0x80000 bytes. |
 |
|
|
VeryBerry
USA
2 Posts |
Posted - 27 août 2008 : 06:53:44
|
Hey all. New to this site and am finding a lot of the info on this site very useful. I wanted to see if you guys could help me out with my Holux M-1200. It has been working great for months but just recently I started having a problem. I can't get any bluetooth devices to discover the Holux. The bluetooth light blinks (along with the orange for the satellites) but no go. I've tried multiple blackberry phones and computers but none of them discover it. I just upgraded the firmware (B-core_1.20 000C) on it according to the above post but still the same. I can connect with the data cable and it seems to track the satellites just fine. I was thinking maybe somehow the bluetooth address got screwed up? I hope you guys can help cause I do miss using it with my phone. |
 |
|
|
scsb
Hungary
1 Posts |
Posted - 27 août 2008 : 10:41:42
|
| What are the experiences with the new firmware? Does it improve anything? |
 |
|
|
Wictor
Finland
14 Posts |
Posted - 27 août 2008 : 11:31:17
|
quote: Originally posted by VeryBerry I was thinking maybe somehow the bluetooth address got screwed up? I hope you guys can help cause I do miss using it with my phone.
Hi!
When I flashed my Holux M-1200, BT address was reseted to FF:FF:FF:FF:FF:FF. But still the BT was working and I could discover the unit with PC and my Palm TX. But if your BT problems started before FW flashing, it must be something else than just the address that's causing problems. Maybe your Holux BT antenna is busted.
// Wictor |
 |
|
|
VeryBerry
USA
2 Posts |
Posted - 27 août 2008 : 23:28:32
|
| Thanks Wictor! Thats the other thing I thought it might have been. Although I had it opened I didn't know which/where it is. I'm in the process of contacting them for repair/replacement. Not sure what could have caused it but it makes me weary of buying other Holux products. |
 |
|
|
Wictor
Finland
14 Posts |
Posted - 28 août 2008 : 09:26:59
|
Please check page 3 of this thread and see my post with two images of the Holux M-1200 PCB. You can see BT antenna in the first image. It's located in the lower right corner. You can see the text BTANT1 and white component below it. Check the soldering of that component just in case.
//Wictor |
 |
|
|
Edvardas
2 Posts |
Posted - 28 août 2008 : 10:50:39
|
I upgraded firmware from B-core 1.0 0013 to 1.2 version. BT address modified with HEX editor. Work fine (Low Speed bug disabled). Firmware marked 01016-00B number it is device P/N labeled number? Modify to correct my device P/N number or not? |
 |
|
|
ProITM
11 Posts |
Posted - 28 août 2008 : 13:41:33
|
quote: Originally posted by Edvardas
Firmware marked 01016-00B number it is device P/N labeled number? Modify to correct my device P/N number or not?
I think it's just a string. Holux it's using its own firmware naming. In the table you can see that as product model with firm M2.02 B1.20_02
Modify just BT address. |
 |
|
|
ProITM
11 Posts |
Posted - 28 août 2008 : 13:43:55
|
quote: Originally posted by scsb
What are the experiences with the new firmware? Does it improve anything?
In the firmware table said "modify walking drift issue" |
 |
|
Topic  |
|