Go Down

Topic: Reading data on Daikin/Rotex P1/P2 control bus possible. (Read 988 times) previous topic - next topic

Arnold-n

Any interest in reading the data on the Daikin P1/P2 control bus?

(there was some interest on the old forum: Interface to Daikin Inverter system).

Using some simple circuitry and an Arduino Uno you can now read the data on the P1/P2 bus, and try to read things like temperature, flow, and derive COP values. The necessary code and documenation is now available under https://github.com/Arnold-n/P1P2Serial.

Please share your results, as different heat pumps use different protocols on the bus.

pert

Thanks for your contribution to the Arduino community!


I have a few suggestions:
  • Change the repository name to match the library name: P1P2Serial. You can do this from here: https://github.com/Arnold-n/P1P2Monitor/settings. I think structuring the repository as an Arduino library with the monitor as an example sketch will make it easier to use and more flexible for the users.
  • Move P1P2Monitor.ino to the examples/P1P2Monitor folder. This will allow the user to access that sketch via File > Examples > {library name} > P1P2Monitor after installing the library.
  • Use the correct file extension .py for your Python files, instead of the incorrect .pi extension.

If you'd like, I'm happy to submit pull requests for the latter two (not having the permission level to do the first).

Arnold-n

I have a few suggestions:
Thanks for your feedback! I have implemented your suggestions.


Tcmoreno

Using some simple circuitry and an Arduino Uno you can now read the data on the P1/P2 bus,
Can you share some circuitry examples? I want to explore this.

Thanks

Tcmoreno

Can you share some circuitry examples? I want to explore this.

Thanks
I have just seen them in Github.
https://github.com/Arnold-n/P1P2Serial/tree/master/circuits

Jbpa

Hello,

I would like to thank very much Arnold-n for this project and his interface.

I have an heating pump Daikin EHVZ08S18CB3V which is designed to manage 2 heating zones.
I also use Jeedom to monitor my KNX bus.

I tested the P1P2Monitor.ino on the serial monitor. I found that the character strings are correct and without errors (see attachement).

I actually don't understand wich material configuration and options are needed in order to use the MQTT protocol.
Is it possible to use any internet shield whith an arduino uno (wifi is not activated in my home) ?

Jeedom is able to manage a MQTT client.

Thanks if someone can help.

I apologize for these questions, but I am really a beginer in programming.

Arnold-n

I would like to thank very much Arnold-n for this project and his interface.

I actually don't understand wich material configuration and options are needed in order to use the MQTT protocol.
Is it possible to use any internet shield with an arduino uno (wifi is not activated in my home) ?

Thanks if someone can help.
Thanks for your feedback. Currently there is no MQTT client support on the Arduino Uno itself, it is only supported via an ESP8266/Arduino Uno combi.

One approach is to use a W5500 internet shield on the Arduino Uno and add MQTT client support to the P1P2Monitor code (currently the code for the W5500 only supports json output format over udp). I do not know whether this will still fit in the Arduino Uno.

Another approach is to have a USB host device (such as a Raspberry Pi) channel the "MQTT-like" messages from the Arduino Uno USB serial interface to a MQTT client, or to translate the serial raw code to MQTT messages on the USB host device.

Both approaches are on my TODO list, but may take some time before they hit github.

Jbpa

I succeeded to get all the informations sent by the arduino, through the USB port of my home automation PC with the following command :
cat /dev/ttyACM0 | mosquitto_pub -h localhost -t P1P2 -l
I set this command as service, and this is working.

I had to use the JSON file format and to remove the characters "J "of the output string.

I tried to use the ethernet connection (with an Uno and a W5100 shield). I saw the UDP packets, but MQTT is based on TCP. I was unable to use it.

I don't understand how to send command to the heating pump (if JSON file format could be use, for example). I noted that the reading some values are trigered by a command (power consumption and production...)

Go Up