True random number generation is hard, but nature can help! This project uses the unpredictability of wind to increase randomness.
How it works: the wind blows and spin the turbine, which spins magnets surrounding a Hall Effect sensor. The sensor's analog reading is then used to seed Arduino's random number generator.
In this project, I demonstrate how it works using an Arduino Leonardo with LCD shield to display both the sensor reading and the generated random numbers.
Parts List
Arduino + Mounting Hardware + LCD Shield by DFRobot + 9V Battery with Connector.
Hall Effect Sensor + Wire.
4 Magnets (1/4" diameter cylinder. 1/16" thick).
2" T-pins (it's the axle).
BB gun ammo, Stainless Steel, 4.5 mm (balls for bearing).
For enclosure: #6 machine screw
Easy to make; no soldering. No print support. Any dimensional correct printer setting would do. The only overhang is screw mounting holes, which you tap out. The rest of the overhangs are no larger than 45 degrees. Many parts are friction fitted.
Discover our new series of 11 industrial-grade RS485 water quality sensors. Featuring IP68 rating, Modbus RTU, optical dissolved oxygen (DO), and Arduino compatibility for continuous IoT water monitoring.
Explore DFRobot’s AI & STEM education ecosystem at Bett Brasil 2026 (Booth M120, São Paulo). Hands-on AI literacy, robotics, and GenAI projects for K-12 classrooms.
Unlock advanced smart home automations with the $8.9 DFRobot C4002 mmWave sensor. Learn to extract raw speed, energy, and direction data using ESPHome.