Driving A Controllerless LCD With The Humble Arduino Uno

These days, you could be forgiven for thinking driving an LCD from a microcontroller is easy. Cheap displays have proliferated, ready to go on breakout boards with controllers already baked in. Load up the right libraries and you’re up and running in a matter of minutes. However, turn your attention to trying to drive a random LCD you’ve yanked out of a piece of old equipment, and suddenly things get harder. [Ivan Kostoski] was in just such a position and decided to get down to work.

[Ivan]’s LCD was a 320×240 STN device salvaged from an old tape library. The display featured no onboard controller, and the original driver wasn’t easily repurposed. Instead, [Ivan] decided to drive it directly from an Arduino Uno.

This is easier said than done. There are stringent timing requirements that push the limits of the 8-bit platform, let alone the need for a negative voltage to drive the screen and further hardware to drive the backlight. These are all tackled in turn, with [Ivan] sharing his tips to get the most flexibility out of the display. Graphics and text modes are discussed, along with optimizations that could be possible through the varied use of available RAM and flash.

The code is available on Github. If you need inspiration for your own controllerless LCD driver. [Ben Heck] has done similar work too, using FPGA grunt to get the job done.

Component Video For The Commodore 64

Of all the retro systems, the Commodore 64 had the best video system. The VIC-II chip in the C64 was the best example of why Commodore was the best, but in terms of video output, the C64 was still a consumer device: the only output was S-video, or composite video, or something like it. The professional stuff uses YPbPr, an RGB video signal that separates the red, green, and blue colors. On a modern LCD, the difference between composite and YPbPr is noticeable, and if you’re going to run your C64 on the big screen, it would be very helpful to use a professional video standard.

In an effort to bring the C64 into the future, [c0pperdragon] created an FPGA-based modification for the VIC-II chip. The end result is getting YPbPr signals directly from the computer, and outputting it to a TV in glorious 480p.

Inside the Commodore 64, the VIC-II creates the chrominance signal in a way that is impossible to convert it back to any form of RGB. The solution to get RGB out of this information is to listen in to 22 pins of the VIC-II to determine what signals it intends to generate. This is done with a smallish Altera FPGA connected to the VIC-II through a ribbon cable. On the FPGA, the luminescence and all the color information is generated, then converted into true YPbPr. For the complete mod, the RF modulator is removed, and the original A/V jack is still functional. This is effectively a very in-depth mod that rids the C64 of the TV connector and channel selector (that no one uses anymore) and replaces it with a professional-grade video output.

When it comes to C64 mods, we thought we’ve seen it all. We’ve seen C64s resurrected from the dead, and we’ve seen drop-in replacements for the SID that still don’t have working filters oh my god. This is on another level. This is using FPGAs to drag the C64 into the modern era, and if you don’t care about the rusting RF box, it’s a reversible mod.

Bash Pipeline Puzzle: Green, Blue, Or Blue Green?

[Marek Gibney] poses an interesting puzzle. What does the following bash command line print?

( echo red ; echo green 1>&2 ) | echo blue

You’d like to think it prints three lines: red, green, and blue. But would you be surprised to find out that it can sometimes output “blue green” and sometimes just output blue. The first surprise is that it isn’t deterministic. But the second thing that is surprising is the sometimes the entire left-hand part of the line doesn’t do anything. [Chris Siebenmann] did the analysis and explains what’s going on in a recent blog post.

Before you click the link or read further, you might want to see if you can deduce what’s going on. Give up? Here’s a hint: Part of the solution hinges on the fact that echo is built into the shell.

Continue reading “Bash Pipeline Puzzle: Green, Blue, Or Blue Green?”

Come To The Hackaday Cambridge Mini Unconference!

Hackaday would like to invite you to a Mini Unconference on Saturday 16th of March, hosted by our friends at Cambridge Makespace, UK.

One of our most successful engagements with our community over the years here at Hackaday has been the Unconference. A group of you our readers join us for a while and deliver a series of 8-minute lightning talks about what is on their mind. This could be a project, a trend, a technological discovery, or whatever, and they combine to form a fascinating cross-section of the state of our world at any given time. Delivering a talk isn’t essential so don’t worry if you’re shy, but we hope that many of you will have something to share.

This is a mini unconference since we have room for only about fifty or so people in a more intimate venue. Cambridge Makespace is a successful hackerspace in the British university city, and they have been so kind as to host the event for us in their classroom. We’ll convene after lunch and have two afternoon sessions with a break for coffee and snacks, and finish up by getting some pizzas in before heading out to enjoy what Cambridge has to offer. Places are limited, so if you know you are going to be able to make it to Cambridge, sign up without delay.

Three Engines For Every Lada

If you don’t live in a former Eastern Bloc country, odds are that you’ve never seen a Lada driving around your neighborhood. This car is ubiquitous in Russia and its neighboring countries, though, and for good reason: price. Lada gave many people access to affordable transportation who otherwise would have been walking, but this low price means that it’s a great platform for some excellent car hacks as well.

The guys at [Garage 54], an auto shop in Russia, outfitted one of these discount classics with two extra engines. This goes beyond normal bolt-on modifications you typically see to get modest horsepower gains from a daily driver. The crew had to weld a frame extending out of the front of the car to hold all the extra weight, plus fabricate all the parts needed to get the crankshafts on each engine to connect to each other. After that, it was the “simple” job of tuning the engines to all behave with one another.

This video is really worth watching, as the car was also upgraded with a dually setup on the back with studded tires for extra grip on their ice track. Odds are pretty good that this car isn’t street legal so this is likely the only place they’ll be able to drive it. Other things can be built out of Ladas as well, like lawn mowers for example.

Thanks to [g_alan_e] for the tip!

Continue reading “Three Engines For Every Lada”

Look Ma, No Glue! Electrostatic Adhesion As If By Magic

One of the projects at the recent Hacker Hotel hacker camp in the Netherlands appeared to have achieved the impossible. A vertical PCB surface was holding pieces of paper as though they were pinned to it as on a notice board, yet there was no adhesive or fixings in sight. Was Harry Potter among the attendees, ready with a crafty bit of magic at a waggle of a wizard’s wand, or was a clever hack at work?

Of course, it was the latter, as [Jana Marie Hemsing], had created an electrostatic adhesion plate because she was curious about the phenomenon. A PCB with extra insulation has an array of conductors on one side that carry a very high voltage. High enough for electrostatic attraction to secure a piece of paper to the PCB.

The voltage is generated from an AC source by a Cockroft-Walton multiplier on the back of the PCB, and the front is coated with Plasti-Dip for insulation. It seems that soldermask is not a reliable insulator at such high voltages.

Using the board, [Jana] was able to attach a piece of paper to it with a shearing force of 5 mN at 3 kV applied voltage, which may not sound like much but appeared to be just enough to carefully pick the contraption up by the piece of paper. The boards are designed for tessellation, so larger arrays could easily be assembled.

We’ve never had a project quite like this one, but we have brought you an electrostatic ping-pong ball accelerator.

Model Car Indicates Door Is Ajar

The amount of technology in modern cars is truly staggering. Heated seats, keyless entry, and arrays of helpful cameras are all becoming increasingly common in all but the cheapest of models. [mathisox] drives a slightly older Volkswagen van, which has been converted into a camper. Unfortunately, it lacks a proper door ajar display. Nevermind that, though – there’s a charming solution to this problem.

Rather than stick to the automotive standard of boring indicator lights and low-resolution LCD displays, [mathisox] took a more analogous approach. A small model car matching his van was sourced and quickly gutted for the project. It was then fitted with servos to open and close the doors and rear hatch. The servos are controlled by an Arduino Nano, which reads the door switches in the vehicle and actuates the appropriate parts on the model.

With the model car stuck prominently on the dashboard, it serves as a clear visual indicator of the current status of the vehicle’s doors. It’s far less intrusive than those old Chryslers which repeatedly insisted that a door is a jar.

[Thanks to Raffael for the tip!]

Continue reading “Model Car Indicates Door Is Ajar”