A Reverse Engineered Nerf Machine Gun, powered by Arduino and an XBOX kinect.
How it works
This app uses a Microsoft Kinect in order to watch any given area. What the app will do is while the camera is on, the sentry is "watching".
While the sentry is watching any given area, the Kinect will know when a person's body has walked in front of the camera. If a person has walked in front of the camera then we will instantly send a signal to an automatic machine nerf gun.
The nerf gun is something we bought from walmart that we purchased in the beginning of the hackathon, we opened it and with the help of the PSU mentors reverse engineered the signals to launch the darts.
The nerf gun is being controlled by an Arduino Mega that has contacts which have been soldered and tied with electrical tape to the internals of the gun.
Every time we launch a dart we take a screenshot with the kinect, and then we tweet the photo of the person after they've been shot.
The next thing we did was build up a flask backend that's monitoring the twitter account and keeping a counter of how many tweets have been made by the gun, (the number of tweets!).
Our web app uses the BlockChain API in order to set up a virtual bitcoin wallet to charge 'users' after they have been shot in order to blackmail them into paying our wallet. The site also has a QR code that's generated that you can use to send a bitcoin.
Once a user pays money to the backend, the tweet will be deleted, and we'll make some money!
- Microsoft Kinect 2
- Nerf Dart Gun
- Arduino UNO or Arduino Mega.
- Microsoft Kinect 2 SDK
- Arduino IDE
- Python 2.7.8 or greater
Resources and Examples
- Look at the Body Index Basics and /Color Basics in the Microsoft Kinect SDK Browser V2. This will explain how most of the code works.
- Look at example and basic I/O in Arduino.
This is our submission for HackPSU sponsored by MLH. Huge thanks to my teammates and other PSU students and mentors!!