Ir para conteúdo
3DFinder
Entrar

Você está no 3DFinder

Buscamos em Thingiverse, MakerWorld e Printables ao mesmo tempo para te dar o melhor de cada uma.

Buscar mais como este
Modelo 3D PuWi: Pushbuttons with WiFi! por doragasu no Thingiverse

Descrição

What's this?

This is an electronic button design for quiz games. The idea is to build a host button and up to four player buttons and play as shown in the video: https://www.youtube.com/watch?v=L-j9yM4ZkZQ I use a SMD MMBT2222 transistor and Buttons have an internal battery (that can last for several hours) and communicate via WiFi, so no wires are needed to play the games. On the software side I have also implemented a Telegram bot server on the host button, so game progress can be displayed on any Telegram client!

Building

The heart of each button is an ESP8266 nodemcu-like board with a 18650 lithium battery. So in addition to printing the case, you will have to wire to it the button and the NeoPixel LEDs.

Required parts

For each button you want to build, you need:

Required tools

  • 3D printer (of course)
  • Solder iron
  • Hot glue gun
  • Screwdrivers
  • Computer
  • Micro-B USB cable
  • Cable crimper (if you don't want to solder directly to the button contacts).

Build instructions

Material preparation

  1. Button LED: The buttons I bought have a LED and a series resistor. The built-in series resistor is calculated for the LED to be powered with 12 volts. As we will be using 5 volts, if you find the LED intensity to be very dim, replace the built-in series resistor with a 180 ohm one.
  2. Button transistor: To be able to supply the current required by the button LED, you have to use a 2N7002 or equivalent transistor. I use the SMD version of the transistor and solder it directly to the board: the gate to GPIO5 (D1 pin), the drain to GND and the source to the LED. But you can use a more traditional through hole part replicating this wiring.
  3. Power switch: Desolder the power switch embedded in the board. We will use a different one to power the button. Alternatively you can keep it in the board in the OFF position and wire the sliding power switch in parallel.
  4. (OPTIONAL) Battery voltage divider: if you want to have battery readings, replace the voltage divider resistors on the A0 pin by a 330k and a 100k resistor. The analog pin in the ESP8266 can only sample up to 1 volt, so this divider guarantees that for a 4.2V maximum battery voltage, we will have: 4.2 * 100 / (100 + 330) = 0.98 V.

Assembly

  1. 3D print the enclosure. Top and bottom parts can be printed in any color you like. I recommend using one color for the players and a different color for the host. The LED windows must be printed in transparent color. You do not need supports for any of the parts. You might think you need supports for the neopixel window, but you don't, just rotate it 180 deg and print.
  2. Glue the LED windows using a bit of cyanocrilate.
  3. Mount the ESP8266 board. Leave it in place using two round head M3 screws.
  4. Assemble the pushbutton. Note you might need to carefully bend the contacts in the bottom to be able to close the case.
  5. Put the neopixel LED bar in the neopixel window.
  6. Wire everything (see below for details).
  7. Put the slide switch in its slot on the bottom piece of the case. Glue it using hot glue.
  8. Glue the neopixel LED bar using cyanocrilate and/or hot glue.
  9. Put the 18650 battery in place.
  10. Close the case fitting in place the bottom part. Use 4 M3 flat head screws to keep it in place.

Wiring

Wiring can be a bit complex, so I have separated it in its own subsection.

  1. Connect the anode of the pushbutton LED to +5V.
  2. Connect the cathode of the pushbutton LED to the drain of the transistor (as explained in the material preparation subsection).
  3. Connect one pushbutton contact to GPIO13 (D7 pin).
  4. Connect the other pushbutton contact to GND.
  5. Wire the VDD pad in the neopixel bar to +5V.
  6. Wire the GND pad in the neopixel bar to GND.
  7. Wire the DIN pad in the neopixel bar to GPIO12 (D6).
  8. Connect the sliding switch to the board in the positions of the replaced switch (or in parallel to it).
  9. (OPTIONAL) Use the second circuit of the switch to connect the battery positive pin to the A0 pin only when the switch is in the ON position.

Firmware download

To download the firmware for the host pushbutton and the player pushbuttons, follow the instructions in their respective GitLab repositories:

In the repositories you will also find usage instructions, including WiFi provisioning and Telegram bot usage.

License

  • CAD files for the enclosure are CC - Attribution license. The FreeCAD design files are included in addition to the STL files, in case you want to modify anything.
  • Source files are GPLv3 licensed.
Thingiverse

PuWi: Pushbuttons with WiFi!

12
Curtidas
0
Downloads
5
Coleções
Licença Creative Commons - Attribution
Arquivos (4)
neopixel-window.stl 159.8 KB
doraquiz-bot.stl 952.8 KB
led-window.stl 1.5 MB
doraquiz-top.stl 3.8 MB
Ver no Thingiverse (abre em nova aba)