Posts with «arduino» label

Creating a classroom quiz machine with Arduino

Quiz games, where contestants try to “buzz” in and answer questions make for fun televised game shows, but they can also be great for making learning fun. In order to avoid paying several hundred dollars for an official quiz machine, Instructables user “arpruss” decided to build one for his school using an Arduino Mega.

The device uses a series of CAT-6 cables to connect individual arcade-style buttons to a central control unit with RJ45 connectors, allowing each contestant to buzz in with an answer. While not approved for official competition, the system can pick out button presses down to a precision of 50 microseconds or less and displaying the order on an LCD screen, reliably determining the fastest individual nearly all of the time!

The Certamen quiz team competition from the Junior Classical League involves quiz questions on Greek/Roman subjects. Individual contestants press buzzer buttons when they have an answer. The machine keeps track of the order in which buttons were pressed, subject to the team-lockout rule that once a player on a team presses a button, the other presses from that team don’t count. The machine we built was for three teams of four players each. Additionally, so that other school groups could use the machine as a standard quiz machine, there is an option to disregard teams and just keep track of button order.

Want to create your own? Be sure to check out the project’s full tutorial here!

2 wheel self-balancing robot

Star Wars fan builds an Arduino-powered R4-P17 replica

Alejandro Clavijo, together with his father Jerónimo, spent two years building the first official fan-made model of the R4-P17 Star Wars droid. For those not familiar with this family of droids, R4-P17 was the robot companion to the young Obi-Wan Kenobi.

The replica is made of aluminum and wood, and runs on four Arduino boards. Impressively, the project has also been approved by Lucasfilm, the studio behind the saga, allowing Clavijo to bring it to official Star Wars events all over the world.

Clavijo sent us a bunch photos showing R4-P17’s construction, and more can be found over on its website. As you can imagine, the robot has been a big hit, already making several appearances on TV and in a number of blogs.

When not recreating Star Wars characters, Clavijo spends his days working as an engineer and has designed controls for “clean rooms” using Arduino Uno. You can see his design–made with CATIA–on Thingiverse.

Arduino Blog 13 Nov 19:40

This Week in Making: Hackaday 2017 Grand Prize Winner and DIY Pinball Machine

This week, check out the Grand Prize winner of Hackaday 2017: an open source underwater drone that's both cheap and easy to make.

Read more on MAKE

The post This Week in Making: Hackaday 2017 Grand Prize Winner and DIY Pinball Machine appeared first on Make: DIY Projects and Ideas for Makers.

Roll Your Own Arduino PWM

Most projects are built on abstractions. After all, few of us can create our own wire, our own transistors, or our own integrated circuits. A few months ago, [Julian Ilett] found a problem using the Arduino library for PWM. Recently, he revisited the issue and used his own PWM code to fix the problem. You can watch the video below.

Of course, neither the Arduino library nor [Julian’s] code is actually producing PWM. The Atmel CPU’s hardware is doing the work. The Arduino library gives you a wrapper called analogWrite — especially handy if you are not using an Atmel CPU where the same abstraction will do the same work. The issue arose when [Julian] broke the abstraction to invert the PWM output.

The video does a good job of framing the issue. Setting the PWM hardware to zero still causes a one tick output to occur. That is, the actual count is the count you supply plus one. That’s great on the high end where 255 is treated as 256 out of 256. But at the low end, a zero counterintuitively gives you 1/256. The Arduino library authors elected to detect that edge case and just force the output pin to go low in that case. When inverted, however, the pin still goes low when it ought to go high. You can see the source code responsible, below.

pinMode(pin, OUTPUT);
if (val == 0)
  {
  digitalWrite(pin, LOW);
  }
else if (val == 255)
  {
  digitalWrite(pin, HIGH);
  }
else
{ ...

Oddly, the 255 case appears to be superfluous in the normal case but is also backward if you invert the output. In all fairness, the Arduino library doesn’t provide you a way to invert the output, so you’ve already broken the abstraction and that’s why this isn’t technically a bug in the library.

[Julian’s] code is quite simple. There’s initial set up of the TCCR1A and TCCR1B registers along with ICR1. The DDRB register sets the pin as an output. After that, writing to OCR1A and OCR1B set the PWM value. The video explains it all in great detail.

We’ve looked at PWM on FPGAs at least once, and that post gives some background on PWM in any application. We also have our own video from way back in 2011 about PWM.


Filed under: Arduino Hacks
Hack a Day 12 Nov 12:00

Automating a Bowl Feeder with Arduino

Search for “bowl feeder” on Hackaday and you’ll get nothing but automated cat and dog feeders. That’s a shame, because as cool as keeping your pets fed is, vibratory bowl feeders are cooler. If you’ve seen even a few episodes of “How It’s Made” you’re likely to have seen these amazing yet simple devices, used to feed and align small parts for automated assembly. They’re mesmerizing to watch, and if you’ve ever wondered how parts like the tiny pins on a header strip are handled, it’s likely a bowl feeder.

[John] at NYC CNC is building a bowl-feeder with Arduino control, and the video below takes us on a tour of the build. Fair warning that the video is heavy on the CNC aspects of milling the collating outfeed ramp, which is to be expected from [John]’s channel. We find CNC fascinating, but if you’re not so inclined, skip ahead to the last three minutes where [John] discusses control. His outfeed ramp has a slot for an optical sensor to count parts. For safety, the Arduino controls the high-draw bowl feeder through an external relay and stops the parts when the required number have been dispensed.

We know, watching someone use a $20,000 CNC milling station might seem overkill for something that could have been 3D printed, but [John] runs a job shop after all and usually takes on big industrial jobs. Or small ones, like these neat color-infill machine badges.


Filed under: Arduino Hacks, misc hacks, tool hacks

Mini Strandbeest goes electric with Arduino

Strandbeests, as originally conceived, are gigantic PVC creatures that walk across the sand under wind power. While building one is certainly an enormous undertaking, smaller models are available that let you experience this strange kinetic motion in a more approachable size. These are also normally propelled by moving air, but maker “ArduinoDeXXX” decided to take things further with a pair of DC motors and an Arduino Nano.

The project came together over five distinct iterations, starting off with the normal wind-driven version, then adding uncontrolled motors. After that, the Arduino was included for automation, and this was upgraded with an IR remote. Finally, ArduinoDeXXX integrated simple gesture sensing using an array of IR LEDs.

You can see the mini Strandbeest in action below, along with a few “bonus” improvements at the end.

Stop Motion with the Time Glove

What do you get when you put an ultra-bright LED in the palm of a glove, and strobe it controlled by an accelerometer? A Time Control Glove! In creator [MadGyver]’s own words, it’s “just a stroboscope with frequency adjustment” but the effect is where all the fun is.

The Time Control Glove uses the stroboscopic effect, which many of us have seen used in timeless water drop fountains where the strobe rate makes drops appear to change speed, freeze in place, and even change direction. [MadGyver] made the entire assembly portable by putting it into a glove. An on-board accelerometer toggles the strobe in response to a shake, and the frequency is changed by twisting the glove left or right. The immediate visual feedback to the physical motions is great. The whole effect is really striking on the video, which is embedded below.

Schematics and bill of materials are available on GitHub. Brilliant work! And while we’re discussing the stroboscopic effect, find out how it can be used to tune guitar strings.

[via Arduino Blog]


Filed under: Arduino Hacks, how-to, led hacks

Build a Thermoelectric-Cooled Drinkibot

John Park uses a Peltier cooler, a Trinket M0, and CircuitPython to build a drink-dispensing and cooling robot.

Read more on MAKE

The post Build a Thermoelectric-Cooled Drinkibot appeared first on Make: DIY Projects and Ideas for Makers.

Hackaday Prize Entry: Reflowduino, the Open Source Reflow Oven Controller

Face it — you want a reflow oven. Even the steadiest hands and best eyes only yield “meh” results with a manual iron on SMD boards, and forget about being able to scale up to production. But what controller should you use when you build your oven, and what features should it support? Don’t worry — you can have all the features with this open source reflow oven controller.

Dubbed the Reflowduino for obvious reasons, [Timothy Woo]’s Hackaday Prize entry has everything you need in a reflow oven controller, and a few things you never knew you needed. Based on an ATMega32, the Reflowduino takes care of the usual tasks of a reflow controller, namely running the PID loop needed to accurately control the oven’s temperature and control the heating profile. We thought the inclusion of a Bluetooth module was a bit strange at first, but [Timothy] explains that it’s a whole lot easier to implement the controller’s UI in software than in hardware, and it saves a bunch of IO on the microcontroller. The support for a LiPo battery is somewhat baffling, as the cases where this would be useful seem limited since the toaster oven or hot plate would still need a mains supply. But the sounder that plays Star Wars tunes when a cycle is over? That’s just for fun.

Hats off to [Timothy] for a first-rate build and excellent documentation, which delves into PID theory as well as giving detailed instructions for every step of the build. Want to try lower-end reflow? Pull out a halogen work light, or perhaps fire up that propane torch.


Filed under: The Hackaday Prize, tool hacks