-
Notifications
You must be signed in to change notification settings - Fork 3
IPEM Integration with Domoticz
IPEM ‘IPEM_1_Test_Code_ATM90E32_ATM90E36’ contains a number of options, some of which will configure the code to publish directly to Domoticz.
Assuming you have already calibrated the IPEM board, or taken the defaults for voltage and current settings, this wiki page allow you to easily setup for publishing to Domoticz, based on the ATM90E32.
A list of the various options can be found in Wiki
Quick Setup
file : \include\Domoticz.h
- Const ssid
- network SSID - Case Sensitive
- Const password
- WiFi Network password - Case Sensitive
- Const domoticz_server
- Domoticz Server IP Address (Typically a Fixed Local Address)
- Variable port
- Domoticz Network Port (Default)
- Variable EnableDomoticz
- Set to true
-
Domoticz Hardware Device Indexes
- A number of variables, prefixed with 'idx', are used to enable(if > 0), or disable (if 0), publishing of the related data.
- Default of these index variables is 0.
- Device needs to be created in Domoticz.
- example: int idxLineVoltage1 = 82; Will publish Line Voltage 1 to index 82.
- A number of variables, prefixed with 'idx', are used to enable(if > 0), or disable (if 0), publishing of the related data.
Publish Frequency
Once the WiFI is configured and the Index setup, IPEM will continually publish index values every 1 second. This loop frequency can be easily changed in **\src\main.cpp **
Just change LoopDelay = 1, to whatever you need. Loop Delay in Seconds, i.e LoopDelay = 5 will be 5 seconds.
Example Settings
int idxLineVoltage1 = 82; // LineVoltage1 - Urms - Line 1 Voltage RMS
int idxLineVoltage2 = 0; // LineVoltage2 - Urms - Line 2 Voltage RMS
int idxLineVoltage3 = 0; // LineVoltage3 - Urms - Line 3 Voltage RMS
int idxLineVoltageAverage = 0; // LineVoltageAverage - Urms - Line Average Voltage RMS (V1+V2+V3/3)
int idxLineVoltageTotal = 0; // LineVoltageTotal - Urms - Line Voltage Total RMS (V1+0+V3)
int idxLineCurrentCT1 = 83; // LineCurrentCT1 - Irms - Line 1 Current RMS
int idxLineCurrentCT2 = 84; // LineCurrentCT2 - Irms - Line 2 Current RMS
int idxLineCurrentCT3 = 85; // LineCurrentCT3 - Irms - Line 3 Current RMS
int idxLineCurrentCT4 = 0; // LineCurrentCT4 - Irms - Line 4 Current RMS (ESP)
int idxLineCurrentCTN = 0; // LineCurrentCTN - Irms - Line N Current RMS
int idxLineCurrentTotal = 0; // LineCurrentTotal - Irms - Line Total Current RMS (CT1+CT2+CT3+(CT4))
int idxCalculatedPowerCT1 = 86; // Calculated Power V*A Watts RMS
int idxCalculatedPowerCT2 = 87; // Calculated Power V*A Watts RMS
int idxCalculatedPowerCT3 = 88; // Calculated Power V*A Watts RMS
int idxCalculatedPowerCT4 = 0; // Calculated Power V*A Watts RMS (ESP)
int idxCalculatedTotalPower = 0; // CalculatedTotalPower
int idxActivePowerCT1 = 89; // ActivePowerCT1 - Pmean - Line Mean Active Power
int idxActivePowerCT2 = 90; // ActivePowerCT2 - Pmean - Line Mean Active Power
int idxActivePowerCT3 = 91; // ActivePowerCT3 - Pmean - Line Mean Active Power
int idxTotalActivePower = 0; // TotalActivePower - Pmean - Line Mean Active Power
int idxActivePowerImportCT1 = 92; // ActivePowerCT1 - Pmean - Line Mean Active Power Import
int idxActivePowerImportCT2 = 93; // ActivePowerCT2 - Pmean - Line Mean Active Power Import
int idxActivePowerImportCT3 = 94; // ActivePowerCT3 - Pmean - Line Mean Active Power Import
int idxTotalActivePowerImport = 0; // TotalActivePower - Pmean - Line Mean Active Power Import
Example Output
Sending Message to Domoticz #82 245.54 LineVoltage1
Sending Message to Domoticz #83 0.67 LineCurrentCT1
Sending Message to Domoticz #84 0.64 LineCurrentCT2
Sending Message to Domoticz #85 0.65 LineCurrentCT3
Sending Message to Domoticz #86 164.51 CalculatedPowerCT1
Sending Message to Domoticz #87 157.41 CalculatedPowerCT2
Sending Message to Domoticz #88 159.52 CalculatedPowerCT3
Sending Message to Domoticz #89 163.49 ActivePowerCT1
Sending Message to Domoticz #90 157.81 ActivePowerCT2
Sending Message to Domoticz #91 -158.78 ActivePowerCT3
Sending Message to Domoticz #92 163.49 ActivePowerImportCT1
Sending Message to Domoticz #93 157.81 ActivePowerImportCT2
Sending Message to Domoticz #94 0.00 ActivePowerImportCT3
Sending Message to Domoticz #95 0.00 ActivePowerExportCT1
Sending Message to Domoticz #96 0.00 ActivePowerExportCT2
Sending Message to Domoticz #97 158.78 ActivePowerExportCT3
15:18:10> Published to Domoticz
Display Output Set to Minimised
PCB Temperature Sensor (NTC_IN VN): 23.41 ºC
ADC Raw: 2693 > ADC Adjusted: 2693 > Calculated: 25.65 V
Additional information, and other technical details on this project, maybe found in the related repository pages.
Repository Folders
- Code (Code examples for Arduino IDE and PlatformIO)
- Datasheets and Information (Component Datasheets, Schematics, Board Layouts, Photos, Technical Documentation)
- Certification (Related Repository Project or Part, Certification Information)
Repository Tabs
- Wiki (Related Repository Wiki pages and Technical User Information)
- Discussions (Related Repository User Discussion Forum)
- Issues (Related Repository Technical Issues and Fixes)
We value our Customers, Users of our designs and STEM Communities, all over the World . Should you have any other questions, or feedback to share to others, please feel free to:
- Visit the related Project plus the related Discussions and Wiki Pages. See tab in each separate repository.
- Project Community Information can be found at https://www.hackster.io/DitroniX
- DitroniX.net Website - Contact Us
- Twitter: https://twitter.com/DitroniX
- Supporting the STEM Projects - BuyMeACoffee
- LinkedIN: https://www.linkedin.com/in/g8puo/
Dave Williams, Eastbourne, UK.
Electronics Engineer | Software Developer | R&D Support | RF Engineering | Product Certification and Testing | STEM Ambassador
Supporting STEM Learning
Life is one long exciting learning curve, help others by setting the seed to knowledge.