System Architecture Overview
Hardware Platform
reTerminal Sticky runs on an ESP32-S3 chip with these main hardware resources:
- Main chip: ESP32-S3 dual-core processor
- RAM: 8MB PSRAM
- Storage: 32MB Flash + MicroSD card expansion
- Communication: 2.4GHz Wi-Fi + BLE 5.0
- Display: 3.97-inch e-ink screen (800×480)
- Sensors: Temperature & humidity, 3-axis accelerometer, microphone
Software Architecture Layers
Sticky’s firmware uses a layered architecture:
Hardware Abstraction Layer (HAL)
Handles low-level hardware interaction:
- Display driver (e-ink screen control)
- Touch driver (capacitive touchscreen input)
- Sensor drivers (temperature/humidity, accelerometer)
- Communication drivers (Wi-Fi, BLE)
- Storage drivers (Flash, SD card)
System Service Layer
Provides core system functionality:
- Power management (sleep/wake strategies)
- Network management (Wi-Fi connection & reconnection)
- Bluetooth service (BLE pairing & communication)
- OTA service (firmware updates)
- Timer service (scheduled wake & task scheduling)
Application Runtime Layer
Manages app loading, execution, and switching:
- App lifecycle management
- Page rendering engine
- Event dispatch system
- Data persistence
Application Layer
Specific functional apps like Clock, Weather, To-do, etc. Each app runs independently and interacts with the system through standard interfaces.
Key Design Principles
- Low Power First: Architecture designed with low power as the core goal, supporting deep sleep and timed wake
- App Isolation: Each app runs independently without affecting others
- OTA Updatable: Both firmware and apps support OTA updates
- Cloud Collaboration: Device and Seeedash app work together through the cloud
Next Steps
- App Framework — Learn about the app development framework