E7000 Display bluetooth not found

rb.

Active member
Apr 27, 2020
388
261
San Jose, usa
Hi,
I have a e7000 display on my Decoy 29 and recently have not been able to connect my bluetooth device to it. I use the app @mark.ai created to view the battery percentage on my Garmin watch, and now for some reason I can no longer connect to my bike. I can connect my phone e-tube app to the bike when it is powering on only, but after that the bluetooth capabilities seem to disappear. Watch bluetooth is turned on and the app is installed and in a constant state of "searching". I cannot see the bluetooth symbol on the display at all.

Has anyone experienced this before or have any suggestions for me to try?
Thanks,
 

mark.ai

E*POWAH Master
Patreon
Jul 10, 2018
828
594
Windermere
Argh, don't you just hate it when something stops working!

Once the bike has powered on, is the e-tube app also not able to connect? (I.e. it only works initially?)
 
Feb 27, 2020
73
37
home
hi,
This answer is probably more then you (both ?) asked for but...
with 273 downloads of mark.ai's "STEPS EMTB data" from apps.garmin.com you will not find many people that :
1- have an YT decoy 29 (I have the an YT Decoy 29 Pro) or simular Shimano set-up
2- have a Garmin device (I have the Garmin Edge 530 and a Garmin VivoActive 4)
3- are member of this forum

I never got M's app working with my YT, it just will not connect (or I don't know how to do that). Luckily M shared the source code, Thanks M.
To test his app (without Garmin device) you need a Windows 10 computer, a Nordic nRF52 kit (BLE) and the Garmin developer kit.
I have all "in place" and it just needs time (a lot of it) to get it going which is what I plan to do in the upcoming winter months.
Currently I have focussed on getting 'all' working with Android using the open source BLE scanner and some rrrrrr... engineering techniques.
That works now and I am able to port the code to a Garmin device, which is my goal, or a Windows laptop with Bluetooth (the Windows BLE scanner is also open source and sees Shimano in the same way as the Android BLE scanner does). Its not difficult to read the battery level, that works with an unmodified BLE scanner (Android or Windows). Unfortunately Shimano seems to have come up with a strategy to block adjusting some other parameters unless you use a version up to and including 4.8.0. Check the video link but I will not release this app to the public , The Video.
 
Last edited:
Feb 27, 2020
73
37
home
Argh, don't you just hate it when something stops working!
Once the bike has powered on, is the e-tube app also not able to connect? (I.e. it only works initially?)

I remember I have seen 2 sw updates wrt bluetooth for my VivoActive 4 in the last half year or so.
When running the bleScan on the Vivo it sees the ebike (see foto 1) but when running STEPS EMTB on the Vivo it connects (bluetooth symbol is on the bike's display, see foto 2) but it just keeps scanning. Then I tried STEPS EMTB in combination with a nRF52 and a simulated Vivo (testing it on/with windows, see fot 3) and that works fine :)?
I also tried STEPS EMTB with a Garmin Edge 830 (see lower right corner foto 4) and that works also, only the letters are so tiny...
The difference... is not expected or is it with all of these different devices that Garmin produces ?

Now check foto 5 when you add the ebike as sensor to a Garmin 830... and it displays an extra 'Shimano Steps' page. This only works if one of the 2 runs: STEPS EMTB or your ebike as sensor.


bleScanVivo.jpg


bike.jpg


nrf52.jpg


steps_embn.jpg


shimano.jpg
 

mark.ai

E*POWAH Master
Patreon
Jul 10, 2018
828
594
Windermere
I remember I have seen 2 sw updates wrt bluetooth for my VivoActive 4 in the last half year or so.
When running the bleScan on the Vivo it sees the ebike (see foto 1) but when running STEPS EMTB on the Vivo it connects (bluetooth symbol is on the bike's display, see foto 2) but it just keeps scanning. Then I tried STEPS EMTB in combination with a nRF52 and a simulated Vivo (testing it on/with windows, see fot 3) and that works fine :)?
I also tried STEPS EMTB with a Garmin Edge 830 (see lower right corner foto 4) and that works also, only the letters are so tiny...
The difference... is not expected or is it with all of these different devices that Garmin produces ?

Now check foto 5 when you add the ebike as sensor to a Garmin 830... and it displays an extra 'Shimano Steps' page. This only works if one of the 2 runs: STEPS EMTB or your ebike as sensor.

Wow thanks @markus datgloi - that is very useful information :)

It's interesting that it doesn't work on the Vivoactive 4, but does work on the Edge 830 and nRF52 (simulated Vivo).

In fact there were previous reports to me that it didn't work on the Vivo 4 or Venu watches (Garmin watch data field for Shimano STEPS EMTBs - EMTB Forums) - I never found out the problem. There are so many places that communication could break down and I can't test without the same devices. It could be the watch or the bike, it could be hardware or software, and on the software side it could be my code or Garmin code ...

The app running in your tests is exactly the same code (my code anyway) on all different devices - so in theory it should work the same on all of them ... but clearly something doesn't ...

Also a note on the "mini" text on your Edge 830 - my code just uses a default way to display the text. Which means it leaves it up to Garmin & the device to determine the size of font to use. Unfortunately it seems to make a really bad choice about what size to use!
 
Feb 27, 2020
73
37
home
In addition: BleScan of jim_m_58 finds just 1 device (the YT) with the Vivo but with the Edge 6-7 devices, including the YT. Clearly there are differences in hw and probably sw (drivers) .

You may want to look at emtbView.mc:
  1. lines 194-206 getUserSettings : I would add a line in the catch block, just to be safe in case of an exception: lastMACArray = null;
    So in completeReadMAC the foundDevice doesn't exclude a device based on an faulty lastMACArray .

  2. line 282 completeReadMAC : var showBattery = (showList[0]==1 || showList[1]==1 || showList[2]==2); :rolleyes: :unsure: showList[2]==2 ???
If only testing with the Vivo watch, instead of a simulator, was easier and not so time consuming... I will try to replace the scan counter with some debug text, later in the week.
 

rb.

Active member
Apr 27, 2020
388
261
San Jose, usa
Wow, thank you for the in depth responses.
Now I feel extra dumb that I was able to solve my problem by uninstalling the app from my watch, and re-installing again. Problem solved.
 

mark.ai

E*POWAH Master
Patreon
Jul 10, 2018
828
594
Windermere
Wow, thank you for the in depth responses.
Now I feel extra dumb that I was able to solve my problem by uninstalling the app from my watch, and re-installing again. Problem solved.

Glad you got it sorted :) (Re-installing didn't occur to me either!)

It's actually interesting that it made a difference, and something I'll remember for the future - maybe an update on your watch temporarily broke something in the app ...
 

mark.ai

E*POWAH Master
Patreon
Jul 10, 2018
828
594
Windermere
You may want to look at emtbView.mc:
  1. lines 194-206 getUserSettings : I would add a line in the catch block, just to be safe in case of an exception: lastMACArray = null;
    So in completeReadMAC the foundDevice doesn't exclude a device based on an faulty lastMACArray .

  2. line 282 completeReadMAC : var showBattery = (showList[0]==1 || showList[1]==1 || showList[2]==2); :rolleyes: :unsure: showList[2]==2 ???

Thanks @markus datgloi I'll check those lines and see if I can remember what the code is supposed to be doing :)
 
Feb 27, 2020
73
37
home
I think I have found the reason why it is not running on the VivoActive 4 (and maybe other devices).

I have added in the bleDelegate the onProfileRegister(uuid, status) but only on the VivoActive I get a status = 2 on each 2nd and 3th profile.
Only the first profile is always registered (changing the order does not help).
A status with value 2 is not documented in the API.
I have also added getAvailableConnectionCount, as suggested by jim_m_58, and it returns 3 (always).

ble:initialize
bleInitProfiles avail:3
ble onScanStateChange SCAN_STATE_SCANNING SUCCESS
ble onProfileRegister 000018EF-5348-494D-414E-4F5F424C4500 SUCCESS
ble onProfileRegister 000018FE-1212-EFDE-1523-785FEABCD123 ERROR 2
ble onProfileRegister 0000180F-0000-1000-8000-00805F9B34FB ERROR 2
 

mark.ai

E*POWAH Master
Patreon
Jul 10, 2018
828
594
Windermere
You may want to look at emtbView.mc:
  1. lines 194-206 getUserSettings : I would add a line in the catch block, just to be safe in case of an exception: lastMACArray = null;
    So in completeReadMAC the foundDevice doesn't exclude a device based on an faulty lastMACArray .

  2. line 282 completeReadMAC : var showBattery = (showList[0]==1 || showList[1]==1 || showList[2]==2); :rolleyes: :unsure: showList[2]==2 ???

Good calls and well spotted on these - thanks for pointing them out :) Especially the 2nd one - we all love a good typo :eek: I'll make an update :)
 
Feb 27, 2020
73
37
home
Your code, but re-arranged in the jim_m_58 style and emtb renamed into ebike, is in GitHub MarkusDatgloi - Overview . I only added displaying: an errorReport (all catch exceptions and the profile error), displaying occasionally the connected device name and a hint if the ebike's power is on after 20 scans.
Feel free to use it and update your app.
 
Feb 27, 2020
73
37
home
Status of today:
The original to Garmin reported issue, see VivoActive 4: BleDelegate.onProfileRegister returns status value 2 on every 2nd and 3rd registerProfile - Connect IQ Bug Reports - Connect IQ - Garmin Forums is marked as solved "WERETECH-10085, Fix has been applied to update for VivoActive 4 in FW: 5.63" but that software release is not available to the public but it is available for BETA testing. It can only be installed manually (thus not via Garmin Express and not via a sw update over Wifi via the watch). The BETA does solve the issue,.

So for now the Bluetooth connection problem between Garmin VivoActive ( and Venu ? ) - Shimano remains until some day release 5.70 is made available. The BETA is easy to install but not risk or error free so do not install it unless you are willing to take the risk. The BETA is in BETA - vivoactive 4/4s SW 5.73 is available - vivoactive 4 Series - Health & Wellness - Garmin Forums .
 
Last edited:

EMTB Forums

Since 2018

The World's largest electric mountain bike community.

522K
Messages
25,784
Members
Join Our Community

Latest articles


Top