Since this is our first project, we were a bit stretched for ideas, so we decided to bring a plethora of technology from a variety of sources, disassemble as much as we could, and build something new and fantastic.
What it does
The rotating duck actually rotates! Using a remote, we are also able to force it to switch rotation directions, as well as make quacking sounds. The system also features a LCD screen counting the number of rotations.
How we built it
Work was split two-fold, with Dale working on the Raspberry Pi hardware and python control interface, and Jacob working on the remote control through ssh and c.
- We began by working disassembling existing hardware devices, such as a cheap drone, as well as providing existing equipment such as a Raspberry Pi, an LCD Screen, a PSOC 5, a breadboard, a servo, and various other accessories, as well as our center-piece, the Rubber Duck.
- We spent the first day exploring the various possibilities with our components, eventually finding that a duck rotating on a servo was oddly amusing.
- This was an excellent base, but we needed more for our project.
- We began exploring uses of Bluetooth remote control, using the Raspberry Pi 3 as a receiver, and the complimentary "Selfie Trigger" provided by the AT&T.
- After some learning about the way that Bluetooth is transmitted, we eventually were able to co-opt the signal being produced from the Selfie Device into a program, to use as a trigger in our own scripts.
- Meanwhile, we worked on producing a reliable method of communication between running processes.
- We added in a small speaker, with an added sound effect of a duck, upon trigger.
- Eventually, we were able to complete our rotating duck, complete with remote control and audio sound effect.
Challenges we ran into
- Difficulty programming the digital encoder
- We had a challenging time with keyboard interrupts
- Difficulty with communication between scripts.
Accomplishments that we're proud of
-We managed to successfully co-opt a bluetooth signal to our own purposes. -We were able to wire our own servos to build a remote controlled rotating platform.
What we learned
- We learned how to better use servos
- How to communicate with a raspberry pi using uncommon bluetooth communication devices.