Make a user-friendly interface with an alphanumeric display, a rotary encoder and a finite state machine.
Project tutorial by frenchy22
This IR remote control is powered only while one of its buttons is pressed.
This stroboscope is a precise and versatile instrument which can be used to analyze periodic or fast motions.
Digital Bathroom scales you get for $20, not more expensive then mechanical analog scales, BUT so boring in design. Lets do it better !
Project showcase by plouc68000
Make your own TV remote!
Project tutorial by stegabetti
Magnetic levitation of an 11 cm (4.3") illuminated globe, rotating at a constant speed and nicely fitted inside a wooden lantern.
Project tutorial by Herwig Taveirne
Hey, you have fun games during the lockdown. I did something similar, but with several differences. Instead of replacing a broken IR remote control, I wanted to have a single one to control my TV set and my decoder, and I equipped it with 16 buttons. As I have no 3D printer, I made a no-enclosure design, it's quite original.
But above all, I used another method to save the battery, more hardware and more brutal : with a pair of FETs (an N-channel and a P-channel), I interrupt the power supply circuit of the Arduino board when no button is pressed. For this, each button is connected to the gate of the N-channel FET by a diode and to the ground by a resistor. The drain of the N-channel FET controls the gate of the P-channel FET through which the board is powered. As soon as a button is pressed, a voltage is applied to the gate of the N-channel FET and the P-channel FET powers the board which sends the IR code to the television set or to the decoder.
I'm afraid this solution will stress the Arduino board a bit, I'm waiting to see if it will survive longer than the battery.
Very nice project, but I think that, instead of replacing the millis() function by an interrupt and of rewriting the delay() function, it is possible to take into account the rolling out of the millis() function every 50 days by the following code :
unsigned long actualTime, lastTime, elapsedTime;
if (actualTime < lastTime) // The millis counter has rolled out
And you reset the delay when you want by copying actualTime into lastTime.
Or connect with your social account:
New here? Create an account