Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Openambit stopped working with Suunto Firmware 2.0.9 #42

Closed
pgastinger opened this issue May 20, 2014 · 11 comments
Closed

Openambit stopped working with Suunto Firmware 2.0.9 #42

pgastinger opened this issue May 20, 2014 · 11 comments
Milestone

Comments

@pgastinger
Copy link

Hi,

I have been using Openambit for the last couple of weeks and it basically worked. I updated my Suunto Ambit 2S-Firmware to 2.0.9 yesterday and since then, my watch says "Please update Moveslink".
I tried to delete my .openambit-directory but it didn't help. My guess is that Suunto changed something or implemented further checking.
Is there any fix for that? Thank you!

best regards,
Peter

@paddy-hack
Copy link
Contributor

Souds like Moveslink sends its version to the watch. Can you provide a USBPcap of a sync with Moveslink together with the output.log file in the Moveslink2 folder? What version does your copy of Moveslink advertise?

There are four hard-coded bytes of send_data in device_info_get() in src/libambit/libambit.c that I suspect of being some version number. They match the Komposti version that is in output.log of a USBPcap for my (still unsupported) "ancient" Ambit (firmware version 2.0.6).

@pgastinger
Copy link
Author

Hi,

Yes, i attached the output.log file and the usbpcap-dump. There is a line
with Komposti v1.8.1 in the output.log-File, but this number didn't change
(if compared with an older output.log).

If I can assist in any way, please don't hesitate to ask!

thanks and best regards,
Peter

On Wed, May 21, 2014 at 1:48 PM, Olaf Meeuwissen
[email protected]:

Souds like Moveslink sends its version to the watch. Can you provide a
USBPcap of a sync with Moveslink together with the output.log file in the
Moveslink2 folder? What version does your copy of Moveslink advertise?

There are four hard-coded bytes of send_data in device_info_get() in
src/libambit/libambit.c that I suspect of being some version number. They
match the Komposti version that is in output.log of a USBPcap for my
(still unsupported) "ancient" Ambit (firmware version 2.0.6).


Reply to this email directly or view it on GitHubhttps://github.com//issues/42#issuecomment-43744310
.

@paddy-hack
Copy link
Contributor

Care to tell me where those attachments are?
BTW, I just found out that GitHub issue attachment support, eh, sucks.

WRT to the Komposti version not changing, that's not unexpected if your Ambit works fine with the MovesLink on your Windows machine. It's the version that libambit is sending to your Ambit that makes it display that error message.
BTW, my logs have Komposti v1.7.17 and were only taken 2014-04-05.

@pgastinger
Copy link
Author

oh, sorry, I have never used Github, so I thought sending an email with
attachments would update the issue and add the attachments. Obviously, I
was wrong, so here are the attachments:
usbpcap-file:
https://docs.google.com/file/d/0BwdYV5Di0mUkNldKcWxOM2RWZzQ
output.log-file:
https://drive.google.com/file/d/0BwdYV5Di0mUkOUxxMUdZQkZuTlk

On Thu, May 22, 2014 at 1:13 PM, Olaf Meeuwissen
[email protected]:

Care to tell me where those attachments are?
BTW, I just found out that GitHub issue attachment support, eh, sucks.

WRT to the Komposti version not changing, that's not unexpected if your
Ambit works fine with the MovesLink on your Windows machine. It's the
version that libambit is sending to your Ambit that makes it display that
error message.
BTW, my logs have Komposti v1.7.17 and were only taken 2014-04-05.


Reply to this email directly or view it on GitHubhttps://github.com//issues/42#issuecomment-43874669
.

@paddy-hack
Copy link
Contributor

Thanks!

A quick look at the capture and the log seems to confirm that the send_data bytes are indeed the Komposti version. However there is quite a bit of I/O in your capture that still needs reverse engineering. At this point I would not recommend just changing the send_data bytes in the openambit code. The capture shows that Moveslink is sending your watch some data and until we know what that data is and does making rash changes in the openambit and giving that a try might make your watch unusable.

@svenstorp
Copy link
Contributor

@pgastinger, thank you for taking the risk, I haven't dared to upgrade until I got your pcap-dump :)

It seems quite safe to just change the "komposti-version" in the communication. Since openambit is not capable of writing any data other than the orbit data yet, the chances that we mess something up are quite slim. However, the day we start implementing writes, we need to have those major version bumps in mind!

@svenstorp svenstorp added this to the 0.3 milestone May 27, 2014
@pgastinger
Copy link
Author

To be honest, I was not aware of any risks. I read the Suunto changelog for
2.0.9 and thought it was just a bugfix version. I did not expect Suunto to
change anything and break the openambit syncability 😢
Anyway, I am glad my pcap-dump was of any value for you. I am willing to
try the changed komposti version, what exactly should I change?

Thanks.
On May 27, 2014 10:45 PM, "Emil Ljungdahl" [email protected] wrote:

@pgastinger https://github.com/pgastinger, thank you for taking the
risk, I haven't dared to upgrade until I got your pcap-dump :)

It seems quite safe to just change the "komposti-version" in the
communication. Since openambit is not capable of writing any data other
than the orbit data yet, the chances that we mess something up are quite
slim. However, the day we start implementing writes, we need to have those
major version bumps in mind!


Reply to this email directly or view it on GitHubhttps://github.com//issues/42#issuecomment-44332865
.

@svenstorp
Copy link
Contributor

Unfortunately Suunto seems to make some major changes every now and then. For the Ambit (1), they have changed the log format completely in the past (or at least they way it is read out)...

It should be enough to update to latest from master, I have already made the changes. Please remember to rebuild both libambit and openambit though!

@skinnie
Copy link

skinnie commented May 28, 2014

svenstorp thanks for the patch.
If I run openambit as normal user it isn't working, but and gives this output:
QObject: Cannot create children for a parent that is in a different thread.
(Parent is QNetworkAccessManager(0x281ebf0), parent's thread is QThread(0x26b5f68), current thread is QThread(0x7fff78a90138)

If I run as su, it says syncronization complete and gives this output in terminal:
[root@ThinkpadX230 skinnie]# openambit
QObject: Cannot create children for a parent that is in a different thread.
(Parent is QNetworkAccessManager(0x8dddc0), parent's thread is QThread(0x7ac348), current thread is QThread(0x71f630)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is QNetworkAccessManager(0x8dddc0), parent's thread is QThread(0x7ac348), current thread is QThread(0x7fff1ba781d8)

Maybe something wrong in my installation?
Hope it helps and thanks for this great work

Here are my pcap (i wasn't really sure what usb to use, so took both) dumps and log, hope it helps:
https://www.dropbox.com/sh/6sn9a6wzc9a9mig/AAA6jjIUEleu5cxZjr1-KkjGa

@mbernasocchi
Copy link
Member

@skinnie that is a known but possibly harmless issue #30

@henriferr
Copy link

Would communications protocol of the first openambit release also work with the Suunto Quest watch?
I am looking for support for Suunto Quest watch?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants