“As a kid during the 1980s, I was a big fan of Knight Rider and I remember watching it thinking KITT was the coolest car ever,” says Fred Arias. “I even remember going to Universal Studios in Hollywood, where I got the opportunity to sit inside KITT and talk to him directly. That experience never left me.”
Decades later, Fred has recreated his own version, making use of an RP2040 microcontroller. “Over the years, I’ve seen people recreate KITT in the form of a VU meter but always needing to provide an audio source manually,” he says. “I’ve been playing with a Raspberry Pi Pico over the last few months, while learning MicroPython to control different hardware, and I thought it would be best to learn how to use it by incorporating it into fun projects.”
On a crusade
There were three main considerations: Fred needed his KITT to look, sound, and respond like the original. “Basically this project works by responding to movement using an IR sensor and then listening for sound levels using a PDM microphone,” Fred explains. “Based on how loudly you speak to KITT, he will respond with a list of responses loaded on to the flash memory.”
Fred used a Waveshare RP2040-Plus to take advantage of its 4MB of flash memory and he took the responses directly from the TV series, saving them as MP3 files. He used an LM3915 display driver to control KITT’s LED bars, a DAC audio board, and a PAM8303 audio amplifier directly connected to a speaker. “Luckily, I found a schematic online that showed how to connect the LED bars to the driver, so that helped me figure out some of the connections,” Fred reveals.
Since he didn’t want to solder and wire each individual LED pin to multiple resistors and transistors, realising it would be time-consuming and prone to error, he decided to create a custom PCB. It enabled the LED sound bars to better resemble those used in the car in the TV series. “I started watching lots of YouTube videos on how to design PCBs and, after hours of trial and error, I came up with workable designs for the project.”
The extra mile
The software was written in CircuitPython. “I wrote a true loop first, checking for movement with the IR sensor,” Fred says. Once movement is detected, KITT will listen for sound. If there is none but the IR sensor is activated, KITT will randomly say something from a list to get a person’s attention. If the person responds with a loud voice, KITT will tell a joke.
“If you ask a yes/no question in a normal voice, KITT will give you a yes/no answer and it’s different every time. By speaking softly, KITT says ‘you’re welcome’ in a couple of different ways. All of these responses are in separate lists and they can be edited to make it say other things. I have a folder with 380 possible responses.”
In the future, he wants to add more LEDs that will light up with sound effects from the show and place in a housing similar to that seen on TV. But would he put it in his car? “It would be possible to incorporate into a car,” he says. “I would probably need to make some changes to the code to compensate for the noise levels in a vehicle, but the project already runs on 12 V, so it wouldn’t be a problem connecting it to an internal power source."