Display-O-Tron 3000


Ok, thanks. I guess the first step is to try the HD44780 driver in OpenELEC itself and see whether that works - would save a lot of time if it does! I’m at work at the moment, so wouldn’t be able to do this until later this evening though.

I was also looking for the controller needed for the DOT3K as I couldn’t find any reference on here, so thanks for that!

Not sure what I would need to do to reconcile etc, but I’ll happily report back on any progress with the built-in driver support in OpenELEC.


Well, as you thought, just enabling the driver support for HD44780 does not work…


The next step would be hacking in some WiringPi libs to switch the register select pin- and potentially finding out how you compile just one driver rather than the whole thing.


Display-O-Tron 3000 and Python3

I prefer using Python3 over Python2 for my tinkering and when I first got a Dot3k I remember it needed a lot of fiddling in the bowels of Python to get it working. With a recent re-assignment of my various Raspberry Pi devices, I’ve moved my Dot3k to a new Pi2 with a recent Rasbian and firmware (kernel version 4.0.9-v7+) so thought I’d document the steps needed to get the Dot3k going under Python3.

It was pleasantly straightforward…

First I followed the steps here: http://learn.pimoroni.com/tutorial/display-o-tron/getting-started-with-display-o-tron to get the device going under Python2.7.

Then the following steps got me going under Python3, too:

1 - Install pip for python3:

sudo apt-get install python3-pip

2 - Use pip3 to fetch dot3k into the Python3 modules library:

sudo pip-3.2 install dot3k

3 - To control the various LEDs on the Dot3k from Python3, we need the Python3 version of smbus:

sudo apt-get install python3-smbus

4 - Test the basics:

$ sudo python3
>>> import dot3k.lcd as lcd
>>> import dot3k.backlight as bl
>>> lcd.write(‘Hello,world of Python3!’)
>>> bl.rgb(128,255,192)
>>> quit()



With a few configuration changes I got the Displayotron 300 to work with my Banana Pro. I’ve documented the steps here: http://mattbaker.me/2015/09/08/displayotron-3000-for-banana-pro/


Is that really all it took? Nice! One day I might support something more than just the Pi- but it’s unfortunately a very slippery slope and before you know it half your library code is conditional logic and sniffing to try and figure out what system it’s running on.


2 posts were split to a new topic: Display-o-tron with Explorer HAT


Hope I did this in the correct forum location! The majority of problems that you are having with hardware devices connect to a Raspberry Pi 2 can be fixed by this timing issue in jessie: https://gist.github.com/Gadgetoid/57084ec5817142a118ac

Also, visit my site at this location: http://elecurls.tripod.com/rpi-help.htm Look at “My Battle with SenseHat and jessie”,


This is pretty old news now, from way back during the Pi 1 to Pi 2 transition. I don’t believe it’s a problem in any recent versions of Jessie, applying this fix would do nothing at best.


On the contrary. I installed the newest version of jessie, and I HAD to take these steps
to make it work. raspian NEVER had this problem.


I’ve installed Jessie dozens of times since this problem was resolved, and have never needed to do this. The Gist that you link is my bug report and proof which was used to arrive at the original fix and if you repeat the steps therein on a fresh Jessie install you will see an expected delay of 1.08 to 1.25 seconds ( the delay within the code plus overheads ) and not the 20sec that was caused by the bug.

In fact, Display-o-Tron 3000 still worked with the bug, it was just very, very, very slow.

I’m going to go out on a limb and guess that the only part of this fix that helped your setup in any way was the necessary reboot.


Don’t know what to tell you, but with fresh copy of jessie. I still had to do all of the steps previously
mentioned to make the Sense Hat work…

Have a great Pi day!


Hi guys. I am in the middle of a project using a DOT3K and have a lot of the code done and working fine. My problem is that it’s going to be an audio project, so I also want to use the Wolfson Audio hat from element14. I can get them both connected fine by using a 90 degree ‘IO shim’ to replicate the GPIO connections at 90 degrees - and the display backlight and text is fine, but the joystick stops functioning with both boards connected.

I have checked the I2C addresses are different for both boards (wolfson is 3b and DOT3K is 54) so that’s not an issue - is there any documentation as to how the joystick is wired to the GPIO so I can start trying to debug this?

thank you!


the joystick on the DOT3K uses discrete connections for each direction, it isn’t i2c driven, see here:

I see in the other topic that you have bought a DOT HAT, for which the navigation is i2c driven and might minimise pin conflics: