Coder Social home page Coder Social logo

syssi / esphome-jnge-mppt-controller Goto Github PK

View Code? Open in Web Editor NEW
11.0 4.0 3.0 28.05 MB

ESPHome component to monitor and control a JN-MPPT or JN-W/S Controller via RS485

License: Apache License 2.0

C++ 58.21% Python 41.61% Shell 0.18%
esphome esphome-component jn-mppt-mini jn-mppt-al jn-mppt-bl jn-mppt-cl hacktoberfest

esphome-jnge-mppt-controller's Introduction

esphome-jnge-mppt-controller

GitHub actions GitHub stars GitHub forks GitHub watchers "Buy Me A Coffee"

ESPHome component to monitor and control a JN-MPPT or JN-W/S Controller via RS485

Lovelace entities card

Supported devices

  • JN-MPPT-MINI Buck Solar Charge Controller
  • JN-MPPT-AL Buck Solar Charge Controller
  • JN-MPPT-BL Buck Solar Charge Controller
  • JN-MPPT-CL Buck Solar Charge Controller
  • JN-12-W300/S300, JN-12-W500/S500 Wind and Solar Hybrid Controller
  • JN-24-W600/S600, JN-24-W800/S800 Wind and Solar Hybrid Controller
  • JN-48-W800/S800, JN-48-W1000/S1000 Wind and Solar Hybrid Controller

Requirements

  • ESPHome 2022.2.0 or higher.
  • One half of an ethernet cable with RJ45 connector
  • RS485-to-TTL module (HW-0519 f.e.)
  • Generic ESP32 or ESP8266 board

Setup

Debugging

If this component doesn't work out of the box for your device please update your configuration to enable the debug output of the UART component and increase the log level to the see outgoing and incoming serial traffic:

logger:
  level: DEBUG

uart:
  id: uart_0
  baud_rate: 9600
  tx_pin: ${tx_pin}
  rx_pin: ${rx_pin}
  debug:
    direction: BOTH

References

esphome-jnge-mppt-controller's People

Contributors

syssi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

esphome-jnge-mppt-controller's Issues

Verify the error bitmask

The error bitmask doesn't look correct:

[18:05:14][D][sensor:127]: 'solar_charger error bitmask': Sending state 24576.00000 with 0 decimals of accuracy

jnge_select.h: No such file or directory

possibly one of those changes in the last 9 hours is stopping the build ?

would you be able to start doing version branches to allow a roll back ?

I cleaned the build files but its still stopping

checked the paths and I can see the files on git so unsure wtf its complaining about

unless its
#include "esphome/components/select/select.h"
this does not seem to exist ?

to get out of trouble I forked and rolledback to 9838256

INFO Reading configuration /config/esphome/esphome-web-410164.yaml...
INFO Updating https://github.com/syssi/esphome-jnge-mppt-controller.git@main
INFO Generating C++ source...
INFO Compiling app...
Processing esphome-web-410164 (board: d1_mini; framework: arduino; platform: platformio/espressif8266 @ 3.2.0)
--------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
Dependency Graph
|-- <ESPAsyncTCP-esphome> 1.2.3
|-- <ESPAsyncWebServer-esphome> 2.1.0
|   |-- <ESPAsyncTCP-esphome> 1.2.3
|   |-- <Hash> 1.0
|   |-- <ESP8266WiFi> 1.0
|-- <DNSServer> 1.1.1
|-- <ESP8266WiFi> 1.0
|-- <ESP8266mDNS> 1.2
Compiling /data/esphome-web-410164/.pioenvs/esphome-web-410164/src/esphome/components/jnge_mppt_controller/jnge_mppt_controller.cpp.o
Compiling /data/esphome-web-410164/.pioenvs/esphome-web-410164/src/esphome/components/jnge_mppt_controller/number/jnge_number.cpp.o
In file included from src/esphome/components/jnge_mppt_controller/jnge_mppt_controller.cpp:1:
src/esphome/components/jnge_mppt_controller/jnge_mppt_controller.h:8:10: fatal error: esphome/components/jnge_mppt_controller/select/jnge_select.h: No such file or directory
    8 | #include "esphome/components/jnge_mppt_controller/select/jnge_select.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
*** [/data/esphome-web-410164/.pioenvs/esphome-web-410164/src/esphome/components/jnge_mppt_controller/jnge_mppt_controller.cpp.o] Error 1
In file included from src/esphome/components/jnge_mppt_controller/number/jnge_number.h:3,
                 from src/esphome/components/jnge_mppt_controller/number/jnge_number.cpp:1:
src/esphome/components/jnge_mppt_controller/number/../jnge_mppt_controller.h:8:10: fatal error: esphome/components/jnge_mppt_controller/select/jnge_select.h: No such file or directory
    8 | #include "esphome/components/jnge_mppt_controller/select/jnge_select.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
*** [/data/esphome-web-410164/.pioenvs/esphome-web-410164/src/esphome/components/jnge_mppt_controller/number/jnge_number.cpp.o] Error 1
========================== [FAILED] Took 1.20 seconds ==========================

Apply different limits depending on the system voltage

At the moment the voltage limits of the system voltage 48V is applied to all number entities (min_value, max_value). The system voltage should be available/configurable at the schema too. So we can apply different limits per voltage.

Donation Option

Thank you for creating this, I looked around but could not find any paypal / buy coffee / beer options

I had bought over 20x of these units with wifi , but could NEVER get their damn software to work
as I am monitoring every single battery cell this works out good for me as I can just use my esp32 to collect the data and send it right to "Home Assistant"

can you verify

" Home Assistant you should replace the mqtt: component with the native api:"
does this mean

mqtt:
broker: !secret mqtt_host
username: !secret mqtt_username
password: !secret mqtt_password
id: mqtt_client

gets changed to

api:
broker: !secret HA_host
username: !secret HA_username
password: !secret HA_password
id: HA_client

JN-MPPT-AL Buck Solar Charge Controller

I have 30A chargers , I did buy them with wifi modules but could never get them to work

I also can not seem to get this to work either

most data I get is

[12:21:53][D][sensor:124]: 'jn-mppt status operation mode id': Sending state -1.00000  with 0 decimals of accuracy
[12:21:53][D][text_sensor:067]: 'jn-mppt status operation mode': Sending state 'Offline'
...
[12:25:38][W][jnge_mppt_controller:460]: The device didn't respond to the last 15 status requests

anyway to test the MPPT RJ45 ports that they are actually working ? or could they have changed the pinout ?

on the Elfin-EW11A
Pin 8 GND Brown X Pin 5
Pin 7 VCC Blue X Pin 7
Pin 6 B- Orange X Pin 1
Pin 5 A+ Green X Pin 3
Pin 4 Reload Empty
Pin 3 Empty
Pin 2 Empty
Pin 1 Empty

20220527_114803

The schematic I have does show Pins
1/2 RS485-B RS485-B
3/4 RS485-A RS485-A
5/6 GND Powerground
7/8 +12VDC 12V/400mA

everything seems fine apart from no communication going on , all the wifi module does is reboot loops all 20+ of them ...
I was really hoping to get this going , using these TTL turn RS485 module 485 to serial UART level mutual conversion hardware automatic flow control with esphome + Home Assistant

https://www.aliexpress.com/item/1005002970555534.html

also currently testing with a spare Wemos mini D1 , until esp32's arrive

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.