You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
lumapu fec8758de7 * fix empty inverters save on a brandnew ESP 2 years ago
..
WemosD1_NRF24_Case 3D-Model for a case for Wemos D1 2 years ago
html added command queue 2 years ago
include ESP32 support added 2 years ago
scripts added esp32 to release work flow 2 years ago
.gitignore * compiles with PlatformIO 2 years ago
CHANGES.md Update CHANGES.md 2 years ago
CircularBuffer.h ESP32 support added 2 years ago
README.md Merge pull request #200 from DanielR92/patch-10 2 years ago
User_Manual.md Merge branch 'development' into dev_private 2 years ago
ahoywifi.cpp ESP32 support added 2 years ago
ahoywifi.h ESP32 support added 2 years ago
app.cpp * fix empty inverters save on a brandnew ESP 2 years ago
app.h * fix empty inverters save on a brandnew ESP 2 years ago
config.h button on index to get FW-Version 2 years ago
crc.cpp first changes to prepare code for esp32 2 years ago
crc.h first changes to prepare code for esp32 2 years ago
defines.h added last alarm msg request 2 years ago
eep.h ESP32 support added 2 years ago
favicon.h Janitorial: Trailing whitespace tweaks 2 years ago
hmDefines.h added last alarm msg request 2 years ago
hmInverter.h improvment mqtt after add values 2 years ago
hmRadio.h improvment mqtt after add values 2 years ago
hmSystem.h added command queue 2 years ago
main.cpp * first refactored version which is accessible through web interface 2 years ago
mqtt.h MQTT reconnect delay, fixed ESP32 build 2 years ago
platformio.ini ESP32 support added 2 years ago
web.cpp improved generation of power limit control html select element 2 years ago
web.h ESP32 support added 2 years ago

README.md

OVERVIEW

This page describes how the module of a Wemos D1 mini and ESP8266 is wired to the radio module, flashed and how the further steps are to communicate with the WR HM series.

Compatiblity

For now the following inverters should work out of the box:

  • HM350
  • HM400
  • HM600
  • HM700
  • HM800
  • HM1200
  • HM1500

The NRF24L01+ radio module is connected to the standard SPI pins. Additional there are 3 pins, which can be set individual: CS, CE and IRQ These pins can be changed in the http:///setup URL or with a click on the Setup link.

ESP8266 electr. associate

Compile

This code can be compiled using Visual Studio Code and PlatformIO Addon. The settings were:

  • Board: Generic ESP8266 Module
  • Flash-Size: 1MB (FS: none, OTA: 502kB)
  • Install libraries (not included in the Arduino IDE 1.8.19):
    • Time 1.6.1
    • RF24 1.4.5
    • PubSubClient 2.8
    • ArduinoJson 6.19.4

Optional Configuration before compilation

  • number of supported inverters (set to 3 by default) config.h
  • DTU radio id hmRadio.h (default = 1234567801
  • unformated list in webbrowser /livedata config.h, LIVEDATA_VISUALIZED

Flash ESP with firmware

nodemcu-pyflasher (easy way)

  1. download the flash-tool nodemcu-pyflasher

  2. download latest release bin-file from ahoy_

  3. connect the target device with your pc.

  4. Set the correct serial port and select the correct *.bin file

  5. click now on "Flash NodeMCU"

  6. flash the ESP with the compiled firmware using the UART pins or any preinstalled firmware with OTA capabilities

  7. repower the ESP

  8. the ESP will start as access point (AP) if there is no network config stored in its eeprom

  9. connect to the AP, you will be forwarded to the setup page

X. configure your WiFi settings, save, repower Y. check your router or serial console for the IP address of the module. You can try ping the configured device name as well.

! ATTENTION: If you update from a very low version to the newest, please make sure to wipe all flash data!

pages

page output
/uptime 0 Days, 01:37:34; now: 2022-08-21 11:13:53
/reboot reboot dtu device
/erase
/factory
/setup
/save open the setup site
/cmdstat show stat from the home site
/visualization
/livedata
/json json output from the livedata
/api

Usage

The webinterface has the following abilities:

  • OTA Update (over the air update)
  • Configuration (Wifi, inverter(s), NTP Server, Pinout, MQTT, Amplifier Power Level, Debug)
  • visual display of the connected inverters / modules
  • some statistics about communication (debug)

The serial console will print the converted values which were read out of the inverter(s)

MQTT command to set the DTU without webinterface

Read here

Todo's See this post

  • Wechsel zu AsyncWebServer und ElegantOTA für Stabilität
  • klarer Scheduler / Task manager, der ggf. den Receive Task priorisieren kann
  • Device Info Kommandos (Firmware Version, etc.) über das Dashboard anzeigen Device Information ( 0x15 REQ_ARW_DAT_ALL ) SubCmd Kommandos #145
  • AlarmData & AlarmUpdate Parsen und auf eigener Seite darstellen

------------------ SWIM LANE ---------------------------