A PCB business card is a great way for electrical engineers to impress employers with their design skills, but the software they run can be just as impressive as the card itself. As a programmer with an interest in embedded machine learning, [Dave McKinnon] wanted a card that showcased his skills, so he designed one that runs voice recognition.
[Dave] specifically wanted to run a neural network on his card, but needed to make it small enough to run on a microcontroller. Voice recognition looked like a good fit for this, since audio can be represented with relatively little data, a microphone is cheap and easy to add to a circuit board, and there was already an example of someone running such a voice recognition network on an Arduino. To fit the neural network into 46 kB, it only distinguishes the words “one” through “nine,” and displays its guess on an LED seven-segment display. [Dave] first prototyped the system with an Arduino, then designed the circuit board around an RP2040.
The switch from Arduino to the RP2040 brought with it a mysterious change: it would usually recognize the word “eight,” but none of the other numbers. After much investigation, it turned out that the new circuit was presenting samples at a much higher rate than the older one had, which was throwing the network off. [Dave] increased the sampling period and had the user speak the numbers slowly, which solved the issue.
The microcontroller was well chosen; the RP2040 is good enough for machine learning that there are dev boards explicitly designed for it, and even comparatively less powerful Arduino boards can do surprisingly good voice recognition. On the hardware side, [Dave] cited some of the Linux business cards we’ve seen as inspiration.

Jesus, my imposter syndrome.
Great project, very cool. I wonder if the fab complained about that massive area they had to remove the copper for.
Anyway, I’m wondering if there are any use cases where the training of these networks must also be done in the micro and not on pre recorded data sets on the PC?
Its not like we need to use chisels to whack out the copper. If its not covered by etching mask, it will go with etchant out… as will the gaps between tracks that make up the tracks..
Besides: more copper etched, more copper recycled, higher payout. That used etchant is treated like liquid gold. And the customer pays for it.
As a design, it looks nice. But the 90ohm differential pairs are completely missing. Sure, the distances are neglectable, but would have been nice to see that the person understood the proper design for data lines.
usb-c from the pcb? Noice!
As a designer I would remove all the component labels¹ to make the card look as clean as possible. The fabrication does not need them, they are very distracting and tell nothing about the skills of the engineer.
¹) except for MIC and Inference, those are user facing labels.
I would agree if the labels weren’t consolidated to one side of the card and completely out of the way, but I think it looks perfectly fine as-is. And presumably some.of the people who will receive this card will be knowledgeable & interested enough to make use of those labels, too. In their shoes, I’d be really annoyed to have important reference info removed for seemingly no reason — to the point of questioning what kind of non-Apple engineer was prioritizing form over function.⁷]
Same thoughts, I like the labels. Those who are interested can learn something from the board.
I wonder how much power this draws and if this could be powered from an energy harvesting IC using a small supercap to store the energy. Harvesting could be base on a small PV cell. Perhaps too costly or too big? :-/
It’s not a consumer product. If I’m hiring someone, I prefer someone who naturally tends to self-document and label things so other people can identify what’s going on.
Hack BC’s inbound in 3..2..1..
“I would like to show you this nice project I made. Let me demonstrate it by plugging it in your mainframe computer!”
What is your budget for a business card?
I agree. This is very nice to show that you can do voice recognition of 11 words. I’m absolutely sure the chips more capable than that, but you’re limited to the 8-digit display.
Better ideas! Doom, the display would only be monochromatic, but would cost about $0.50, additional.
If you’re just going to go with LEDs, you can make a Tetris game.
It’s just something people would play with a lot longer than speak 11 words into a card
And there are a lot of games that just use a plane 10×10 LED matrix. Even The game of Life.