LCD

Cili and text drawing

We almost ported all functionality from GfxLCD into cili. The last one is the draw_text.
The GfxLCD uses Python class as the font description and cili must keep the same functionality. So this time handling Python classes in C.

(more…)

Advertisements

Memory leaks in cili

We have huge memory leaks in cili driver. App crashes in about day of working. A good thing is they manifest only during image draw so let’s get to the bottom of problems and fix them all.
(more…)

GFXLCD AND ILIs – PART 4 images in C

Today we will try and draw images from our C lib. This is the next step with the wrapper. Why? Because we will be sending Python Object to C code and use it there.

It is getting weirder πŸ™‚

Source @ GitHub

GFXLCD AND ILI9325 C DRIVER – PART 3
GFXLCD AND ILI9325 C DRIVER – PART 2
– GFXLCD AND ILI9325 C DRIVER – PART 1

(more…)

GfxLCD and ILI9486 C driver – part 3

This time we will add an ILI9486 via SPI support to our C code. And while doing it we will refactor structure and clean up the code (or do more mess :P).
I was thinking that C wrapper should be part of GfxLCD package but maybe it is better to create it as a separate module? We will see but this time the code is available @GitHub.

GFXLCD AND ILI9325 C DRIVER – PART 2
GFXLCD AND ILI9325 C DRIVER – PART 1

(more…)

GfxLCD and ILI9325 C driver – part 2

This time we will work with drawing functions. Displaying pixel is easy but next, we have a line, circle and arc. I wonder how hard or easy moving functions from Python to C gonna be.

In Python implementation of GfxLCD, we use @property to access width, height or set colours. We need to do same with C implementation. I see two ways, one we will use Python class that would translate property to function call in C or maybe we can use some ability of Python-C wrapper.

GfxLCD and ILI9325 C driver – part 1

(more…)

ILI9325 in Python and C – performance

I have some crazy idea but before we need to do something with GfxLCD performance. Using ILI9325 with Python is a way to slow:

pi@raspberrypi2b:~/workspace/gfxlcd/gfxlcd/demos $ time python3 ili9325.py
real    0m14.528s
user    0m14.080s
sys     0m0.070s

Filling screen with size 240×320 in 14s is not impressive. Let’s see what happens when we move a layer down to C.

(more…)

ProxyLCD and graphical LCDs with HD44780 driver

Last time we wrote an HD44780 driver that takes GfxLCD compatible display and works with CharLCD package. This is nice because we can use big ILI9486 as a character display.

You may ask, why?
Because with ProxyLCD we can see a big output from Symfony πŸ™‚ And because we can πŸ™‚
Today we will focus on two bugs from a previous part and we will see if all chipsets can work with HD44780 driver.

Part 1

(more…)

RemoteLCD Node on Raspberry Pi with ILI9325 – HD44780 simulation

We have a remote LCD Node that works on NodeMCU board. It has a 40×4 char LCD attached to it and displays text received via a network message. We also can use Raspberry Pi as a remote LCD. But all those LCDs are small. We need something bigger and we have it! This something is an ILI9325 graphical display. There is a huge difference between char and graphic but we can simulate char interface. Our GfxLCD library has an ability to display a text and with a little bit of tinkering, it should work :D.
This could bring nice results, imagine a dump from Symfony with multiline formatting thanks to the ProxyLCD project. Nice πŸ™‚

(more…)