SmartCart
Team F0: Lois Yun, Aanya Rustogi, Lekha Punya
18-500 Capstone Design, Spring 2025
Electrical and Computer Engineering Department
Carnegie Mellon University
System Architecture
Product Pitch
SmartCart is a portable AI-powered grocery assistant that streamlines shopping by providing real-time barcode scanning, allergy filtering, meal recommendations, and budget tracking.
Key achievements include:
SmartCart enhances public health, reduces food waste, and improves shopping efficiency.
The hardware subsystem features a Raspberry Pi 4 as the central processor, connected to an Eyoyo barcode scanner and power bank. All components are held together in a 3D-printed case. The mechanical design ensures durability, easy scanner access, and secure attachment to a shopping cart through a magnetically-reinforced clip.
http://course.ece.cmu.edu/~ece500/projects/s25-teamf0
System Description
System Evaluation
Conclusions & Additional Information
The system was tested both at module and system levels, focusing on communication robustness and functionality under real-world conditions.
Throughout Smartcart development, we set out to create a portable, real-time shopping assistant tailored to users’ dietary needs. Through extensive unit and field testing, we learned the importance of modular design and optimizing for realistic operating conditions. If continued, future work would focus on significantly reducing meal generation and ingredient mapping times by adding caching, pre-fetching data, or fine-tuning API interactions. We also envision expanding SmartCart into a fully integrated retail platform with live inventory updates, instant allergen alerts, and optional grocery delivery services.
Metric | Target | Actual |
Portability | ≥ 5.5” x 4” x 3” | 5.2” x 3.1” x 2” |
Scanning Accuracy | 95% | 100% |
Real-time Updates | ≈ 10-15s for meal recommendation & ingredient-prodcut mapping ≤ 1s update time | Meal Search, Ingredients generation, Product Recommendation, Allergy Filtering: 1 sec Meal rec: 17-20 sec Ingredient to product mapping: 20.39 sec |
Alternative Suggestions | ≥ 1 substitute per item | At least one item shows up 100% |
Battery Life | ≥ 2 hours | ≥ 3 hours |
Filtering Accuracy | ≥95% | 100% |
Fig 5. System Performance Compared to Target Metrics
Fig 1. System Diagram
Fig 3. Device Mounted on Shopping Cart
Fig 4. Mobile App UI
Shopper scans item
App updates in real-time
Barcode Scanner
Clip
3D Printed Case
Power Bank
Fig 2. Final CAD Model of 3D Case
SmartCart consists of a portable processing unit, barcode scanner, local backend, and power bank in a custom case. The processing unit receives product codes, processes data, and communicates with the user-facing application over a messaging protocol. The backend handles product lookup, allergen filtering, and meal recommendations. Results are transmitted in real-time to the application, enabling updates on product information, allergens, and substitutions.
SmartCart enhances grocery shopping through two integrated subsystems: hardware and software.
The software subsystem runs on the Raspberry Pi, which communicates with the React Native mobile app via MQTT protocol. Scanned UPC codes are processed by the Raspberry Pi, which queries the Spoonacular API for product details. The mobile app allows users to manage shopping lists, filter by dietary needs, and plan meals using AI-powered suggestions. LangChain coordinates with multiple APIs to retrieve product details, recipes, and dietary information efficiently.