• MijnCommentaar
  • Registratie: April 2011
  • Laatst online: 21:47
Zojuist Zendure toegevoegd aan domoticz.
Het lijkt erop dat iedereen HA gebruikt. Ik wilde alleen monitoring en besturing door de App laten doen.
Ik heb gebruik gemaakt van het script wat hier gebruikt wordt.
https://forum.domoticz.com/viewtopic.php?t=45117

Nu wil ik ook nog een script maken wat mijn CT meter uitleest

  • Henry65
  • Registratie: December 2005
  • Laatst online: 19:36
MijnCommentaar schreef op zaterdag 10 oktober 2026 @ 14:00:
Zojuist Zendure toegevoegd aan domoticz.
Het lijkt erop dat iedereen HA gebruikt. Ik wilde alleen monitoring en besturing door de App laten doen.
Ik heb gebruik gemaakt van het script wat hier gebruikt wordt.
https://forum.domoticz.com/viewtopic.php?t=45117
Leuk dat je mijn scriptje gevonden hebt. Deze doet inderdaad alleen nog monitoring maar ik wil nog wel kijken of ik simpele (ont)laad besturing toe kan voegen. Als je op- of aanmerkingen hebt hou ik me aanbevolen.

  • MijnCommentaar
  • Registratie: April 2011
  • Laatst online: 21:47
Henry65 schreef op zaterdag 10 oktober 2026 @ 18:37:
[...]

Leuk dat je mijn scriptje gevonden hebt. Deze doet inderdaad alleen nog monitoring maar ik wil nog wel kijken of ik simpele (ont)laad besturing toe kan voegen. Als je op- of aanmerkingen hebt hou ik me aanbevolen.
ik vond het leuk om te vinden, ik ben geen HA fan dus was hier erg blij mee.

dit is mijn script wat ik gebruikt met een esp8266 en een 1306 display
op het scherm staan het vermogen baaterij in/uit en percentage vd batterij

#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>
#include <WiFiClient.h>
#include <ArduinoJson.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

// Display instellingen (I2C OLED SSD1306)
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_RESET -1
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

// WiFi instellingen
const char* ssid = " SID ";
const char* password = " Password ";

// Zendure IP-instelling
const char* zendureIP = "192.168.2.1; // Pas dit aan naar het echte IP van je Zendure

void setup() {
Serial.begin(115200);

// Initialiseer OLED-display
if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println(F("SSD1306 display niet gevonden!"));
for(;;);
}

display.clearDisplay();
display.setTextSize(1);
display.setTextColor(SSD1306_WHITE);
display.setCursor(0,0);
display.println("Verbinden met WiFi...");
display.display();

// Start WiFi
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}

Serial.println("\nWiFi Verbonden!");
display.clearDisplay();
display.setCursor(0,0);
display.println("WiFi Verbonden!");
display.display();
delay(1000);
}

void loop() {
if (WiFi.status() == WL_CONNECTED) {
WiFiClient client;
HTTPClient http;

String serverPath = "http://" + String(zendureIP) + "/properties/report";
http.begin(client, serverPath);
int httpResponseCode = http.GET();

if (httpResponseCode > 0) {
String payload = http.getString();

// Filter de JSON om geheugen op de ESP8266 te besparen (ArduinoJson v7 benadering)
JsonDocument doc;
DeserializationError error = deserializeJson(doc, payload);

if (!error) {
// 1. Haal de productnaam uit de hoofdmap
const char* product = doc["product"] | "Onbekend";

// 2. Navigeer naar de "properties" submap voor de vermogenswaarden
JsonObject properties = doc["properties"];

int inputPower = properties["outputPackPower"] | 0; // Zonnepanelen
int outputHome = properties["packInputPower"] | 0; // Stroom naar het huis
int batterySoc = properties["electricLevel"] | 0; // Batterij percentage (%)

// Optioneel: als je ook het vermogen IN/UIT de batterij wilt zien:
// int packPower = properties["outputPackPower"] | 0;

// Update het display met de juiste Zendure-data
display.clearDisplay();

// Regel 1: Productnaam
display.setTextSize(1);
display.setCursor(0, 0);
display.println(product);

display.drawLine(0, 12, 128, 12, SSD1306_WHITE); // Horizontale lijn

// Regel 2: Solar Input
display.setCursor(0, 18);
display.print("Batterij In: ");
display.print(inputPower);
display.println(" W");

// Regel 3: Huis Output
display.setCursor(0, 32);
display.print("Batterij Uit: ");
display.print(outputHome);
display.println(" W");
display.setTextSize(2);
// Regel 4: Batterij SOC
display.setCursor(0, 48);
//display.print("Batt SOC: ");
display.print(batterySoc);
display.println(" %");

display.display();

// Print ook naar Seriële monitor ter controle
Serial.print("Product: "); Serial.println(product);
Serial.print("Solar In: "); Serial.print(inputPower); Serial.println("W");
Serial.print("Home Out: "); Serial.print(outputHome); Serial.println("W");
Serial.print("Battery: "); Serial.print(batterySoc); Serial.println("%");
Serial.println("-----------------------");

} else {
Serial.print("JSON Parsing mislukt: ");
Serial.println(error.c_str());
}
} else {
Serial.print("Fout bij verbinden met Zendure: ");
Serial.println(http.errorToString(httpResponseCode).c_str());

display.clearDisplay();
display.setCursor(0,0);
display.println("Zendure Connectiefout");
display.display();
}
http.end();
}

delay(10000); // Vraag elke 10 seconden de status op
}
Pagina: 1 ... 53 54 Laatste

Let op:
  • Scripts/code graag tussen ~[code] ~[/code] tags voor de leesbaarheid.
  • dzVents vragen? Lees eerst even de wiki door!
  • Lees ook de openingspost door!
  • Sommige vragen kunnen opgelost worden door zelf even Google te gebruiken, probeer dat eerst voordat je een vraag hier stelt!