2017. október 7., szombat

Két Suunto move kálváriája

A történet szeptember 9-én kezdődött. Ádámmal letoltuk a Turista Kékszalag Maxi 110-t még szombaton beérkezve. Én hazafele menet türelmetlenül elkezdtem a move-t szinkronizálni az Android-os movescount app-al. No azt nem kellett volna...

Az történt ugyanis, hogy az andoid app nagyon lassan (kb fél óra) letöltötte az adatokat az óráról (Suunto Ambit3 Peak), viszont közvetlenül utána összeomlott (crash). Namármost.. ilyenkor az van, hogy a move le lett töltve. Az órán meg lett jelölve mint letöltött move. A movescount oldalra viszont nem került fel. Oké, semmi gond, gondoltam elsőre, app restart. No az nem megy. Az app innentől kezdve nem indul el, rögtön crash-el ahogy bejön a menü (egy pillanatra látszik, hogy ott a hiányzó move letöltve). Na jó, akkor lássuk a desktop app-t. Windows 10, moveslink2 program. Elindul szépen, de a szinkronizálás gyanúsan gyors. Hát persze, hogy nem látszik ezután sem semmi a movescount.com-n.. Mivel a move az órán meg van jelölve mint letöltött esemény, ezért az már soha többé nem szinkronizálható sem telefonon, sem számítógépen. Na itt pánik indult.. WTF?

Túrtam a netet és sajnos vagy nem, de találtam hasonló eseteket. Ez előfordul. Volt aki véletlenül törölte a már leszinkronizált move-ját és onnan kakukk, nem volt meg többé. Vagyis megvan.. az órán, ahonnan nem tölthető le, illetve a telón, ahol nem indul el az app.. Keresgéltem is bőszen a telefonon is, hogy hova menthette az Andoid fájlrendszerében az app, de nem találtam meg, csak üres könyvtárakat a movescount app data folder-jeiben. Azt olvastam, hogy ez azért van, mert ezek a fajlok csak root hozzáféréssel láthatóak. Kicsit utána olvastam, hogy megy ez és parkolópályára tettem a dolgot, mert nem csak ezt kellett volna megoldani, hanem még azt is, hogy az app egy xml formátumban tárolja le a move-t, amiből nem olyan egyszerű pl gpx-t készíteni (amúgy létezik rá egy linux-os konverter).

Oké, akkor hogyan tovább? Találtam egy nagyon érdekes dolgot is a neten.Van egy Openambit nevű opensource project, amit egy Lars Andre Landas nevű Norvég sw fejlesztő kezdett el csinálni és azzal elvileg lehet közvetlenül az óráról letölteni move-okat movescount és moveslink2 app-ok nélkül.. 3 bibi volt csak: 1. A program Ambit2-höz készült  2. Linuxon fut csak  3. Rizikós! Mivel nem hivatalos tool, ezért semmilyen garancia nincs rá, hogy a használata során nem válik a drága óra papírnehezékké.. Sajnáltam, mert konkrétan több helyen ezt ajánlották megoldásnak erre a Suunto specifikus problémára. Később megtaláltam azt is, hogy többen próbálgatták a programot Ambit3-mal is, ami először nem ment, de Landas elkezdte faragni hozzá a programot. Egyelőre ezt a szálat parkoló pályára raktam..

Közben írtam egy levelet a Suunto support-nak. Szépen összefoglaltam a helyzetet és vártam a választ. Én a hétvégén még próbáltam megjavítani a telefonon a movescount app-t. Uninstall, újra felrak, valami frissített változat ment fel már, pont előző pénteken jött ki az új verzió. No mint később kiderült ez sem volt egy jó lépés, mert a telefonon addig ugye valamilyen formában (xml) meg volt a move (még ha az app nem is indult el), de az újrainstall után már nem látszott. Ezt buktam. Már csak az órán volt meg az értékes adathalmaz. Az volt a szerencsém, hogy Ádámmal együtt mentünk végig, és neki is Ambit3 Peak volt a kezén, így az Ő adatait megkaptam és fel is raktam legalább strava-ba. Ez egy kis megnyugvást adott, legalább az idő/track adatok így megvannak, fly-by látszik, csak a pulzus adatok nem.

Suunto support kedden küldött választ. Semmi világmegváltót, de legalább írtak. Próbáljam meg újra szinkronizálni (hehe, szerintetek nem próbáltam?) illetve küldjek logokat a telefonos app-ból.. (ha elindult volna küldtem volna)... ezeket meg is írtam nekik.
A következő napok több dolog miatt nekem rettenetesen sűrűk voltak, korán keltem, este estem haza, nem volt nagyon idő semmire.. így több mint egy hetet pihent a dolog.

Kb 10 nap múlva rámírtak, hogy mi a helyzet a logokkal, mert várják őket. Megírtam ismét, hogy nem nagyon tudok használható logot küldeni, mert nem indul az app. A windows-os app-ból küldtem, de mivel az semmit nem szed le már az óráról abban nem is nagyon lehetett semmi...

Pár napra rá írták, hogy fel tudnák újra töltetni a movescount app-al a problémás move-t, hogy ha nem változott volna az app és megírom a pontos idejét a move-nak. Az időt ugye az órából ki lehetett olvasni, viszont mivel újraraktam az android-os programot ez az opció már bukta volt. Ezen a ponton már megbékéltem a gondolattal, hogy a saját adataim már el fognak veszni és marad az Ádámé nálam is.

Aztán jött szeptember 30, amikor elmentem megint egy hosszút futni (Budai Térképkör) és megint elkövettem azt a hibát, hogy a végén a telefonos app-al (gondoltam, hogy frissítettem is, közben pár kisebb futásnál már működött, csak nem fogja mégegyszer ezt eljátszani...) szinkronizáltam. Hát persze, hogy eljátszotta megint a nagyhalált letöltés után. Bumm. Ez most sokkal jobban fájt. Egyrészt egyedül mentem, nem volt "pót-track" senkitől. Másrészt mivel futottam, nem írkáltam fel az ellenőrizendő dolgokat az útvonalon a teljesítéshez, hanem a B opciót választva a GPS track-t akartam elküldeni a szervezőknek a teljesítésem igazolására. Ha nem tudom leszedni a track-t az óráról, akkor lőttek az egésznek, nem leszek teljesítő. Ez elég elszomorító felismerés volt. Pánik (újra) indul. Még aznap írtam egy levelet az instant túra szervezőjének, hogy ez van és elküldtem neki minden fényképet amit aznap csináltam a futás alatt, sőt az óra adatait is végigfotóztam amin kicsiben még a track is látszott (jó, persze arról ellenőrizni, hogy követtem -e rendesen az útvonalat nem lehetett), szóval legalább annyi igazolva volt, hogy a távot és szintet teljesítettem. Természetesen a Suunto support-nak is azonnal írtam egy újabb levelet, hogy hahó, baj van, valami megoldást próbáljunk kitalálni... igazából adtam nekik egy konkrét javaslatot is, az app továbbfejlesztésére, de mivel nem olyan kis módosítás, sok reményt nem fűztem hozzá, hogy ezt csak így bemondásra gyorsan megcsinálnák. Zárójel nyílik: Mivel az órán megvan a move, praktikus lenne, ha legalább a moveslink2 tudna olyat, hogy kilistázza mik vannak az órán és azokból bármelyiket kiválasztva újra letölti függetlenül attól, hogy már korábban le volt -e szedve vagy nem.Zárójel bezár...


Szerencsére Sanyi nagyon jó fej volt és el is fogadta teljesítésnek így a fényképeket (ja és a Suunto support-os eddigi levelezést is átküldtem neki :) ), így azért 1 nagy kő leesett a szívemről. Ráadásul elég szép helyen landoltam a teljesítői listán is.

A Suunto support újra logokat kért, hogy abból tudnák előállítani a hiányzó adatokat. Most ugye az app nem volt piszkálva, viszont megint nem indult el. Ezt meg is írtam nekik. Na, jött a válasz, hogy jó-jó, de próbáljam meg úgy elindítani, hogy repülő módba rakom a telefonomat.. mivan??? Annak meg mi köze van az app crash-hez? Na mind1 kipróbáltam, és bakker megmaradt. WTF? A program akkor hullott össze, mikor kapcsolatot kezdett létesíteni a movescount.com-mal. Amíg offline-ban vagyok addig megy. Na persze ezzel így mit kezdjek? Aztán írták, hogy ha már elindult, kapcsoljam vissza az adatforgalmat a telón, és rögtön küldessem a logot az app-al. Fura módon ez sikerült is... Bár az nem írta ki, hogy a log el is ment, de hogy elkezdte küldeni az igen és nem halt meg a program sem, csak újraindítás után.

Így már-már reménykedni kezdtem. Ekkor viszont a Suunto support nagyon hallgatni kezdett... Többször rájuk írtam, hogy mi van már a logokkal, de semmit választ nem kaptam.


Elkezdtem hát (mint utolsó mentsvár) kicsit jobban nézegetni az openambit project-t már csak szakmai szempontból is. Arra hamar rájöttem, hogy ez a Landas figura egy rettenetesen hardcore arc. Mivel a Suunto nem adta ki az órával való kommunikáció specifikációját, neki állt gyakorlatilag az usb forgalmat a gép és az óra között wireshark-al elkapni és analizálni, így kezdte el összerakni a saját programját. És ez még hagyján, de teszt felhasználókat gyűjtött és indított egy szervert amire a felhasználók realtime proxy-zták az adatokat amiket letöltöttek az órákról, hogy azokat is ki tudja analizálni. Legalább olyan beteg dolog ez mint annak idején Commodore-t gépi kódban (nem assembly!) programozni.. nade az már régen volt, most meg itt ez a jó kis gubanc 2017-ben egy olyan órával ami mondjuk a Commodore-ok idejében teljesen elképzelhetetlen űrcucc lett volna (akkor még a számológép billentyűs kvarcóra volt talán a legmenőbb dolog amit láttam).

Szóval az Ambit3 support.. az elvileg kész lett idén tavasszal, ezt nagy örömmel olvastam. Tehát elvileg létezik egy működő program, ami pont az én problémámat orvosolja. Oké, a 3-ból 1 probléma pipa... 2. Linux. Azt nem használok, de mivel a céges laptop-on volt fent VirtualBox (virtuális gép kezelő program, amivel Windows-on lehet például Linux-ot futtatni), felraktam rá egy régebbi Ubuntut. Azért régebbit, mert az még nem volt olyan nagy. És nekiálltam ennek az openambit project-nek a használatba vételéhez. A source volt ugye elérhető, ezért az első nagy feladat a lefordítása volt. Nem lett volna nagy cucc, ha jó Ubuntu verzióból indulok ki, de így egy oltárai nagy szívás kezdődött el. Furábbnál furább hibák jöttek elő, frissítgetni kellett a tool-okat és a hozzájuk tartozó komponenseket.. az egyiknél a python verzióban akadtam el. 2.6-os python-nal nem ment, de a Linux distro verzió miatt nem lehetett a python-t felhúzni frisebbre, mert akkor a rendszer omlott volna össze alatta. Újrapróbáltam egy frisebb Ubuntuval, de ott a cmake-el jutottam hasonló zsákutcába sok sok guglizás és próbálgatás után. Végül megpróbáltam a legújabb 17-es Ubuntut is és láss csodát ment a fordítás mint az ágyba sz*rás. No! Valami lesz ebből. Az install is szépen lement, már csak futtatni kellett a programot és az USB portolást megoldani a host gépről a virtuális gépre. Nem tűnt lehetetlennek... de az Istennek nem ment. Teljesen különálló session-ben futó terminálból sem bírtam az X server-hez csatlakozni az openambit-tal. Pedig az X server működött, hiszen elérhető volt a GUI is. Már minden fórumon átmentem és vagon dolgot kipróbáltam és azon voltam, hogy írok Landas-nak hátha tud rá valami megoldást. Aztán jött egy ötlet, hogy ki kéne próbálni először egy rendes gépen is. Nosza, szereztem egy laptop-ot, amire fel tudtam húzni a 17-es Ubuntut, fordítás, install, run! Szekér Pipi run! Nem megy. Ugyanaz. Fórumokat túrom tovább, találok egy DISPLAY env beállítást, amit még nem próbáltam. Bumm, bejött! Működik! Azta! Elindult a cucc. Remegő kézzel dugom rá az Ambit-t USB-n (itt még csak a virtuális portozással sem kell pöcsörészni) a program meg egyszer csak kiírja, hogy hohó, talált egy Ambit3-t. :) Zsír! No lássuk mit tudsz. Synch! Teker, teker, hiba nincs, mikrofos-talicska meg homokóra sincs, csak progress bar meg százalék. Valamit nagyon csinál. Telnek a percek, rágom a körmöm, vakarom a falat. Egyszer csak kiírja, hogy 7/12 move found.. Huhuhú! És megy tovább. Megtalálja mindet és kilistázza őket. Nagyon szupi! What next?

Keresgélni kezdem, hogy oké hogy megvannak az elveszett báránykák, de hogy fogom ezeket hazaterelgetni? Bújom a nem túl regényes README fájlt, nézem a honlapon a documentation-t, de sehol nincs leírva, hogy hová kerülnek ezek a megtalált move-k. Jobb gombbal a move-ra látom, hogy feltöltené egyenesen movescount-ba, de ez a funkció nem működik, mert nem tud bejelentkezni az oldalra (persze hogy nem, sehol nem tudtam megadni a bejelentkezéshez szükséges adatokat). Végül guglival Landas fórumán találom meg az újabb infomorzsát. Az openamit-nak van valahol egy settings menüpontja, amit eddig nem találtam meg. :) Hohó! Megvagy. Előkerül az elveszett menüpont és beállítom az email címet amivel bejelentkezik a movescount-ba. Ott még egy jóváhagyás a bejelentkezéshez és már repülnek is a move-k az internyetre! Juhú! Múködik a cucc! Óriási köszönet Landasnak ezért a remekműért! És gondolkozzon el kicsit a Suunto support ezen a "ha letöltötted egyszer, akkor az le van töltve" megoldáson (és persze szégyelje el magát, amiért linux-ra semmilyen support-t nem adnak).



Jelenleg a TKSz Maxi-ból és a Budai Térképkör-ből most 2-2 verzió van fent Strava-n. A korábbi kommenteket és kodos-okat kidobni nem akarom, úgyhogy azt hiszem most egy újabb support-os kör fog indulni a Strava-s srácokkal... :) Hogyan lehet átvinni egyik move-ról ezeket a másikra... és persze a VirtualBox-os csatát sem adtam még fel, hogy ne kelljen egy plussz laptop az egész művelethez...


Jó hosszú lett, de van tanulság bőven. Ez az Android movecount hiba én úgy vettem észre csak a hosszú, nagy move-okat érinti, a kisebbek szinkronizálásával nem voltak gondok. Ha esetleg hasonló cipőben vagy kedves márkatársam aki most -e sorokat olvasod, ne csüggedj, van megoldás. Mégha kicsit rögös is az út hozzá....

1 megjegyzés:

fnagy75 írta...

ismerős story, csak télen még nem működőt :(
viszont azóta ilyen is van :)
https://play.google.com/store/apps/details?id=com.greenpeakdigital.ambit3connect.trial&hl=en