Столкнулся со странной проблемой, на решение которой потратил кучу времени. И это даже не решение, а костыль.
Дисплей 16х2 подключенный по I2C с адресом 0x20 отказывался работать. Методом проб и ошибок была найдена библиотека, с которой он заработал и было видно что это библиотека именно для него … Но он выводил только первую букву, после чего “залипал”.
В LiquidCrystal_I2C.cpp поменял кое что и все заработало:
inline size_t LiquidCrystal_I2C::write(uint8_t value) {
send(value, Rs);
return 1;
}
Было return 0, сделал return 1. И заработало. Не знаю будет ли это кому то полезно, но мне точно будет хорошей таблеткой от забывчивости.
p.s. помогает использование IDE старых версий. 1.6.5. вроде как работает. Жесть 🙁