This content originally appeared on DEV Community and was authored by Mohamed Riham
I built a real-time Sri Lankan Rupee (LKR) currency detector using YOLOv8, ESP32-CAM, and DFPlayer Mini to provide audio feedback. The goal is to create a low-cost assistive tool that helps blind and visually impaired users identify money independently.
💡 The Problem: Identifying Currency Without Sight
For many visually impaired individuals, identifying banknotes is a daily challenge.
While some mobile apps exist, they often require smartphones or lack support for local currencies. I wanted to build a dedicated embedded device — simple, affordable, and tailored for Sri Lankan Rupees — that gives instant audible feedback.
🔧 The Solution: YOLOv8 + Embedded Hardware
My project, Sri Lankan Currency Detector, combines modern computer vision with accessible hardware to deliver fast, reliable, and practical results.
1️⃣ Real-Time Object Detection with YOLOv8
At the heart of the system lies the YOLOv8n model, chosen for its speed and accuracy.
- Detects six denominations: Rs. 20, 50, 100, 500, 1000, and 5000.
- Trained on a custom dataset of over 1,000 annotated images captured under various lighting and orientation conditions.
- Optimized for real-time inference on lightweight systems.
2️⃣ Live Video Capture with ESP32-CAM
To make the system portable and practical:
- ESP32-CAM captures live video frames.
- The feed is processed on a connected device (PC or Raspberry Pi).
- Compact design ensures the system is lightweight and mobile.
3️⃣ Audio Feedback via DFPlayer Mini
This turns the project from just a detection model into a true assistive technology.
- When a note is detected, the DFPlayer Mini plays a pre-recorded audio clip (e.g., “100 Rupee note detected”).
- Provides instant audible feedback, allowing users to identify currency hands-free.
⚙️ How It Works (Simplified Flow)
- Capture: ESP32-CAM captures the live video feed.
- Process: Frames are analyzed by the YOLOv8 model.
- Detect: The model identifies the denomination of the banknote.
- Announce: DFPlayer Mini plays the corresponding audio message.
(You can include a block diagram or workflow image here.)
🧩 Technical Challenges & Lessons Learned
- Dataset Diversity: Collected images in various lighting and orientations to ensure robustness.
- Model Optimization: YOLOv8n provided a great balance between speed and accuracy; quantization is a future step for full edge deployment.
- Hardware Integration: Coordinating serial communication between ESP32-CAM and DFPlayer Mini required careful synchronization.
🚀 Future Improvements
- Quantized YOLOv8 model for direct on-device inference.
- Multi-language audio support for wider accessibility.
- 3D-printed enclosure for a portable, user-friendly design.
🧠 Try It Yourself!
All code, model weights, and dataset details are available on GitHub.
I’d love your feedback, suggestions, or collaboration ideas!
🔗 GitHub: mohamed-riham/Sri-Lankan-Currency-Detector-YOLOv8
🎥 Demo Video: Watch on YouTube
🏁 Conclusion
This project shows how AI and embedded systems can create real-world impact when applied thoughtfully. By combining YOLOv8 with ESP32-CAM and DFPlayer Mini, we can bring independence and accessibility to those who need it most.
If you enjoyed this project or have ideas for improvement, let’s connect in the comments! 👇
Tags:
deeplearning #computervision #yolov8 #esp32 #iot #accessibility #assistivetech #python #machinelearning #opensource #MohamedRiham #mohamedriham #riham
This content originally appeared on DEV Community and was authored by Mohamed Riham

Mohamed Riham | Sciencx (2025-10-18T15:11:40+00:00) 🧠 Building an Accessible Currency Detector for the Sri Lankan Visually Impaired with YOLOv8, ESP32-CAM & Audio Feedback. Retrieved from https://www.scien.cx/2025/10/18/%f0%9f%a7%a0-building-an-accessible-currency-detector-for-the-sri-lankan-visually-impaired-with-yolov8-esp32-cam-audio-feedback/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.