Dynamo Harvester Bluetooth LE w/ proprietary BT profile
I recently purchased the be on bike Dynamo Harvester, a combination of dynamo hub-based power supply for smartphones and a few sensors, and would like to combine it with the map and track recording capabilities of Locus Map. The device has sensors for Speed, Barometric Altitude, and Temperature but only the first one is announced via the speed-and-cadence Bluetooth profile while the other two are implemented using a proprietary Bluetooth profile within the manufacturer’s companion application.
I spoke to the manufacturer already and they would help me or even give me the proprietary profile code they use so that I can try to integrate it with Locus Map. However, upon having a look at the Locus API capabilities, I was wondering whether that task can be achieved via another app that hooks up with Locus Map as I couldn’t find a method to add additional information—such as altitude information gained from the barometric sensor of the Dynamo Harvester device—to the track currently being recorded.
Do you have an idea of how that might be done? I’ve done Android development before and would be willing to write a plug-in if that’s the right tool for the job but so far it doesn’t seem like it.
Good day,
really interesting device and glad to hear another volunteer on Android development :).
Anyway in this case it will be a little bit more complicated. Locus API is for now, made mainly to display some existing content (like points, tracks) directly on a map or handle with existing points inside Locus. What you need is some injection of extra information into running track recording. Also in your case, such extension will needs a quite a lot of work on your side with handling of Bluetooth connection to device and all the stuff around.
Speed & Cadence profile is already working for you in Locus, did you tried it?
All such extra data are stored in "Location" class: https://bitbucket.org/asamm/locus-api/src/352773c893a1acb93033d79286194d4fb1997bdd/src/locus/api/objects/extra/Location.java?at=default&fileviewer=file-view-default . In "ExtraSensors" container is now possible to store temperature value, but only one type of altitude value is now supported.
So I'm always glad if someone active wants to do some improvements and create some nice add-on etc. , but in this case, I think it should be 100times more work for you to create all around (plus for me to extends API), then to add a few lines of code in existing BT handler and add support for two special profiles for this device. With temperature, it won't be a problem. With Altitude, it depend if it is an absolute altitude value (how it is calibrated?) or some relative value.
So what you think?
Good day,
really interesting device and glad to hear another volunteer on Android development :).
Anyway in this case it will be a little bit more complicated. Locus API is for now, made mainly to display some existing content (like points, tracks) directly on a map or handle with existing points inside Locus. What you need is some injection of extra information into running track recording. Also in your case, such extension will needs a quite a lot of work on your side with handling of Bluetooth connection to device and all the stuff around.
Speed & Cadence profile is already working for you in Locus, did you tried it?
All such extra data are stored in "Location" class: https://bitbucket.org/asamm/locus-api/src/352773c893a1acb93033d79286194d4fb1997bdd/src/locus/api/objects/extra/Location.java?at=default&fileviewer=file-view-default . In "ExtraSensors" container is now possible to store temperature value, but only one type of altitude value is now supported.
So I'm always glad if someone active wants to do some improvements and create some nice add-on etc. , but in this case, I think it should be 100times more work for you to create all around (plus for me to extends API), then to add a few lines of code in existing BT handler and add support for two special profiles for this device. With temperature, it won't be a problem. With Altitude, it depend if it is an absolute altitude value (how it is calibrated?) or some relative value.
So what you think?
Hi,
I'm also using the dynamo harvester and locus, and it's great to hear that you consider to support for the DH sensor values. Additionally to the 3 sensor values the device seems to send information on the battery state that would be useful to be displayed in dashboard.
Hi,
I'm also using the dynamo harvester and locus, and it's great to hear that you consider to support for the DH sensor values. Additionally to the 3 sensor values the device seems to send information on the battery state that would be useful to be displayed in dashboard.
Replies have been locked on this page!