diy solar

diy solar

Off-grid Solar / Battery monitoring and control freeware

BarkingSpider

Carbon Lifeform
Joined
Apr 14, 2020
Messages
440
Location
Silicon Valley, CA
Im building a freeware realtime software/hardware monitoring solution that provides intimate details and decision making information about a solar system.

I intend to be fully off grid in the near future and want to be self sufficient for power. My goal is complete control over every aspect of the power generation from any location and the ability to redirect solar energy when batteries are full to fully utilize every watt of power available.

Im making good progress using Linux/Pi micro servers, Wifi, Epever inverters, RS485 ModBus drivers and Grafana / Cloud infrastructure for access. I have a 10kw grid tied system and for testing I use 2kw off grid 24v setup with 4kw of AGM and 14kw of BYD LifePO4 cells.

If anyone is interested in helping me build/test an open source system that anyone can use with commodity hardware, let me know. A new forum for this would be beneficial.

Here are some of the screen shots from my Ipad of my progress so far. I can access this info from any device and from any location. Joe.8195CE26-902F-4671-BAEB-7AD93871137C.png1258C625-ED2B-443D-AB66-12CF757C26ED.png15546732-3CE9-43F3-A2B9-CB06CFC6F5CD.png
 
Last edited:
very cool! nice job! don't think i'm a great candidate, but I commend what you are doing.
 
Hi Craig, You will need some type of internet access if you want remote access. I push the data from my network out out the cloud (Google). Its just a small text file every 10 seconds. If you dont have wired internet, you can only view the data locally. If you have cellular, you need to make a hotspot or get a cellular modem to view the data globally.

The bulk of the system is software on a raspberry Pi. It polls the data port on the Epever (or equivalent), creates the reports, then optionally scp’s the data to the cloud where the reports are reproduced. My Linux cloud server at Google is around $6 a month.

I want to build a image for the Pi that has all the software reconfigured, so all a new user need to do is plug the Pi into the inverter via the USB port. Then point their web browser at the raspberry Pi to get the reports.

I can do all or most of the coding and development, but wanted to know who else might be interested as a user or tester/developer to speed things along and try on other solar equipment.

The total cost of the required hardware is reasonable, the Pi is under $50. Let me know if you have any other questions.
 
Hi. Craig, we could interface your Chargery BT BMS units and display that data graphically also. I need 3 of the 8s units for my 24v BYDs, do you have any left?
 
First question is how do you access off grid location via cellular internet.

search "att ipad $20 postpaid plan" and stick the resulting SIM in a lb1120 or unite explore

if OP can work on getting the upload amounts down to 1MB/mo there's a $70 IoT modem for Pi's that come with 1mb/mo free.
 
I have a spare pi3, odroid c2, also a few junker low power laptops.

just got in a epever and mpp2424. my location has wifi coverage. can use google or my cheapo VPS as a data target.

my original plan was just to use usbip and whatever stock monitoring software.
 
search "att ipad $20 postpaid plan" and stick the resulting SIM in a lb1120 or unite explore

if OP can work on getting the upload amounts down to 1MB/mo there's a $70 IoT modem for Pi's that come with 1mb/mo free.
The problem is you can just SSH into these hotspot devices. I have 2 Verizon mifi that only cost me 10 bucks a month. But I can not dial them up. Getting data out is simple. Controlling remote devices not so simple
 
The problem is you can just SSH into these hotspot devices. I have 2 Verizon mifi that only cost me 10 bucks a month. But I can not dial them up. Getting data out is simple. Controlling remote devices not so simple

I think OP is just pushing data out, so I don't guess that's an issue in their use case.

many users have tackled your issue. check the homelab or homeserver subreddits for tons of options.

from what I know most of them tackle it with a vpn or reverse tunnel with a keepalive

this could be handled by a pi easily, but you could set it up on many router distros.
 
SSH access is all that is needed. I can push/pull to control data using the same tunnel out to the cloud. I have all the software for the SSH tunnel working well. Basically if you can dial out, your good to go. Please send me data on the best solutions. The Verizon mifi sounds perfect, whats the data limit? What HW do you need?

BTW, Im charging my BMW i3 with my off-grid solar system, its only using 120v / 1400W giving me 5% charge an hour, but its working. Great to see the data on the charts as its working.
 
My Mifi have virtually unlimited data . So bandwidth is not a real issue. One of there issues is that they turn off when no devices are connected. i think it is a setting but its a pain in the ASS and they do not have Ethernet ports. That's why I use 2 as my buildings are too far from each other and It does give me some redundancy for my cameras.
 
Do you need an existing verizon plan for mifi?
Is there a standalone device at low cost for internet access available? Speed and data only need to be on the low end.
 
Im building a freeware realtime software/hardware monitoring solution that provides intimate details and decision making information about a solar system.

I intend to be fully off grid in the near future and want to be self sufficient for power. My goal is complete control over every aspect of the power generation from any location and the ability to redirect solar energy when batteries are full to fully utilize every watt of power available.

Im making good progress using Linux/Pi micro servers, Wifi, Epever inverters, RS485 ModBus drivers and Grafana / Cloud infrastructure for access. I have a 10kw grid tied system and for testing I use 2kw off grid 24v setup with 4kw of AGM and 14kw of BYD LifePO4 cells.

If anyone is interested in helping me build/test an open source system that anyone can use with commodity hardware, let me know. A new forum for this would be beneficial.

Here are some of the screen shots from my Ipad of my progress so far. I can access this info from any device and from any location. Joe.View attachment 11780View attachment 11777View attachment 11776
This is awesome B/Spider. Without hijacking your thread can you please suggest the best Raspberry Pi 4 starter kit to buy. I am an old school PLC
guy and want to venture in the 'new world' . Any advice will be appreciated , thanks.
 
Do you need an existing verizon plan for mifi?
Is there a standalone device at low cost for internet access available? Speed and data only need to be on the low end.

a quick google led me to the "hologram nova" which is apparently out of stock, but is a $70 usb modem for the raspi to do IoT stuff that has a sim card with 1MB/mo included. searching reddit/hackaday should lead to more options.
 
This is awesome B/Spider. Without hijacking your thread can you please suggest the best Raspberry Pi 4 starter kit to buy. I am an old school PLC
guy and want to venture in the 'new world' . Any advice will be appreciated , thanks.
Just buy a pi4 from Amazon. And an 16gb SD card. They use a USB C for power if you do not have one.
I interface over SSH from my computer. If you want stand alone you will need USB keyboard and mouse. Plus micro HDMI to HDMI
 
For the Pi4 I chose this model with 4GB. https://www.amazon.com/gp/product/B07VYC6S56/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1
Get a 32GB card (2 for $20), this makes for a fast development machine that can do anything.

For deployment get the Pi Zero, way cheaper .. https://www.amazon.com/gp/product/B0748MPQT4/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

again use the 32GB card, storage is so cheap now just a few dollars more than 16GB, allows for future expansion and other projects.

Use this USB adapter to power your Pi Zero, plugs right into the Epever Triton series... https://www.amazon.com/gp/product/B07NKNBZYG/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

Then you run a usb/rs485 cable straight into the Epever data port and your up and running. https://www.amazon.com/gp/product/B081JW5M4L/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

I will post a cheat sheet on how to get the charts all up and running as soon as its ready. For now post any questions here.
 
For the charts Im making now, I understand most inverters that support the MT-50 remote display will work. Basically the Pi replaces the display and reads the raw values from the inverter using ModBus and Python. It then loads this ASCII data into a Prometheus database which is read by Grafana which shows all the graphical information. You then access the information with any web browser locally.
Optionally you can push the ASCII data into the cloud using SSH and load the DB/Grafana there. Then you can view the data from anywhere. I use a Centos cloud server at google which costs around $6 month, but they are offering 1 year free right now if you have a google email account.

Here is a selection of the data available on the Epever MPPT series inverters you can play with on the Pi. I read this every 5 seconds.

Device Description: {0: 'EPsolar Tech co., Ltd', 1: 'TriRon4210', 2: 'V01.54+V01.22'}
0x3100: pvVoltage: 73.2 v
0x3101: pvCurrent: 0.32 a
0x3102: pvPowerL: 23.46 w
0x3104: batteryChargeV: 27.28 v
0x3105: batteryChargeC: 0.86 a
0x3106: batteryChargePowerL: 23.46 w
0x310C: loadVoltage: 27.28 v
0x310D: loadCurrent: 0.0 a
0x310E: loadPowerL: 0.0 w
0x3110: batteryTemp: 22.85 c 73.13 f
0x3111: deviceTemp: 33.56 c 92.408 f
0x311A: Battery S.O.C: 100.0 %
0x3300: pvMaxInVolts: 82.36 v
0x3301: pvMinInVolts: 0.0 v
0x3302: batMaxVolts: 27.59 v
0x3303: batMinVolts: 26.47 v
0x3304: consumedEnergyTodayL: 80 w/h
0x330C: genEnergyTodayL: 750 w/h
0x3200: batteryStatus: 0000000000000000 bits
0x3201: equipStatus: 0000000000000111 bits
runningOk: 1
chargeStatus: 1 Float
pvError: 0
0x9000: batType: 0
0x9001: batCap: 160 ah
0x9002: batComp: 0
0x9003: hiVDiscon: 31.1 v
0x9004: chargeLimitV: 30.0 v
0x9005: overVRecon: 30.0 v
0x9006: eqVolts: 29.0 v
0x9007: boostV: 29.0 v
0x9008: floatV: 27.2 v
0x9009: boostReconV: 25.2 v
0x900A: loVRecon: 24.0 v
0x900B: underVRecover: 24.4 v
0x900C: underVWarn: 24.0 v
0x90OD: loVDiscon: 22.2 v
0x900E: dischargeLimitV: 22.0 v

Battery is Charging in Float mode at 23.46 Watts
Sun 26 Apr 2020 02:29:43 PM PDT

I will add support for balancers soon so you can chart cell voltages. I will start with the Chargery 8 units.
 
is your code optimized for SD storage? this probably isn't a big of a issue as it used to be.

many people running their NAS or embedded device on sd/usb storage do as much as possible to prevent writes to the SD. writing logs and such to memory only.

there are now SD cards/flash drives made to be less likely to fail is this situation, but I've roasted a regular SD card with a dashcam.
 
Storage is not a problem anymore, plus its so cheap < $10 for 32GB, I don't consider it an issue like it was when SD cards first came out.
My plan is to release an entire install module for the Pi so its an easy download and 1 line installation. This will be for a specific set of hardware like Epever MPPT inverters initially, but after we can start to add other popular devices that support data export.

Additionally I write heavily used transient files into a ramdisk, this helps performance and avoids SD IO issues.
 
Storage is not a problem anymore, plus its so cheap < $10 for 32GB, I don't consider it an issue like it was when SD cards first came out.
My plan is to release an entire install module for the Pi so its an easy download and 1 line installation. This will be for a specific set of hardware like Epever MPPT inverters initially, but after we can start to add other popular devices that support data export.

Additionally I write heavily used transient files into a ramdisk, this helps performance and avoids SD IO issues.
When you are ready to offer this product I'm willing to pay for it! I have the Pi's in hand and the Epever!

Not so sure I'm fit to test anything. Unless you want to see if a total dumba$$ can use it. In that case I'm your man. I will pay for it tho!
 
You can buy me a few beers if it does what you want. You can help me with your feedback and new feature requests. I intend to make it fully public domain. Its so damn useful.

Right now Im comparing resting voltages of my 24v LifePO4 bank after using different charging profiles. Watching the voltages drop on a graph in realtime makes it so much easier to understand.

Here I compare 3 days of data overlayed on the same graph. The shaded voltage is now and the dotted lines are the voltages at the same time yesterday and the previous day. I charged for longer today and increased my battery capacity.

voltages.jpg

You can imagine how useful this will be when it can plot individual cell voltages and compare them at different charge levels and loads. In addition to having a permanent record of all the data from your power system that you can view in any way imaginable.
 
Last edited:

diy solar

diy solar
Back
Top