Custom Component for RGB LCD Display

I all,

Can anyone give me some pointers on how to integrate this arduino library into ESPhome (on ESP32) so it can be used as an ESPHome ‘display’ component?

I feel like all the information needed is there, I just don’t have enough C knowledge to figure it out!

Take a look at similar code in esphome, this, for example, uses i2c Character-Based LCD Display — ESPHome

Shame that the “open” hardware company doesn’t have a schematic, or tell us what chip is inside this thing.

1 Like

Yeah I have. It seems to involve a lot of bit-shifting and logical bit manipulation which is going to take me a long time to get my head around.

There are two issues to resolve as far as I can tell.

  1. This display uses different data addresses for the display text and different control commands for fuctions.
  2. This display uses two i2c addresses, one to control the display, the other to control the backlight. I started here because the commands for backlight control are very simple and if I can get that working I’ll be on the way to getting the display working. However, I spent a long time trying to figure out how one esphome component could have two i2c addresses, and didn’t get any further. Is this possible? Or would it have to be created as two components, one for the character display and one for the RGB backlight control?

Thanks!

By the way, it’s a HD44780.pdf

The backlight is separate.

Yes I think you need 2 components, a light and a display.

The lcd may indeed may be a hd44780, but there is more to it than that. The hd44780 id not an i2c device, so there is something else doing the i2c to parallel conversion.

It may be lcd_pcf8574. But if you have one, it’ll probably say.