Sparkfun SerLCD LCD-14073 via I2C with Python

I am trying to drive LCD-14073 via I2C with Python. It seems that a block char is added for any I2C write. I cannot quite figure what is causing the block char to be added onto the LCD. Could anyone have suggestions?

I am using Python on RasPi with smbus.write_i2c_block_data to send data.

Thanks.

Thanks for using our new forums!

Are you sending anything other than text to the display? I’m wondering if you might be sending an unrecognized command somehow that the display is interpreting as a block character.

This is really old, and no response was ever given, but I’m wondering how someone even got this far… Is there a Sparkfun provided I2C python driver for this display that I’m missing? I found some on GITHub by a 3rd party, but it has a documented bug that it randomly crashes, which makes it pretty tough to rely on…

SparkFun does not have a python library for our SerLCD. Sorry!

Thanks for the reply… If there’s no library for the SerLCD, is it safe to assume that I can just send the same bytes/characters through i2c that I would otherwise send through the serial for this, and use the generic smbus.write_i2c_block_data as the OP was presumably implying? Sorry - I am a complete beginner at i2c… Can I assume that the i2c becomes basically just a conduit for getting data to the device then?

Can I assume that the i2c becomes basically just a conduit for getting data to the device

That is correct.

is it safe to assume that I can just send the same bytes/characters through i2c that I would otherwise send through the serial for this

Yes, as long as the same information is getting to the display, it doesn’t matter what interface you use.

Thanks… That gives me some hope…

Hi,

I wrote a CircuitPython library for the SerLCD. It’s available on git hub https://github.com/fourstix/Sparkfun_C … hon_SerLCD along with instructions on how to install it in Python.

Have a great day,

Gaston aka fourstix

Thanks! I’ll take a look. I did see some stuff to do with “CircuitPython” but not knowing what that was, and compatibility with “regular python” I didnt look deeply at it… I’ll check it out! Thanks for sharing this!!