Tasmota für SDM630 erstellen

Begonnen von Microsuck, 29 April 2022, 15:26:24

Vorheriges Thema - Nächstes Thema

Microsuck

Hi,

ich habe einen SDM630 Drehstromzähler mit Modbus verbaut. Nun würde ich gerne Tasmota zum auslesen des Bus benutzten. Hierzu habe ich diese Anleitung gefunden
https://michael-heck.net/index.php/smarthome/haussteuerung/sdm-630-mit-tasmota-auslesen

Ich habe kein Arduino IDE installiert bzw. keine Ahnung wie ich damit umgehen soll. Habe die Tasmota Source in Visual Studio Code geladen und die my_user_config.h bearbeitet (WIFI, MQTT und die // vor dem define entfernt).
// -- Power monitoring sensors --------------------
#define USE_ENERGY_SENSOR                        // Add support for Energy Monitors (+14k code)
#define USE_ENERGY_COLUMN_GUI                    // Add support for column display in GUI (+0k5 code)
#define USE_ENERGY_MARGIN_DETECTION              // Add support for Energy Margin detection (+1k6 code)
  #define USE_ENERGY_POWER_LIMIT                 // Add additional support for Energy Power Limit detection (+1k2 code)
#define USE_ENERGY_DUMMY                         // Add support for dummy Energy monitor allowing user values (+0k7 code)
#define USE_HLW8012                              // Add support for HLW8012, BL0937 or HJL-01 Energy Monitor for Sonoff Pow and WolfBlitz
#define USE_CSE7766                              // Add support for CSE7766 Energy Monitor for Sonoff S31 and Pow R2
#define USE_PZEM004T                             // Add support for PZEM004T Energy monitor (+2k code)
#define USE_PZEM_AC                              // Add support for PZEM014,016 Energy monitor (+1k1 code)
#define USE_PZEM_DC                              // Add support for PZEM003,017 Energy monitor (+1k1 code)
#define USE_MCP39F501                            // Add support for MCP39F501 Energy monitor as used in Shelly 2 (+3k1 code)
//#define USE_SDM72                                // Add support for Eastron SDM72-Modbus energy monitor (+0k3 code)
  #define SDM72_SPEED          9600              // SDM72-Modbus RS485 serial speed (default: 9600 baud)
  // #define SDM72_IMPEXP                            // Show additonal import/export active energy and power in MQTT and Web (+0k5 code)
//#define USE_SDM120                               // Add support for Eastron SDM120-Modbus energy monitor (+1k1 code)
  #define SDM120_SPEED         2400              // SDM120-Modbus RS485 serial speed (default: 2400 baud)
//#define USE_SDM230                               // Add support for Eastron SDM230-Modbus energy monitor (+1k6 code)
  #define SDM230_SPEED         9600              // SDM230-Modbus RS485 serial speed (default: 9600 baud)
//  #define SDM230_MORE_REGS                        // read more registers (see xnrg_21_sdm230.ino, may cause timing issues (at your own risk, +0k4 code))
  #define USE_SDM630                               // Add support for Eastron SDM630-Modbus energy monitor (+0k6 code)
  #define SDM630_SPEED         9600              // SDM630-Modbus RS485 serial speed (default: 9600 baud)
  #define SDM630_IMPORT                        // Show import active energy in MQTT and Web (+0k3 code)
//#define USE_DDS2382                              // Add support for Hiking DDS2382 Modbus energy monitor (+0k6 code)
  #define DDS2382_SPEED        9600              // Hiking DDS2382 Modbus RS485 serial speed (default: 9600 baud)
//#define USE_DDSU666                              // Add support for Chint DDSU666 Modbus energy monitor (+0k6 code)
  #define DDSU666_SPEED        9600              // Chint DDSU666 Modbus RS485 serial speed (default: 9600 baud)
//#define USE_SOLAX_X1                             // Add support for Solax X1 series Modbus log info (+3k1 code)
  #define SOLAXX1_SPEED        9600              // Solax X1 Modbus RS485 serial speed (default: 9600 baud)
//  #define SOLAXX1_PV2                            // Solax X1 using second PV
//#define USE_LE01MR                               // Add support for F&F LE-01MR Modbus energy monitor (+1k code)
  #define LE01MR_SPEED         9600              // LE-01MR modbus baudrate (default: 9600)
  #define LE01MR_ADDR          1                 // LE-01MR modbus address (default: 0x01)
#define USE_BL09XX                               // Add support for various BL09XX Energy monitor as used in Blitzwolf SHP-10 or Sonoff Dual R3 v2 (+1k6 code)
//#define USE_TELEINFO                             // Add support for Teleinfo via serial RX interface (+5k2 code, +168 RAM + SmartMeter LinkedList Values RAM)
//#define USE_IEM3000                              // Add support for Schneider Electric iEM3000-Modbus series energy monitor (+0k8 code)
  #define IEM3000_SPEED          19200           // iEM3000-Modbus RS485 serial speed (default: 19200 baud)
  #define IEM3000_ADDR           1               // iEM3000-Modbus modbus address (default: 0x01)
//  #define IEM3000_IEM3155                        // Compatibility fix for Iem3155 (changes Power and Energy total readout)
//#define USE_WE517                                // Add support for Orno WE517-Modbus energy monitor (+1k code)



Wenn ich dann mit platformio run -e tasmota eine Firmware erstelle Fehen die Einträge für SDM630 in den Pinzuweisungen. Was mache ich falsch bzw. habe ich etwas vergessen. Ist meine erste Firmware ich ich selbst erstelle. Bis dato haben die fertigen ausgereicht.

Danke

Microsuck

stefanne

Hallo:

1: ich habe folgendes Gerät gefunden: https://www.ebay.de/itm/154058806297 Modbus MQTT Gateway SDM630
2: Tasmota hat eine Page für Smart Meter: https://tasmota.github.io/docs/Smart-Meter-Interface/#sdm530-modbus
Allerdings nicht genau dein Gerät. Ggf: das Datenblatt des Herstellers suchen. Für meinen ABB habe ich die Modbus Register gefunden.
3: Zur Zeit codiere ich noch in Arduino: https://github.com/StefanNetzer/Elli-ID-Charger-PV.
4: Ich plane erst später auf Tasmota umzustellen. Tasmota in VS Code benötigt noch PlatformIO, damit du ein Image bauen kannst.
    Link dazu: https://tasmota.github.io/docs/PlatformIO/ und https://docs.platformio.org/en/latest/integration/ide/vscode.html#project-tasks

Viel Erfolg
Stefan