Skip to content
Everything you need to build hardware game show buzzers (and to do awesome things with it!) πŸš€
Python Go
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github
3d-models
images
internal
raspberry-pi-hat-gerber
software
.gitignore
LICENSE
README.md
bill-of-materials.md

README.md

things with buzzers: hardware

Build your own hardware game show buzzers and do awesome things with it! πŸš€

This repository contains everything you need to build hardware buzzers and connecting them with your software. Start today having fun, and make people happy by providing them an unforgettable time.

For even more context, we recommend reading things with buzzers: building them.

The finished product: Four buzzers, a Raspberry Pi incl. hat

Table of Contents

How we build and run them

We built four game show buzzers in four different colors (red, green, blue, yellow). The buzzer cases are self-printed with a 3D-Printer. Each buzzer case has a female USB connector embedded.

The central control unit is a Raspberry Pi 3 Model B+ (following Pi) with a custom build hat module (circuit board). The hat module offers four female USB connectors and maps them onto the GPIO of the Pi.

Each buzzer connects via a USB cable to the Pi hat. On the Pi, we can place software and read the buzzer signals (e.g., buzzer pressed) and react on this.

If the software (running on the Pi) offers a UI and the Pi connects to a network (or opens up a new network), a client can connect to it. As a small software example: Show in the UI which button is pressed.

It is how it looks like:

The complete setup: Buzzer -> USB -> Raspberry Pi -> Computer

You are missing the context, what this is all about? Have a look at

What we need / Bill of materials (BOM)

To replicate this project and build your buzzers, you need a couple of things. We have created a complete list of what you need, a so-called Bill of material (BOM).

Check it out: Bill of materials (BOM).

Buzzers

First, we start with the buzzer case and print it with a 3D printer. Printing instructions / Step files can be found in the 3d-models folder for the buzzer cases. Feel free to choose the color of your printing material for the right look. Go ahead and print!

If you are new to 3D printing, step files are printing instructions. You can few and edit them with software like Fusion 360 from Autodesk (they offer a free version for startups and hobbyists).

3D model of the buzzer case 3D model of the buzzer lid

Next step would be to build the small circuit board that connects the buzzer with the USB socket:

Buzzer wired internally

Check out the step-by-step image guide on how to build this in our buzzer building folder.

Congratulations, you build your first game show buzzer. How awesome is this?

Raspberry Pi Hat

Second, we build our custom Pi hat. The buzzers are connected to the GPIO on the Raspberry Pi. For convenience reasons, we built a custom Pi hat with USB sockets. This makes it easier to assemble and disassemble the setup.

Raspberry Pi hat front view Raspberry Pi hat back view

We used EasyEDA to design the printed circuit board (PCB). We made the project public. Check it out at RPI 4Button LED HUB from derebbe @ EasyEDA.

The EasyEDA project shows you which resistor, transistor or pin has to be placed. Furthermore, you can order the pre-designed PCB at EasyEDA. Pre-designed, in this case, means: You get the circuit board and need to place the components on it. All wholes are pre-defined, and all components are connected already.

If you want to create the circuit board on your own, you can find all Gerber files in our Raspberry Pi Hat Gerber folder. You can also do a fresh export from our project on EasyEDA.

If this is done, place the hat on the GPIOs on top of the Raspberry Pi. By this, you are good to go!

GPIO pin out

Placing the hat on the pi, you connect the buzzers with the GPIO. To react with your software on buzzer pushed, you need to know which pins your software need to listen on. The GPIO pin out assignment looks like the following:

USB Port GPIO Pin (BCM) GPIO Pin (Physical) Purpose
Port #1 21 40 Button
Port #1 26 37 LED
Port #2 20 38 Button
Port #2 19 35 LED
Port #3 16 36 Button
Port #3 13 33 LED
Port #4 12 32 Button
Port #4 6 31 LED

The pin-out mapping from the go-rpio documentation is super helpful.

Raspberry Pi

Third and last step lets set up the Pi! On the Raspberry Pi (following Pi) itself, we install a standard Raspbian Lite operating system without any desktop functionality.

To access the Pi from an external client (e.g., laptop or mobile phone) you should connect it to a network. Either to an existing one via a typical RJ45 LAN cable or a wireless network (can be done via raspi-config). If you want to run it completely independent and maybe offline, we recommend to configure the Pi as a wireless access point.

Add the Pi hat onto the GPIO and move on to your first software tests.

Custom Raspberry Pi case

A Pi with a hat consumes more space. Especially with a custom hat, it is hard to find a case that fits. That's why we printed our own.

Printing instructions / Step files can be found in the 3d-models folder for the raspberry pi case. Feel free to choose the color of your printing material for the right look. Go ahead and print!

3D model of the custom Raspberry Pi case 3D model of the custom Raspberry Pi case lid

How we can test the buzzers (with software)

Set everything up. Connect the buzzers with the Raspberry Pi and start the machine. It is time to test our new hardware with software ❀️.

Have a look at our test scripts and test applications. Choose the one you like the most (or by roll a dice):

If everything works out, it is okay to freak out and run naked through your flat. You deserved it. You have built the foundation for more. Don't stop. Find out what you can do with buzzers.

The result

We have set up a quick demo setup. Have a quick look at this video: things with buzzers: hardware showcase @ YouTube.

Things you can do with buzzers

Contribute

If you are a maker or an engineer or just someone who wants to create and ship awesome things: Go ahead and make this better. Feel free to fork it and play your changes back via a Pull Request.

If you ...

  • are unsure
  • plan to do a more significant rework
  • want to get feedback about the idea before you put the effort in

Open an issue and let us talk about your idea.

You have built your own buzzers and did awesome things with it? Write an article in your blog, or tell us the story in an issue or make a Pull Request with a Markdown file. But tell us. Let us know. Inspire us!

We believe that we can do more together. Let's to it together! πŸš€

Acknowledgments

A big thank you to Lars Heß / @lhess and Matthias Endler / @mre. Without them, this project would not happen.

Lars has designed and built the complete hardware. Matthias helped a lot with the software and motivation part πŸ˜€

You can’t perform that action at this time.