MQTT output structure for SBMS0

91 views
Skip to first unread message

John Gibson

unread,
Jul 16, 2021, 11:12:22 AMJul 16
to electrodacus
I am trying to build an interface to monitor my SBMS0 using its MQTT outputs.  However I am struggling to gain a full understanding of all of the various messages that the unit is sending.  

By chance is there a document that describes ALL of the messages provided?  By way of example, below is an output I am receiving.  Many of the values are self explanatory, however others not so much.  For instance I really need definitions for the data in the "currentMA" messages.  Thank you

-----------------------------------------------------------------------------------------------------------------------------------
"{"time":{"year":0,"month":1,"day":1,"hour":14,"minute":58,"second":48},

"soc":96,"

cellsMV":[3468,3481,0,0,0,0,3477,3583],

"tempInt":27,

"tempExt":-45,

"currentMA{"battery":64853,"pv1":0,"pv2":0,"extLoad":0},"ad2":0,"ad3":0,"ad4":0,"heat1":0,"heat2":10937,

"flags":{"OV":false,"OVLK":false,"UV":false,"UVLK":false,"IOT":false,"COC":false,"DOC":false,"DSC":false,"CELF":false,"OPEN":false,"LVC":false,"ECCF":false,"CFET":true,"EOC":true,"DFET":true,"delta":115}}"

Bernd

unread,
Jul 18, 2021, 6:48:08 AMJul 18
to electrodacus
I´m still struggeling with the \\ bug in the rawdata page, causing wrong data and thinking on a switch from rawdata parsing towards mqtt.
most of the data is self-explaning (if you have used sbms0 for a couple of months.

4 questions for me:

1.) Is the "MQTT howto setup and usage" now part of the "beginners guide to sbms0" or did I miss something here?
2.) I asume the \\ bug is not part of the mqtt data as there is no base91 coding in place (which is more usable for normal humans :-)) correct?
3.) Any new known bugs in mqtt data? 
4.) is the level setting available via MQTT -> I have a dual PV array config and like to see If I am on Level 1, 2 or 3...

Here is a quick and dirty docu of what I understand from the mqtt data:
-> time is the current data and time set in SBMS0 -> 1.1.2000 14:58:48 -> you did not set date and time in your sbms0
-> SOC is state of charge in percenet -> 96%
-> cellsMV -> this is your cell data in millivolt per cell -> 3.468V 3.481V 3.477V and 3.583V -> you have a 12V system (the empty 4 values are for 24V systems)
->tempint -> internal temperature of the sbms in degree celsius -> 27 degrees C
->tempext -> external temperature -> you have no external sensor
-> currentMA -> current you are using in milli ampere (????) -> now sure if these values are correct for your systesm
-> flags -> all flags of the SBMS0 -> CFET -> charge fet (charging is ON if true)  etc. 

Bernd

unread,
Jul 18, 2021, 6:54:12 AMJul 18
to electrodacus
I did use google and found this 


it contains a link to a full mqtt docu 

Soggy Paws

unread,
Jul 18, 2021, 8:55:21 PMJul 18
to electrodacus
Hi John & Bernd, I am the author of the Soggy Paws Electrodacus page, and have published a document that I created to help ME remember what I did to set up MQTT first on my Windows Computer and then on a Raspberry Pi.  It should be helpful to you as well. I opted to use Mosquitto as my MQTT broker rather than going with a cloud-based MQTT solution, because we are on a sailboat and often do not have any connection to the cloud.  It's working well for me.
Here's a direct link to the PDF file:
http://svsoggypaws.com/files/lifepo4/Getting%20Started%20on%20Windows%20and%20RPi%20with%20the%20Electrodacus%20v.002.pdf
If there's anything you don't understand, I'd be happy to answer any questions and help you through the process.  I can also send you a copy of my latest Node Red flows file to get you started, though the one in the Appendix of the document is pretty up to date.  I have since added a graph showing the currents (Load, PV, and Battery), and an interface to my Morningstar Tristar Solar Controller, so I can see the MPPT state, and the actual current that the PV array is putting out (since the Electrodacus is only measuring the total current from all charging sources).
Sherry s/v Soggy Paws

John Gibson

unread,
Jul 19, 2021, 10:22:25 AMJul 19
to electrodacus
Thanks to all.  I have read the guide and all other information I can find.  Again, most are self explanatory but I cannot determine the following:

  • "ad2":0,"
  • ad3":0
  • ,"ad4":0
  • ,"heat1":0,
  • "heat2":10937,

Any ideas?  Also Soggy, you had sent me your NR flows a while back which is what I am working from.  If you are willing to share your latest...that would be wonderful.

Soggy Paws

unread,
Jul 19, 2021, 9:27:53 PMJul 19
to electrodacus
From a discussion on this Google Group about a year ago, I saved this info:

AD2 and AD3 - user available ADC inputs the value is the digital output of the ADC.

ht1, ht2 - reserved for power output of the DMPPT450

Here's a link to that discussion:

Google Group Discussion July 27, 2020

In the Electrodacus Manual, Section 11.6, Dacian says "This is just useful for development there are some raw ADC readings and the content of the ISL94203 memory again as raw data.

Since I used this during development I decided to leave in the final release but is not useful for most people."

Reply all
Reply to author
Forward
0 new messages