Code Monkey home page Code Monkey logo

arduino_prop_bomb's Introduction

Arduino Prop Bomb

Prop bomb for use in Airsoft/Gel ball/Nerf games

Check out the video here

Submit issues via the issues tab. Contact me at [email protected]

Electronics parts list:

(It may be possible to use alternative parts, however, the code will have to be customised for them)

  • Arduino Mega 2560
  • 12 button keypad (0-9, *, #)
  • 128 * 64 3-wire SPI LCD display (I used this one)
  • Red and green buttons either with built in LED's or separate LED's (Make sure to use the appropriate resistor for your LED's)
  • 3 position 2 pole keyswitch if using for power and to enter config mode or 2 position 1 pole switch if just for config mode (Use a separate switch for power)
  • Square wave buzzer
  • 7 to 12 volt power supply for Arduino (in my case, I used 2 18650 Li-Ion cells in series in battery holders)
  • BMS to prevent over charging/over discharging of batteries (important if using Li-Po or Li-Ion batteries without integrated BMS)
  • Various jumper cables/ribbon cables to connect everything together

Optional parts list:

  • Some kind of case or enclosure (I used a black ABS 197Lx112Wx63Hmm box)
  • Protective acrylic cover for LCD
  • Charging PCB for Li-ion or Li-po batteries (I have omitted this and just remove the batteries when I need to charge them)
  • Handle for carrying
  • Protective corners to prevent damage to the bomb

Wiring connections:

NO = Normally open, NC = Normally closed

These can be edited in the "Pins" section of the code

  1. SPI LCD Display

    1. LCD VCC - Arduino 5V
    2. LCD GND - Arduino GND
    3. LCD RS - Arduino 4
    4. LCD RW - Arduino 3
    5. LCD E - Arduino 2
  2. Keypad

    1. Keypad 2 - Arduino 20
    2. Keypad 3 - Arduino 19
    3. Keypad 4 - Arduino 18
    4. Keypad 5 - Arduino 17
    5. Keypad 6 - Arduino 16
    6. Keypad 7 - Arduino 15
    7. Keypad 8 - Arduino 14

Pinout on my keypad Image of keypad pinout

  1. Buttons

    1. Red button COM - Arduino GND (Or use 49 to save on wiring)
    2. Red button NO - Arduino 47
    3. Green button COM - Arduino GND (Or use 46 to save on wiring)
    4. Green button NO - Arduino 48
  2. LED's

    1. Red LED Cathode (-) - Arduino GND
    2. Red LED Anode (+) - Arduino 53 (Must use appropriate resistor)
    3. Green LED Cathode (-) - Arduino GND
    4. Green LED Anode (+) - Arduino 52 (Must use appropriate resistor)
  3. Keyswitch

    1. Key GND - Arduino GND (Or use 24 to save on wiring)
    2. Key NO - Arduino 22
  4. Buzzer

    1. Buzzer - Arduino 11 + 12 (Polarity irrelevant)
  5. Battery (Use second pole of keyswitch or a separate switch in series to toggle power)

    1. Battery Ground (-) - Arduino GND
    2. Battery Positive (+) - Arduino VIN

Required libraries

  • U8g2 by oliver (Available in library manager or here)
  • Keypad by Community https://github.com/Chris--A/Keypad (Available in library manager or here)
  • Button by t3db0t (Available here)
  • ToneAC by Tim Eckel (Available in library manager or here)
  • EEPROMEx by Thijs Elenbaas (Available in library manager or here)
  • Timers by LachlanGit/Me (Available here)

Configuration mode usage

  • Turn key to config position (will be different depending on your key switch used)
  • Use Red and Green buttons to cycle through screens
  • Type in setting with numbers, taking note of the unit used (milliseconds/seconds/etc.)
  • Press "#" to save the setting to EEPROM, or press "*" to clear entered value
  • Turn key out of config position to go back to play mode

Game play usage

  • Use this video as a rough guide or follow on-screen instructions

arduino_prop_bomb's People

Contributors

lachlangit avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.