diy solar

diy solar

Solar Assistant - data logger

Not sure it'd matter if I did as I have little idea about what tools to look for let alone what to do with one.

I have zero idea what pbms.exe is or does and my google search didn't enlighten me either - it was mostly just links discussing whether it was a virus.
Lol! Pbms is a windows application written by one of the bms vendors that lets you talk to your bms and look inside the batteries. And, Yeah, I had a stroke 6 yrs ago and switched to MacOS and I never looked back.it's shocking how easy it is to use iOS and macOS. I was/am about as expert as it comes to Windoze. I absolutely despise the platform but out of necessity (100 employees, all Windows) I had no choice and have to support it.

HOWEVER, getting pbms to work on my only remaining Dell micro computer I have here at the house was an exercise in patience. It's still on Windoze 7!! But a "quick" (nothing is quick on windows) install of dot.net, a few device drivers and it all worked.

if anyone needs the software, I'm happy to upload it here.

it should run under windows emulation on macOS if you have that, but I'm not going there...
 
it should run under windows emulation on macOS if you have that, but I'm not going there...
I let my VMware Fusion expire. I used to have to use Windows on my Mac because of an application I wrote in Excel VB which only worked on the Windows version. But I retired from that and once MacOS was upgraded, my VMware was no longer useable (needed to be upgraded) and I saw little point paying to update something I no longer use.

I do have access to an old Windows desktop that somehow managed to get Win10 operating on it, so if I really need to I can drag that out (ugh) but I'll first wait to see how I go with this RS232 cable once it arrives.
 
Unfortunately no luck this morning getting the battery communications talking with Solar Assistant.

SA recognised the USB adapter just fine:

View attachment 109787
The cable I cut to expose the wires was correctly colour coded as per the RJ-45 pin out diagram.

I tried various combinations of A+ and B- connections as per the table below without success in establishing a communications link to the battery.

I repeated the exercise using different DIP switch settings as indicated in the table below.

For DIP switch changes I switched the batteries off, made the switch change and turned battery back on.

As per robby's suggested I waited quite a while between changes to allow SA time to attempt to establish comms.

I then went through each option a second time, just in case. No luck, none of the following combinations worked.

View attachment 109790

Unless there are other combinations I should try, I guess I'll order the Jakiper RS-232 cable which power.esrl3 suggested.
You must have the new version of pace bms like the 5U version of jakiper-like battery, you could tell it's new if the current inverter protocol wont show in the pbms tools.

Mine's the same. I tried all my might with rs485 (different pinout configs) both for PC and SA, no luck. So your only best bet is RS232 adaptor. You could order from sok or jakiper, whichever you like. It should work.

Edit:
Dip settings. If you only have single battery, all 0 should work fine. If multiple, you should make 1 master (1000).
 
have SA working with my SPF Growatt. so much better than the Shinecrap software.

anyone know if the Growatt "sites" are customizable? as in, being able to rearrange/show/hide graphs? I can't find any documentation on it, so I assume no.

the emulated BMS seems pretty accurate so far for SoC. good stuff.
 
Does anyone here have Node Red controlling their inverter's operating mode via Solar Assistant?

I have managed to get Node Red to see all the MQTT data streams supplied by SA but am most unsure about how to send MQTT commands to SA to, for instance, change the load source priority or to change the charger source priority.

I can do both of those via Home Assistant but would like be able to do it directly with Node Red.

I am at early stages of learning Node Red but it would seem to provide a pretty decent way to build energy system automations.
 
Controlling SA via MQTT was just released. It takes some careful setup but the guide is pretty complete. I'm planning on testing it when I have some spare time.

Start here and get this working first, then use Node Red to send control messages via MQTT

This has a pretty good tutorial on the publish node of nodeRed

Then, use this MQTT message format in the publish node
'solar_assistant/inverter_1/output_source_priority/set' -m 'Utility first'

Jeff
 
Last edited:
Start here and get this working first, then use Node Red to send control messages via MQTT
Thanks, I already have that all set up and have been able to "listen" to the stream of Solar Assistant MQTT messages in Node Red.

But sending instructions to Solar Assistant to change the inverter's parameters or mode of operation I'm very unsure about.

I read the guide but I'm still unsure about what goes where.

Let's say I want to change the Charger Source Priority to "Solar and utility simultaneously"

and I have:
solar_assistant/inverter_1/charger_source_priority/state

This is the edit window for the MQTT out node:

Screen Shot 2022-09-06 at 7.24.47 pm.png

The server is correct.

The rest I'm unsure about.

What do I put in the Topic field?
QoS?
Retain?
Name?

'solar_assistant/inverter_1/output_source_priority/set' -m 'Utility first'

In the above example, are the single quote marks required?

what is
set' -m
?

If I complete the fields in the MQTT out node and deploy it, is that now sending a constant stream of that instruction to the broker?

I only want such an instruction to be sent based on whatever logical flow I set up to trigger it. No more, no less.

How do I know if the instruction has been sent/received/acted on? I mean within Node Red, is there a confirmation response to look out for from Solar Assistant?

Not sure I know all the topics I can listen to but I think these are all the topics I have available, I may have missed one or two. The ones in red are parameters I might possibly be able to change with Node Red.

1662457581679.png

Sorry for all the questions but I find all the guides seem to gloss over stuff, with lots of assumed knowledge.
 

Attachments

  • 1662456504535.png
    1662456504535.png
    5.3 KB · Views: 5
I agree, lots glossed over in examples. This is a great question best asked in the home assistant forums. I'm no Node Red expert, and youll get Node Red experts there. You've got all the basics, now the specifics. If this is the message received via Mqtt from SA, you'd want to send the same msg to set it

1662485002065.png

1662485049787.png

here's the Node Red community
 
I agree, lots glossed over in examples. This is a great question best asked in the home assistant forums.
Thanks. I'll see how I go. It might be I need to ask in the Node Red forums as I'm not really seeking to use HA for control logic, rather just use NR directly with Solar Assistant.

I currently have a few basic HA automations operating to change inverters operating mode but the level of automation logic I'd like is probably going to make setting up in HA a bit convoluted.

I want to use various inputs to decide what (and when) changes to make to my off-grid system's operating status, such as:
Battery state of charge
Time of day
Time of use tariff period
Level of excess solar PV output available from my grid tied PV system (I can divert to help charge the batteries)
Weather
Solar production forecasts
etc
 
Thanks. I'll see how I go. It might be I need to ask in the Node Red forums as I'm not really seeking to use HA for control logic, rather just use NR directly with Solar Assistant.

I currently have a few basic HA automations operating to change inverters operating mode but the level of automation logic I'd like is probably going to make setting up in HA a bit convoluted.

I want to use various inputs to decide what (and when) changes to make to my off-grid system's operating status, such as:
Battery state of charge
Time of day
Time of use tariff period
Level of excess solar PV output available from my grid tied PV system (I can divert to help charge the batteries)
Weather
Solar production forecasts
etc
Im right there with you! And Node Red seems like a good platform for exactly this, I just haven't spent the time with it to really learn it yet. Seems like a good Winter project.
 
It might be I need to ask in the Node Red forums as I'm not really seeking to use HA for control logic, rather just use NR directly with Solar Assistant.
It occurs to me the MQTT out node Topic string required to make an inverter parameter change via SA is probably something specific to SA and that's the missing piece of this puzzle for me.

Which is why I was curious about the set' -m when you had this in your earlier example:
'solar_assistant/inverter_1/output_source_priority/set' -m 'Utility first'
I'd just assumed from that it was some kind of instruction included in the payload which you were using successfully to change the inverter's setting via SA.

I've sent Pierre at SA an email asking for clarification. Hopefully he can help with some guidance and I can get this working.

I'll share what I learn.
 
Well, it seems to work using these settings connecting to the SA mqtt server OR the Mosquitto server I have running on HOME ASSISTANT

1662506990269.png
1662507005128.png

1662507244620.png
And hitting the inject button definitely changes it to Utility.

However, after a few seconds, it switches back to Solar/Battery/Utility as you can see on the second mqtt message in the first screen shot. Im not sure why. SA is controlling that.

But, progress.

EDIT - I had a power profile running. If I DEAACTIVATED that, it stays in Utility mode. So working afteralll!

1662507595954.png
 

Attachments

  • 1662507541016.png
    1662507541016.png
    330.1 KB · Views: 6
Last edited:
Well, it seems to work using these settings connecting to the SA mqtt server OR the Mosquitto server I have running on HOME ASSISTANT
Cool. So in the inject node you set

Message topic to:
solar_assistant/inverter_1/output_source_priority/set -m

and
Payload to:
Utility First

Any clues on what the "-m" is for?
 
Cool. So in the inject node you set

Message topic to:
solar_assistant/inverter_1/output_source_priority/set -m

and
Payload to:
Utility First

Any clues on what the "-m" is for?
Yes but no -m. I’m not sure what -m is for. Perhaps Pierre can enlighten us.

Edit: looks like “retained message”

 
I've been trying to get it to work but no luck so far.

After injecting the setting per below, there is no change to the inverter's operating mode.

Screen Shot 2022-09-07 at 11.04.10 am.png

Screen Shot 2022-09-07 at 11.05.24 am.png
 
And youre looking here for the change, right? And you've disabled the power profile?
Yes to both. I don't use the battery state of charge management in the power profile. I have in the past but it's a bit limited for my use case.

In any case this NR set up doesn't invoke the setting change in SA. There must be something I'm missing.
 
Back
Top