- Who: A team of hackers (one of whom is from Odisha) led through a hackathon despite COVID and last-minute dropouts.
- What: Cycloninator — a low-cost, compact weather station that measures local conditions, alerts via SMS, and persists data to the cloud.
- When: Submitted to MLH Hacknado, 2022.
- Where: Designed for Odisha, India and other coastal regions hit by annual cyclones.
- Why: Cyclones cost lives and livelihoods every year. A $20 box on a window ledge can give a household minutes of warning relief teams don't always provide.
Odisha gets hit by cyclones almost every year. Our teammate from there grew up with that rhythm — sirens, evacuation, recovery. He kept asking why a weather station had to be a government installation rather than a household appliance.
So we built Cycloninator, a desk-sized weather station emulator. A potentiometer (subbing for an unobtainable sensor array) feeds an Arduino, which classifies the reading into five severity levels and lights an LCD + LED rig. A NodeMCU ferries the same data over Wi-Fi to a Google Cloud Function, which writes to Firestore, mirrors to Linode object storage, and triggers a Twilio SMS when conditions cross threshold.
Things did not go to plan. A teammate dropped out the day before submission. The team lead caught COVID. We didn't have real sensors. We hacked around all three — and walked out with 2nd Overall and Best Use of Linode.
![]() |
![]() |
![]() |
![]() |
| Layer | Choice |
|---|---|
| Hardware | Arduino Uno + NodeMCU ESP8266, LCD (I2C), LEDs, potentiometer, jumper wires |
| Firmware | C++ via Arduino IDE |
| Cloud | Google Cloud Functions + Firestore |
| Storage | Linode Object Storage Bucket |
| Notifications | Twilio Programmable SMS |
| DNS | Linode DNS Manager (domain via GoDaddy) |
| Modeling | TinkerCAD circuit simulation |
.
├── ArduinoSimulation/ # TinkerCAD-friendly Arduino sketch
├── Hardware/ # Wiring diagrams & board configs
├── Twilio/ # SMS notification scripts
├── functions/ # Google Cloud Function source
└── Repository-Assets/ # Build photos & posters
- Open
ArduinoSimulation/in the Arduino IDE and flash it to an Uno. - Wire up: potentiometer → A0, LCD via I2C, LEDs to D2-D6 (see
Hardware/). - Pair a NodeMCU to forward serial readings over Wi-Fi.
- Deploy the Cloud Function from
functions/(gcloud functions deploy ...). - Drop your Twilio creds and target number into
Twilio/config.js. - Power it up — your bedroom now has a weather station.
The project is open-source on purpose — pick it up, swap in real sensors (BMP280, DHT22, anemometer), build a Chart.js dashboard, and ship it cheaper. PRs welcome.
MIT.
Submitted to MLH Hacknado 2022 by Gyanesh Samanta, Aaishika S Bhattacharya, and team. Linode credits courtesy of MLH; Twilio courtesy of their generous free tier.




