A fun Arduino project where your plant can โscream,โ โbeg,โ or โsingโ based on its soil moisture level.
It uses a moisture sensor, LCD display, RGB LEDs, and a DFPlayer Mini with a speaker to give your plant a personality.
- Reads soil moisture and displays % on LCD.
- RGB LED shows plant mood:
- ๐ด Red flashing = dying of thirst
- ๐ข Green steady = happy
- ๐ต Blue breathing effect = sleeping/overwatered
- DFPlayer Mini plays MP3 sounds from microSD:
0001โ0003.mp3โ Plant screams/begs when dry0004.mp3โ Plant thanks you when watered
- Random LCD messages for variety (โHelp meeee!โ, โYay ๐ฑ๐โ).
- Arduino Uno
- DFPlayer Mini MP3 Player + Speaker
- LiquidCrystal_I2C (16x2 LCD)
- Soil Moisture Sensor
- RGB LED (or 3 LEDs with resistors)
- Arduino IDE
- Arduino Uno board
- Moisture Sensor โ
A2 - DFPlayer Mini โ
D10(RX),D11(TX),SPK_1/SPK_2โ Speaker - LCD I2C โ
SDA/SCL - RGB LED โ
D3(Red),D4(Green),D5(Blue), each with 220ฮฉ resistor
- Install Arduino IDE.
- Install required libraries:
LiquidCrystal_I2CDFRobotDFPlayerMini
- Format microSD card to FAT32, place MP3s:
- 0001.mp3
- 0002.mp3
- 0003.mp3
- 0004.mp3
- Upload code to Arduino Uno.
- Insert moisture sensor into soil.
- Power Arduino Uno via USB or 5V supply.
- Watch LCD messages, LED mood changes, and listen to plant โscreams.โ
Arduino-Screaming-Plant/
โโโ screaming_plant.ino # Main Arduino sketch
โ
โโโ assets/
โ โโโ audio/
โ โ โโโ 0001.mp3 # Dry alert (variation 1)
โ โ โโโ 0002.mp3 # Dry alert (variation 2)
โ โ โโโ 0003.mp3 # Dry alert (variation 3)
โ โ โโโ 0004.mp3 # Water received sound
โ โโโ images/
โ โโโ wiring_diagram.png # Fritzing or circuit wiring diagram
โ
โโโ docs/
โ โโโ README.md # Main project documentation
โ โโโ changelog.md # Version history
โ
โโโ .gitignore
โโโ LICENSE
- Share
.inofile inside/src. - Provide
sounds/folder with MP3 samples. - Document hardware wiring diagram (optional Fritzing).
- Add temperature sensor (DHT11/LM35) โ plant complains if too hot/cold.
- WiFi/IoT support with ESP8266 โ send plant tweets when thirsty.
- Mobile app integration for remote monitoring.
- More MP3 sounds (Mario theme, Zelda chimes, etc.).
- 3D-printed enclosure to make it look like a flowerpot gadget.
- New thirsty sound files (
0001.mp3โ0004.mp3). - Special watering sound (
0005.mp3) triggered when plant receives water. - Improved randomization for thirsty messages.
- Updated DFPlayer logic to support expanded audio files.
- Adjusted LCD messages to sync with new sound logic.
- Initial release of Screaming Plant Project.
- Soil moisture sensor calibration (
wet = 511,dry = 673). - LCD display with randomized plant messages.
- RGB LED indicators:
- Flashing Red = Thirsty.
- Solid Green = Happy.
- Breathing Blue = Resting.
- DFPlayer Mini integration with 4 audio tracks.
- Arduino Uno (or compatible)
- 32 GB or smaller microSD card (FAT32)
- Arduino IDE 1.8+ or Arduino IDE 2.x
- No sound? โ Check DFPlayer wiring (cross RX/TX), ensure microSD is FAT32 with correct file names (
0001.mp3). - LCD not showing? โ Verify I2C address (try
0x27or0x3F). - LED not lighting? โ Check resistors and confirm pins support PWM (
D3,D5). - Moisture always 0%/100%? โ Recalibrate
wetanddryvalues in code.
- DFRobotDFPlayerMini Library
- Arduino community tutorials for inspiration.
- Open-source spirit ๐.
- TINKERCAD
- Nooby
- Firelink
- SBBC PC
- Rita's PC
- To my dog and cat
MIT License. See LICENSE for details.


