user-img

Grovety

  • 22 Projects
  • 22 Followers
  • May 28,2026
+ Follow

Smart Meeting Room Panel With Local Voice Control

Offline voice-controlled ESP32 meeting room system with synchronized panels and Google Calendar support.

Smart Meeting Room Panel With Local Voice Control
 
  • thumbnail-img
 

Story

 

Managing meeting rooms in small offices often turns into a mess — no clear schedule, no easy way to see availability at a glance.
To solve this, we built a meeting room control panel system based on ESP32. The system consists of two connected panels:
  • a main panel (5" or 7") installed near the room, showing schedule, weather, and company info
  • a secondary panel (3.5") mounted directly on the door for quick status indication
Both panels are synchronized and provide a simple, touch-based interface for managing room availability.
The system provides:
  • live room occupancy and availability status
  • quick meeting booking and release controls
  • synchronized calendar events from Google Calendar (NEW!)
  • visitor information screens with company and office details
  • local weather information
  • fully offline voice interaction and spoken notifications (NEW!)
  • support for an external 3.5" door-side status panel
The previous version of this project was built on the ESP32-S3 and is described here: ???? Hackster.io
This new version includes expanded functionality.
Google Calendar integration has been added, so all meetings are now displayed directly on the panel.
Another major feature is full voice control of the panel — you can start and end meetings, navigate between screens, and perform other actions entirely by voice.

Fully Local Voice Control

The panel includes built-in microphones and speakers, allowing users to interact with the system naturally using voice commands — without external hardware or cloud services.
Unlike many voice-controlled systems, all speech recognition runs entirely on the device itself. No audio is sent to external servers, no cloud processing is required, and the system continues to operate even without Internet access.
The voice interface supports multiple categories of commands, including:
  • navigation between screens (home, weather, calendar, settings)
  • quick room booking for predefined durations
  • meeting cancellation and room release
  • weather and time requests
  • calendar and upcoming meeting queries
  • setup assistance and onboarding commands
  • conversational utility commands such as repeating the last response
The command system is designed to support flexible phrasing rather than a single rigid keyword. For example, users can say:
  • “show weather”
  • “open the weather”
  • “weather screen”
  • “show me weather”
and the system will recognize all of them as the same intent.
This makes interaction feel much closer to natural speech while still remaining lightweight and fully embedded.
Another important aspect is responsiveness. Since recognition runs locally on the ESP32 platform, command processing is effectively instantaneous and does not depend on network latency or cloud availability.
This approach makes voice control practical not only for smart office environments, but also for embedded systems where privacy, reliability, and offline operation are important.

Quick Start

Below is a quick way to get the system up and running using prebuilt firmware images — the whole process takes just a few minutes.
Installation
The CrowPanel ESP32-P4 version contains two controllers:
  • ESP32-C6 — used for Wi-Fi communication - flash it first
  • ESP32-P4 — runs the main application - flash after C6

The ESP32-C6 firmware must be updated first because some panels may come from the factory with an older Wi-Fi firmware version.

1. Download the firmware archives and extract them to a local folder on your computer:
 
2. Connect the CrowPanel ESP32-P4 to your PC using a USB Type-C cable connected to the USB port labeled UART on the panel.
3. Flash the ESP32-C6 Wi-Fi Firmware
  • Open the folder with the extracted firmware files.
  • Run the Flash_tool.exe for the ESP32-C6 firmware.
  • Wait until the flashing process is complete.
4. Flash the ESP32-P4 Application Firmware
  • Go to the ESP32-P4 firmware folder
  • Run the flash_tool.exe for the ESP32-P4 application firmware.
  • Wait until the flashing process is complete.
Once the flashing process is complete, the application will start automatically on the panel.
Setup
The panel can be configured in two ways: - Directly from the paneland browser (smartphone or PC). -From a PC using the desktop configuration application.
This section describes the first way.
1. Setup Wi-Fi
  • Tap the Settings (gear icon) in the top-right corner
  • Tap Wi-Fi
  • Select your Wi-Fi network
  • Enter the password using the on-screen keyboard
2. Device Setup
Once the panel is connected to Wi-Fi, you can continue the setup from your smartphone by opening the panel’s web page.
1. Open Settings (gear icon) in the top-right corner.
2. Tap Device Setup.
3. Scan the QR code with your smartphone to open the device configuration web page in a browser.
4. On the page, you can:
  • Rename the meeting room
  • Add an OpenWeatherMap API key for weather synchronization
  • Add a link to the company website
  • Add a link to the office map
  • Add an ICS URL from your calendar service (tested with Google Calendar)
  • Add a link to a public web service for booking the meeting room via the web (smartphone)
To get an OpenWeather API key:
  • Sign in to your OpenWeather account.
  • Open the API keys tab on your account page.
  • Copy your API key and use it during the panel setup.
Secondary 3.5" Panel
The panel mounted outside the meeting room is identical for both versions of the system, whether you choose the main panel based on ESP32-S3 or ESP32-P4.
We already covered the software installation and configuration process in detail in our previous project, so please refer to it here:https://www.hackster.io/Grovety/smart-meeting-room-panel-with-local-voice-control-825091#toc-secondary-3-5--panel-2

Hardware Platform

These panels proved to be a reliable and well-balanced solution, combining display, touch input, and connectivity in a single device, and they fully meet the requirements of this kind of application.
At the same time, we were interested in exploring the next generation of ESP32-based HMI platforms to evaluate new architectural approaches and capabilities.
For this version, we switched to the CrowPanel Advanced ESP32-P4 HMI Display (from 7 to 10 inch): CrowPanel Advanced 7-inch ESP32-P4 HMI AI Display
This platform is fundamentally different:
It uses a dual-chip architecture (ESP32-P4 + ESP32-C6 for Wi-Fi)
  • provides significantly more headroom for graphics, memory, and processing
  • supports modern display interfaces and multimedia features
In practice, this makes it much better suited for UI-heavy embedded systems, where the display is not just an output, but the core of the user experience.
The platform is also flexible in terms of form factor — similar solutions are available in the 7–10 inch range, making it easy to adapt the system for different environments and mounting scenarios.

Architecture Overview: ESP32-S3 vs ESP32-P4

Although the high-level application behavior remains the same, the underlying system architecture differs significantly between the ESP32-S3 and ESP32-P4 versions.
ESP32-S3 Architecture (Single-Chip)
In the original implementation, the entire system was built around a single ESP32-S3:
  • UI rendering (LVGL)
  • touch input handling
  • Wi-Fi connectivity
  • application logic
  • peripheral control
All components were tightly integrated within one MCU, which made the system straightforward and efficient to implement.
Key characteristics:
  • single-chip design
  • direct control over all peripherals
  • Wi-Fi handled internally
  • simpler initialization and communication model
ESP32-P4 Architecture (Dual-Chip)
In the ESP32-P4 version, the architecture shifts to a multi-controller design:
  • ESP32-P4 → UI, graphics pipeline, application logic
  • ESP32-C6 → Wi-Fi and network communication
This introduces a separation between compute/UI and connectivity, which changes how the system is initialized and how components interact.
Key characteristics:
  • dual-chip architecture
  • Wi-Fi handled by a dedicated co-processor
  • inter-chip communication required before network features are available
  • staged system initialization
Key Architectural Differences
What This Changes in Practice
Moving to ESP32-P4 does not change what the system does — but it changes how it is built:
  • initialization becomes a multi-stage process
  • Wi-Fi requires explicit coordination with a separate chip
  • display handling shifts toward a higher-level abstraction (BSP)
  • the system becomes more modular, with clearer separation of responsibilities
This makes the ESP32-P4 version a good reference for building next-generation UI-centric embedded systems based on multi-controller architectures.

What Changed in the ESP32-P4 Version

The system architecture remains the same as in the ESP32-S3 version. We preserved the application logic and user experience, and focused on adapting the platform layer to the new hardware.
The main panel is now based on the ESP32-P4, while the secondary 3.5" panel remains unchanged.
Compared to the ESP32-S3 version, the biggest changes are in the system layer. Initialization was moved from manual hardware setup (display, touch, backlight, I2C, and other peripherals) to ESP32-P4 BSP-based initialization. Display handling was also updated and is now managed through BSP APIs instead of low-level RGB configuration.
The Wi-Fi architecture is different as well: instead of running directly on the main MCU as in the ESP32-S3 version, connectivity is now handled by a separate ESP32-C6 co-processor, which requires explicit initialization before network features are used.
As a result, the boot process became staged. The system first initializes core resources such as memory, display, and LVGL, then establishes communication with the ESP32-C6, and only after that starts the main application services.
The high-level application logic, including configuration, weather, calendar, and UI behavior, remains unchanged. The porting effort was focused entirely on adapting the platform-specific layer rather than rewriting the application itself.

⚙️ Possible Extensions

Although the project was originally designed as a meeting room panel system, the same architecture can be reused for many other embedded HMI applications.
Because the interface logic, networking layer, and display system are separated into independent components, the platform can be adapted for different environments without major changes to the core application.
Some possible directions include:
  • office information panels and visitor displays
  • smart door signage and room status systems
  • internal company dashboards
  • interactive kiosk-style interfaces
  • local voice-controlled control panels
  • calendar and scheduling terminals
  • embedded touch interfaces for automation systems
The ESP32-P4 platform is especially interesting for applications where the display is the central part of the user experience and the device needs to remain responsive even while handling networking, animations, or voice interaction simultaneously.
Future improvements may include:
  • Microsoft Outlook and Exchange integration
  • MQTT support
  • OTA firmware management
  • advanced scheduling logic
  • analytics and room usage statistics
  • integration with lighting or automation systems
  • multi-room synchronization
One of the main goals of this project was not only to build a practical meeting room device, but also to explore how modern ESP32 platforms can be used for more advanced UI-centric embedded systems.
The ESP32-P4 architecture opens interesting possibilities for devices where graphics, interaction, connectivity, and local AI features need to coexist on relatively low-power hardware.
If you build something based on this project or adapt the ideas for your own environment, it would be interesting to see how the platform evolves in different use cases.
Code
  • https://github.com/Grovety/meeting_room_leader_P4
    View

Smart Meeting Room Panel With Local Voice Control

Offline voice-controlled ESP32 meeting room system with synchronized panels and Google Calendar support.

17
 
0
0
0
These revenues will go back into supporting creators, contests, and the open source ecosystem, and more.

Share your project on social media to expand its influence! Get more people to support it.

  • Comments( 0 )
  • Like( 0 )
/1000
Upload a photo:
You can only upload 1 files in total. Each file cannot exceed 2MB. Supports JPG, JPEG, GIF, PNG, BMP

You May Also Like

View All
Add to cart
Board Type : GerberFile :
Layer : Dimensions :
PCB Qty :
Different PCB Design
PCB Thickness : PCB Color :
Surface Finish : Castellated Hole :
Copper Weight : 1 oz Production Time :
Total: US $
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.

PCB Assembly

PCBA Qty: BomFile:
NO. OF UNIQUE PARTS: NO. of Components:
Country: Shipping Way:
Assembly Cost: US $
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
3dPrintingFile : Size :
Unit : Volumn :
3D Printing Qty : Material :
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
Acrylic Type : AcrylicFile :
Dimensions: Engrave:
Acrylic Qty :
Acrylic Thickness:
Acrylic Color:
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
CNC Milling File : Size:
Unit: Volumn:
CNC Milling Qty : Material:
Type of Aluminum: Surface Finish:
Tolerance:
Surface Roughness:
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
Item Price Qty Subtotal Delete
Total: US $0.00
Certified Product | Guaranteed Purchase: Full techsupport