alexanderlavrushko / BLE-HUD-navigation-ESP32

Shows navigation instructions received from the phone (e.g. "After 200m turn right")
75 stars 23 forks source link

Invalid characteristic value #2

Closed klonk closed 3 years ago

klonk commented 3 years ago

Hello

I started to rewrite hud to more compact esp32 ttgo.

I successfully run in with different display driver , drawn sygic logo and connect to application ( ios , setting , enabled ble hud )

Inside console log , i see

Forming a connection to 7c:39:5e:be:57:c8

So if understand it correctly , 3 is connected to app , 2 is no route and i___ is direction, but wrong single char value always came in ( even when i simulate route ). Is there special version of ios app that support it ? I am currently on 18.7.0 build R-6

Inak paradna praca :)

alexanderlavrushko commented 3 years ago

@klonk , you've done great job with TTGO! I'm happy to see somebody made it work on another device. From what I see in your log, everything works fine:

please check some data details in this comment: https://github.com/alexanderlavrushko/BLE-HUD-navigation-ESP32/issues/1#issuecomment-613968013

the 'i' response is read in BLEMasterNavi1_rgb.ino line 392, the second byte is "flags" - one byte with a set of binary flags:

My current implementation checks only bit 4 of these flags, other values are read if valueOffset < dataSize: https://github.com/alexanderlavrushko/BLE-HUD-navigation-ESP32/blob/5cf7173a61d4f1b45b43fcf6a4ab6ea506acd3a3/BLEMasterNavi1_rgb.ino#L410

I know it would be better to write this information in Readme, maybe one day I'll make a proper Readme.

Dakujem :)

klonk commented 3 years ago

Thank you for clarification of flag system. Is there some debug flag to set on inside sygic to see navigation data in "Play mode " as you shown on video ?

All i get is 0 speed, 0 distance and 255 direction ( in play route mode )

alexanderlavrushko commented 3 years ago

Probably it means "no license". If trial is expired, and no premium license, the application stops the instructions service, so instructions are not shown on the phone, not spoken with voice, and not shown on the HUD.

jaksatomovic commented 10 months ago

is there any documentation from sygic where i can see all data examples app will send?

alexanderlavrushko commented 10 months ago

No, there is no official documentation for this experimental feature.

jaksatomovic commented 10 months ago

can you pleaase explain then how does this works

0x690732083335306D00 meaning: instruction (0x69), turn right (0x08) in 350m (0x3335306D00), current speed limit is 50km/h (0x32)

i trying to compare this to your enums in code - instruction (0x69), turn right (0x08)

alexanderlavrushko commented 10 months ago

@jaksatomovic your data example is from the old version (see branches, tag v0.1.0) and it's not compatible with current Sygic app. Since v0.2.0 the data format has changed, and it's the current format. See latest data example here https://github.com/alexanderlavrushko/BLE-HUD-navigation-ESP32/tree/main#technical-info