Compile lcdproc hd44780 driver on Raspberry Pi running Debian Stretch

In order to get my 20×4 LCD display with cheap IIC/I2C/TWI/SPI Serial Interface Board running on Raspberry Pi I had to use patched hd44780.so file downloaded from NeighborGeek. You can check it out here

This worked fine on my RPi3 running Debian Jessie, but recently I have upgraded to Stretch and found out that his driver now is having issues. After running for longer period of time the screen would be full of garbage characters.

I thought I could repeat the steps, download source, patch the source, compile and use again hd44780.so file instead of the one provided by distribution.

First thing I did was to download latest source from GitHub:

wget https://github.com/lcdproc/lcdproc/archive/master.zip
unzip master.zip
cd lcdproc-master

Now I tried to apply the hd44780-i2c.c patch but it failed. Then I checked the hd44780-i2c.c file in the source I found out that patch is no longer needed just proper configuration in LCDd.conf.

In order to compile the latest driver from GitHub following steps are needed:

./autogen.sh
./configure --disable-libusb --disable-libusb-1-0 --enable-drivers=hd44780 --disable-libftdi
make

After you have compiled the driver, go to directory:

 cd /usr/lib/arm-linux-gnueabihf/lcdproc/

and backup existing file just in case something goes wrong:

cp hd44780.so hd44780.so.orig

Then copy the newly compiled driver in proper place:

cp /usr/local/src/lcdproc-master/server/drivers/hd44780.so .

Edit LCDd.conf and add the following after hd44780 part:

i2c_line_RS=0x01
i2c_line_RW=0x02
i2c_line_EN=0x04
i2c_line_BL=0x80
i2c_line_D4=0x10
i2c_line_D5=0x20
i2c_line_D6=0x40
i2c_line_D7=0x80
Backlight=yes
BacklightInvert=yes

You can download my newly compiled driver and LCDd.conf from this link  hd44780_debian_stretch.

I hope this has saved you some time and got your 20×4 LCD working with Debian Stretch.

Update

I have moved my LCD display to Pine64 SBC and since this is different architecture I needed to re-compile it using the same steps as above.

You can dowload aarch64 version hd44780.so aarch64.

Pine64 2GB DDR3 SDRAM, 10/100/1000 MB Ethernet port unpacking and quick review

Even though in my mid May post I said I will not go into future endeavors with low cost devices this one I have ordered long time ago (April 2016) and it was delayed with shipping.

Pine64 looked interesting and promising since they raised $1.7M on Kickstarter offered 3 different variants for affordable price.

Allwinner is awful with their open source support so you will not be using this device for your next media center since Kodi will not work, but since it has 2GB RAM and 1Gb Ethernet it seems perfect fit for a small home server. Continue reading “Pine64 2GB DDR3 SDRAM, 10/100/1000 MB Ethernet port unpacking and quick review”

OrangePi poor replacement for the real Raspberry Pi

I was intrigued with low price of Orange Pi PC on GearBest site and since I had a lot of unused points I decided to order one even though I did not really need it. For a few bucks you get quad core CPU, 1GB of RAM, Ethernet all the bells and whistles as Raspberry Pi for third of the price.

What could go wrong? Well it seems for this price you get what you paid for a third of quality manufacturing. As soon as I opened my box I noticed that the board is slightly bent as you can see on the picture here: Continue reading “OrangePi poor replacement for the real Raspberry Pi”

Upgrade Xbian installation to support Raspberry Pi 3

Recently I bought two Raspberry Pi 3 devices, one for my RetroPie gaming center and one for my Kodi / Xbian always-on media-center.

Retropie with version 3.6 came out of the box with Raspberry Pi 3 support, so it was an easy to replace old unit with new one.

Xbian needs new kernel package (4.4.4+) to support Raspberry Pi 3. There are two ways to get your Xbian to support your new device: Continue reading “Upgrade Xbian installation to support Raspberry Pi 3”