HT16K33-Python
HT16K33-Python copied to clipboard
Improving Flicker/Scan Rate?
Does anyone have suggestions on how I can improve the flicker on my 'DIY Timecode Slate'. If following video (240fps) is paused, there are times when only a few of the characters are actual visable. The display is being re-written at 30fps. https://youtu.be/fdUXwjPQt-c
If my understanding of the datasheet is correct, the IC is capable of driving 8 digits (I have 2x 4 digit displays) and there does not seem to be any way/register of reducing the scanning 'width' to just the active ones.
As a side note, it looks like the code is sending the whole of a 16byte buffer. Half of which is empty...
If I am really desperate, does it make sense to add fly wires to IC? So that COL0 is connected to COL4, etc... and patch the library to duplicate the character data?
I am using the Adafruit modules.
Datasheet shows 8 common 'outputs', and 16 row 'inputs'. I don't have a Adafruit schematic....
https://learn.adafruit.com/adafruit-led-backpack/downloads#0-dot-56-7-segment-led-backpack-stemma-qt-3110266
Looks like the 4 digits are wired to 4 COM outputs, but the colon also takes a COM... so there are 3 unused, but are they still scanned??
Firstly, to clarify, this is NOT driver's fault. It's down to hardware, and is a very edge case... as I need my project to 'photographed', potentially with a short shutter time. If captured at the wrong time it would display blank and make my project useless!
As noted in #29 I found a 4-digit display from Seeed, which looked easy to hack as it has a current-limit resistor for each COM pin. Thus easy to remove/disable COM5 and then fly-wire to COM1 for testing. Unfortunately I didn't find a supplier for Canada-land.
I also found this other display on Ebay (a few different vendors):
"HT16K33 0.54 Inch 4 Bit Meter Digital Tube LED Display Module"
It looks like it uses the same LED module as the 2-digit display from Seeed, which would mean that it just using 4 COM pins, leaving the other 4 open - and moderately easy to fly-wire.
I'll see if I can get some on order, and then my plan would be to fly wire (hopefully not killing display):
- COM0 (pin 2) - COM4 (pin 6)
- COM1 (pin 3) - COM5 (pin 7)
- COM2 (pin 4) - COM6 (pin 8)
- COM3 (pin 5) - COM7 (pin 9)
We're not using key scanning, but the reading the I2C address may be affected as it's also using pin 2.