bertmelis / VitoWiFi

Communicate with Viessmann boilers using the optolink for ESP8266 and ESP32
MIT License
118 stars 39 forks source link

Circuit Example #64

Closed jnsw closed 10 months ago

jnsw commented 4 years ago

Following the pictures of the real world build, it seems that RX is connected with 3.3V over that 10k ohm resistor but in this diagram it seems the transistor has three legs

https://github.com/bertmelis/VitoWiFi/blob/master/doc/circuit.png

what is correct now?

bertmelis commented 4 years ago

The transistor only has 2 legs. The circuit is wrong. It is triggered by light so it has no gate. It's on the to do list but this project is on the bottom of the pile because I don't have a Viessmann heater for the moment.

nouknouk commented 4 years ago

Hi,

you've got example circuits schemas in the GitHub openv Wiki. Examples:

OptolinkESP8266

vito-esp32_Steckplatine

On my side, I wired a circuit for my ESP32 based on those examples, composed only of IR LEDs and resistors ; result was not stable enough and lead to many issues.

I switched to the circuit given in example for the RaspBerry Pi , with additionals transistors. It is fully compatible with ESP32 microcontroller (given youuse GPIO 16 and 17 for RX and TX) and despite being just a bit more complex (2 transistors) it works much, much better.

RaspberryPiOptoLink

bertmelis commented 4 years ago

Which transistor/diode you're using? If I recall correctly, the suggested types in the ESP circuit are obsolete. So maybe the RPI circuit is more tolerant for the newer parts.

nouknouk commented 4 years ago

Hi,

I use the same diodes as those recommended at the origin: SFH487-2 and SFH209FA. The SFH487-2 is discontinued but man can still find some on ebay.

For transistors, I use the same as those described on the Rpi circuit too: 2N3906 for emission and the BC547B (PNP one) for reception.

Overall, my circuit is really exactly thr same as the one for Rpi (except the 100nF capacitor I didn't had in stock). And it's now going perfectly.

esp32_viessmann

Btw, thanks for your work ; even if I plan to develop my own 'driver' for my heater/home automation server through USB/serial, your code give me a good basis for further inspiration.

bertmelis commented 10 months ago

Circuit corrected in v3