It seems like only 1000-1300 reports actual voltage 36.9-29.7 (means 4.1-3.3V per cell, but it could be a bit different for higher lifespan) and percentage is “calculated” as 369-297. On the other hand, 350 and 400 series reports only percentage 100-0 and voltage is “calculated” as 10-0 (nonsense because it uses about 20.5-16.5V).
So for 350 and 400 you can show percentage righ away. For the first gen it needs to be calculated from the voltage.
Btw: You can use the “discharge” value as well. Because that probably stands for Ah(amperehour) and about how much charge you are able to “push” into battery you should get about the same (it’s not accurate but in combination with voltage the overall “capacity meter” could be more accurate). Just a tip for future development.
as @nath writes, voltage on mine S+ 350 is always 0-10 and percent is 10 times more (10-100). But when battery goes to 50% it starts going back to dock for charging.
Interesting observations. I have a feeling that Bosch maybe experimenting a bit with their API and the sensors they have in the mowers.
I am currently rewriting the API as bad coding from a non-programmer (thats me!!!) flooded the API. Now I have reduced the traffic to the API to like 2-3 percent of the first version of the API. When this i done, I can begin experimenting with your readings for the battery percentage.
If you find a way to show, that my Indego has finished it’s work, it would be nice. When my mower is on 90% I now don’t know if it is finished or if it is just waiting on better weather.
I think that the Nextcutting-command could give us a clue. Wait until I give you the component with this data exposed. Then we can discover its values together and perhaps figure out what it does.
As I have seen it either shows:
Why it is cutting right now (last mowe send command)
Next planned cutting session (waiting due to time/clendar restictions or maybe weather)
All my spare time right now is focused on getting the API and the component working better. I havent had much time in experimenting with the mower itself…
My battery percentage doesn’t match the Indegos display either, but I think it’s the display that’s inaccurate. Mine Usually starts going back to the dock at 40-50 % (API) and I’ve seen it as low as 25% when it got lost and did several perimeter laps. At that point the display on the mower was showing 0%
It makes sense that it leaves a lot of reserve power to be sure it gets back to the dock, but interesting that they fudged the battery % info on the mower.
I got down to 2% shown by the API today, it was being a real idiot trying to get back to the dock for a full 45 minutes. So I think it’s safe to assume the API is returning good data.
I have release a beta on Github: 0.4b. Due to my shortage of time right now, I feel that I release this beta for you guys to try out the battery sensors. The big difference is that this beta doesnt flood the API with calls.
A couple of you have already began figuring out the API calls running directly against Bosch API server. But for the rest of you guys theese sensors may help us all to understand the numbers of our different models.
I am really struggling with learning the HA layout and programming. The API calls from python is simple, it is the HA part that is hard. There are progress, but it takes some more time for me to learn HA.
I am on vacation a few days this week, but keep posting here if you try the 0.4b and see bugs.
As I wrote on Github, no more time will be spent on this beta. I will spend the time on releasing the new version of the component instead.
Edit: new version will be released this weekend. I have been on fire and solved all the structural parts that I have been struggling with. I have e some testing to do and to release a new pypi package. Will be called 0.5.
Released version 0.5 of the component today. Please give me feedback on bugs!
Finally I am where I though i were in the devlopment two weeks ago. A big step backwards when the API was not working out as planned. Now I am ready to challenge the new battery percentage sensor and other feature requests.
Edit: Released version 0.6 also, with some error handling (due to unknown answers from API) and better Mower State handling!
I am trying to pull the attributes through as individual sensors with a template sensor. However the naming convention does not seem to work. For example:
in the sensor.indego_battery there is an attribute Battery temp. Surely this should be either Battery_temp or Batterytemp? My template sensors looks like this but is failing I think beacuse of the name of the attribute
If you want, I can make the temp as a sensor entity. I have thought about this and maybe it would be easier for you and more interesting for others to have an own sensor for this?
I think it would be good to get the naming convention right, but having said this, if you think you have the time, individual sensors would be fantastic! - Did you deploy the card in lovelace? Use the code in this thread as opposed to the one I sent you on github…