Bosch eBike Flow App Integration (BES3)

Also looking forward for the Integration but until then I found a solution for the charging problem.

I managed to connect to the Ebike (Purion200) via EspHome (esp32 bluetooth ).
I only get fixed data read out, but unfortunately not the battery percentage yet.

Hopefully someone has more information about the bosch bluetooth commands.

Below is what the command should be according to the documentation.

Service uuid: 180a
Characteristic uuid: 2a19

I would love that.
+1

In addition to Komoot integration, it would be fantastic to also have Ride with GPS integration into the Flow app.

This shop in Vienna plans to hire ebikes to tourists next year, therefore, they told me that they developed,their own connector to manage a fleet of them. Try to call there! They seemed to be happy to share it for HA community. https://maps.app.goo.gl/FZW54XENs77NXe578?g_st=com.google.maps.preview.copy

And I am ready to betatest whateve you need as a profi nerd!

Hi CSC9110,

I’m looking to do axactly the same with a esp32 chip.
Did you made some technical changes on your project, or just any git to acces your project ?
Personaly, I got plenty of others caracteristic uuid with values but I don’t know what they use for.

I haven’t done anything with it yet, and I don’t have any documentation.
I hope someone else picks this up.

Hi, I plan to build my own ebike tracker on esp32 with gyro, gnss, speaker for alarm etc. I can turn on the alarm when the high power plug cuts off power and turn off the alarm when the power is up and a phone gives ble handshake. However, it would be nice to turn off/on the bosch engine as their ā€œconnect moduleā€ does. I am building my own tracker because the flow up does not allow sharing a bike with my wife. She cannot lock it as the bike cannot be paired with more than just one phone and then we are loosing gps tracking as well.

Have you moved forward with the bluetooth connection?

How do you power the esp? Where do you get usb access?

High power plug gives 12V, stepdown converter to 5V, two wires, usbc

Where is that 12V on your bike? :person_shrugging:

My performance CX engine has (others have too) several plugs/ports for additional accessories: front lights, rear lights, high power, low power.

High power plug provides constant 12V - twelve volts. USBC needs 5V - volts. So you need a electricity transformator, also called step down converter. Then you have two wires and you can buy USBC connector used just for power (not data) that has also two wires. Connect them and VOILA!

No, Bluetooth will not work. I have contacted the manufacturer Bosch about this. You could try the option below.

  1. Connect to the CAN bus

The Bosch Purion 200 communicates with the motor and battery via the CAN bus. You need to read this CAN bus with an ESP32 and an MCP2515 module:

The bosch connect module (the tracker & alarm) is connected to the low power port and not between the purion and the engine. So you think it sends CAN messages directly to the engine? It might because it is somehow also communicating with my phone and can probably directly turn off the engine. So I may try to read between connect module and the engine.

I’ve never done anything like that, just a tinkerer, not a professional. Would you be interested in doing that so we can post a whole guide for esp-enabled bosch ebike tracker with thos capability to turn off the engine?

You have my vote right of the bat and it’s weird that this hasn’t come to fluition already as both ebikes are increasing in number and the use case with battery protection is rock solid.
But, as has been indicated, there are more components at play here. These is the case of getting data from the bike, preferably using an open standard like BLE. This would be up to Bosch. And the other bit would be a receptor for the data, in the case of BLE maybe OpenMQTTgateway or even ESPhome.

Hi, this plan was indeed a nice workaroind. Unfortunately with my Bosch charger i didn’t observe the ā€˜power curve’ going down at 90% charge so for now I have to stay with my very basic ā€œman-omationā€: I noticed charging during 1 hr resulted in +20% battery charge. So I created a slider for a helper to countdown in % from the valye I set when I switch on the shelly plug. I suppose the conversion factor will be different for every charger/battery/… When i start at 20% charge I set the slider to 60% so around 80% the shelly-plug willbe switched off. So atleast overcharging should now be more or less avoided.
Still hoping for a more reliable solution…

The Github user TA2k has created an adapter for iobroker (adapters are what integrations are in HA) for the Flow platform and it can get trip data, total distance and some other info, but no battery level since that is only transmitted via BLE while the phone is near the bike and not uploaded to the cloud.
The adapter’s Github is here: GitHub - TA2k/ioBroker.bosch-ebike: ioBroker Adapter for bosch ebikes

Maybe someone can port this to HA as an integration?

I was looking for some Bosch integration to be able to charge to around 80% and than stop charging automatically.

I have a proof of concept working and are now making a nice housing for it.

What I did: I have made a light sensor (esp32 board with LDR sensor) and place this on the last Bosch led of the Led Remote. When the last led starts blinking, the SOC (state of charge) is 80%,
The ESPHome code on the esp32 board detects the blinking and starts counting it. After the led has blinked 10 times, a Home Assistant automation is triggered, which turns off an Osram smart plug, so the power to the Bosch chargers is cut off and charging stops.

It worked when testing, now I am creating a 3D printed housing, in which the LDR sensor and the esp32 board will be mounted. This housing fits exactly over the Bosch Led remote controler (and positions the LDR sensor exactly over the right status led).

I say yes, we need this! Optimised charging would be a serious advantage!

Hi All, i recently bought an ebike with the Bosch smart system. I was reading up on this thread and would also love to be able to readout battery percentage vlua bluetooth on an ESP. I recently fount this Github of someone who mad an android app and was able to decode bluetooth messages for battery percentage level!

I though this might come in handy for the people who managed to make a connection to their bike through ESP.