Skip to content

Latest commit

Β 

History

History
174 lines (115 loc) Β· 4.14 KB

File metadata and controls

174 lines (115 loc) Β· 4.14 KB

Bistro 92 Smart Ordering System

πŸ› οΈ Hardware Overview

This project was built for the Techathon competition under the MIE Robolution 2025 event.
We created an efficient, low-cost smart ordering system that transforms the chaotic dining experience into a smooth, modern one.


πŸš€ Key Hardware Features

  • Single Device, Multiple Tables:
    Instead of one device per table, we use one device to simulate multiple tables (1–16).
    Before booting, users input a 4-bit binary key representing the table number (e.g., 00010 = Table 2).

  • Startup Screen:
    Displays Bistro 92, Table Number, and Wi-Fi connection status.

  • Main Menu:

    • Right side: Food Menu.
    • Left side: Welcome message with Table No.
    • Button 3 ("+"): Scroll to next menu item.
    • Button 4 ("-"): Scroll to previous menu item.
    • Button 2 ("S"): Select highlighted menu item.
  • Ordering Process:

    • After item selection, users enter the Quantity Selection screen.
    • Use "+" (Button 3) to increase or "-" (Button 4) to decrease quantity.
    • Button 2 ("S") confirms quantity and adds the item to the cart.
    • Multiple items can be added.
  • Placing the Order:

    • Long press Button 2 ("S") until a long beep is heard.
    • Displays Order Summary.
    • Sends Order Data (Table No, Items, Quantity, Timestamp) to Firebase Database.
  • Resetting the Order:

    • Button 1 ("R") clears the cart and returns to the main menu.
  • User Feedback:

    • Buzzer feedback on every button press for better interaction.

πŸ› οΈ Hardware Used

  • ESP32 Microcontroller (with Wi-Fi)
  • OLED Display (1.3 inch for better visibility)
  • Soft Tactile Push Buttons (4 Buttons: R, S, +, -)
  • Buzzer (for button press feedback)

πŸ’‘ Big Idea Features

1. Augmented Reality (AR) 360Β° Food View

We implemented an AR feature where users can view a realistic 360Β° model of the food item using a HIRO marker.
Currently, the HIRO marker (hiro_box) is used as a reference point placed on the table. In the future, the implementation will move to markerless AR directly on the dining table for a smoother experience.

2. Interactive 3D Food Model (Move and Zoom)

Alongside AR, we also developed a 3D view system where users can freely rotate, move, and zoom into the food model.
This allows customers to inspect the dishes from different angles, enhancing their decision-making experience before placing an order.


πŸ“‹ Software Overview

πŸ“– Project Overview

This project is built using Django and Django Rest Framework.

By default, the Django server will run on port 8000.


πŸ› οΈ Setup Instructions

1. Install Backend Requirements

  • Navigate to the Backend directory:
cd Backend
  • Create a virtual environment:
python -m venv venv
  • Activate the virtual environment:

    • On Windows:

      venv\Scripts\activate
    • On macOS/Linux:

      source venv/bin/activate
  • Install the required packages:

pip install -r requirements.txt

2. Install Mirror Folder Requirements

  • Navigate to the mirror folder:
cd mirror
  • Create a virtual environment:
python -m venv venv
  • Activate the virtual environment:

    • On Windows:

      venv\Scripts\activate
    • On macOS/Linux:

      source venv/bin/activate
  • Install the required packages:

pip install -r requirements.txt

πŸš€ Running the Application

  • Run middleman.py from the mirror folder:
python middleman.py
  • Start the Django server from the Backend directory:
python manage.py runserver

πŸ“ˆ Why This Solution?

  • βœ… Cost-effective: One device can serve up to 16 tables.
  • βœ… User-friendly: Simple button navigation.
  • βœ… Real-time updates: Orders pushed instantly to the cloud.
  • βœ… Faster service: Reduces wait time and manual errors.
  • βœ… Scalable and Smart: Easy cloud-based operations.

Developed for Techathon 2025 | By Team Alpha