Although low-contrast, blue-on-low-blue 16-character by 2-line LCDs are extremely popular, they are really designed specifically for alphanumeric use. They do an admirable job of displaying a few characters, but they don’t look exactly as non-character intended displays. But it is possible to display video on a 16 × 2 LCD, unless you want to expand the definition of “video” a bit and use some imagination while watching.
Typically, a 16 × 2 display can display only one character in each location selected from a specific character set. But [arduinocelantano] The display was able to take advantage of eight custom character slots to create images from 5×8 pixel bitmaps. After use
ffmpeg To scale the original video to an eight-character viewport, a Python program was used to create a custom bitmap for each part of the viewport to code each frame of the scaled video. Even with the low refresh rate of the display and the compressed frame size, the result is a recognized video that is undoubtedly helped by the choice of shadow puppets. Bad milk !! Check out what it looks like after the video break.
We saw a similar rendering of the same video on the LCD a while ago; This effort was surprising in that it was an EEPROM-only implementation, with somewhat larger LCDs with better contrast. Served as inspiration for that project [arduinocelantano]Made here, which in some ways looks a little better than we think – maybe it’s an inverted pixel. Either way, congratulations to both creators for overcoming the usual limitations and teaching us something interesting.