Resol vBus

Unfortunately there is no guide. I can tell you what I did.
Basically you have to do these steps:

  • Connect your PI to your Resol device.
  • Setup your PI to serve the json-live-data-server.
  • Modify your configuration.yaml in home-assistant.

However, this comes with ABSOLUTELY NO WARRANTY. It’s your own risk to do this.

Connect your PI to your Resol device


My Resol device. I opend it and removed …


… this shield. If your device has the same shield you can …


… connect these pins of your resol device …


… with these pins of your PI. I used a Raspberry Pi 3 Model B Rev 1.2.

Setup your PI to serve the json-live-data-server

 1  cat /proc/cpuinfo
 2  wget https://nodejs.org/dist/v16.13.2/node-v16.13.2-linux-armv7l.tar.xz
 3  tar xvfJ node-v16.13.2-linux-armv7l.tar.xz
 4  sudo cp -R node-v16.13.2-linux-armv7l/* /usr/local
 5  sudo reboot now
 6  node -v && npm -v
 8  sudo npm i -g npm@latest
 9  sudo npm install -g [email protected]
10  sudo npm audit
11  sudo npm install --save resol-vbus
12  ls -l
13  cd node_modules/resol-vbus/
14  ls -l
15  cd ~
16  sudo apt install git
17  git clone https://github.com/danielwippermann/resol-vbus.git
20  cd resol-vbus/examples/json-live-data-server
21  sudo npm install
22  cp config.js.example config.js
23  nano config.js
(Change to SerialConnection and  
 add " path: '/dev/serial0' " to  connectionOptions) 
24  sudo raspi-config
( Interface Options ->  Serial Port: 
  login shell: no
 serial port hardware: yes
 reboot: yes
)
25  ls -l /dev/serial0
(this should show somethimng like this:
lrwxrwxrwx 1 root root 5 Feb  8 14:17 /dev/serial0 -> ttyS0
)
26  sudo node /home/pi/resol-vbus/examples/json-live-data-server/index.js
27  curl -s 'http://localhost:3333/api/v1/live-data
( this should show your json data)
28  sudo nano /etc/rc.local
(in case of autostart, add this line at the end of the file 
node /home/pi/resol-vbus/examples/json-live-data-server/index.js &
)
29  sudo reboot now
30  curl -s 'http://localhost:3333/api/v1/live-data
(final check)

Modify your configuration.yaml in home-assistant

Add this to your configuration.yaml in home-assistant.
You may have to fit it to your json data and of course change the ip address.

rest:
  - resource: http://192.168.178.75:3333/api/v1/live-data
    scan_interval: 10
    sensor:
      - name: "Warmwasser"
        value_template: '{{value_json[0].rawValue}}'
        unit_of_measurement: '°C' 
        json_attributes_path: "$[0]"
        json_attributes:
          - "name"
          - "rawValue"
      - name: "Kaltwasser"
        value_template: '{{value_json[1].rawValue}}'
        unit_of_measurement: '°C' 
        json_attributes_path: "$[1]"
        json_attributes:
          - "name"
          - "rawValue"
      - name: "Puffer"
        value_template: '{{value_json[2].rawValue}}'
        unit_of_measurement: '°C' 
        json_attributes_path: "$[2]"
        json_attributes:
          - "name"
          - "rawValue"
      - name: "Zirkulation"
        value_template: '{{value_json[14].rawValue}}'
        json_attributes_path: "$[14]"
        json_attributes:
          - "name"
          - "rawValue"

Have a lot fun :wink:

3 Likes