Sleep/Wake Protocol
Power management and scheduled wake-up cycles for ESL devices
Protocol Overview
The Sleep/Wake Protocol is designed to maximize battery life for BLE ESL devices while ensuring timely updates. This pull-based approach allows ESL devices to sleep most of the time and wake up only when necessary.
- Up to 4+ years battery life on standard coin cells
- Predictable power consumption patterns
- Scalable to thousands of devices
- Self-synchronizing time slots
Operating Principles
Wake Schedule Configuration
Default Schedule
Time Slot Calculation
To prevent all devices from waking simultaneously, each device is assigned a unique time slot:
Schedule Types
Schedule Type | Wake Frequency | Use Case | Battery Impact |
---|---|---|---|
Regular | 3-4 times daily | Standard price tags | Minimal (4+ years) |
Frequent | Every 1-2 hours | Dynamic pricing, promotions | Moderate (1-2 years) |
Real-time | Every 5-15 minutes | High-value items, stock levels | High (6-12 months) |
On-demand | Button-triggered | Customer interaction | Variable |
Automatic Wake-Up Scheduling Algorithm
Server-Side Time Management
Customers can set fixed update times on the server, and the system automatically calculates optimal wake-up slots for each ESL to prevent network overload.
Intelligent Distribution Algorithm
Core Algorithm Implementation
High-Performance Configuration Example
Performance Optimization Strategies
⥠Parallel Processing
Strategy: Multiple simultaneous connections per gateway
- 4 parallel groups: Normal mode (4.2 min)
- 8 parallel groups: Emergency mode (1.7 min)
- BLE 5.0: Enhanced connection capacity
- Connection pooling: Reuse established connections
đ Optimized Time Slots
Strategy: Reduced slot duration with overlap
- 5-second slots: Down from 15 seconds
- 2-second emergency: For critical updates
- Overlap allowed: 20% overlap for efficiency
- Smart queuing: Pre-fetch next device data
đ Gateway Optimization
Strategy: Maximize gateway utilization
- 25 gateways: Distributed load
- 40 devices each: Balanced distribution
- 100 concurrent: High connection limit
- Mesh networking: Redundant paths
đ Data Optimization
Strategy: Minimize transmission time
- Binary protocol: Compressed data
- Delta updates: Only changed pixels
- Batch operations: Multiple commands
- Pre-cached images: Instant updates
Performance Comparison
Mode | Slot Duration | Parallel Groups | 1000 ESLs Update Time | Use Case |
---|---|---|---|---|
Standard | 15 seconds | 1 | 25 minutes | Regular daily updates |
Optimized | 5 seconds | 4 | 4.2 minutes | Business hours updates |
High-Speed | 3 seconds | 6 | 2.5 minutes | Promotional campaigns |
Emergency | 2 seconds | 8 | 1.7 minutes | Critical price changes |
⢠1000 ESLs in 4.2 minutes: Normal optimized mode
⢠1000 ESLs in 1.7 minutes: Emergency mode
⢠25 gateways: Parallel processing across infrastructure
⢠100 concurrent connections: Per gateway capacity
⢠Battery impact: Minimal increase due to shorter active time
Implementation Architecture
Real-World Implementation Examples
đŞ Grocery Store Chain
1000 ESLs in 4.2 minutes
- Customer sets: 06:00, 14:00, 22:00
- 25 gateways, 40 ESLs each
- 4 parallel groups per gateway
- 5-second time slots
- Result: Complete update in 252 seconds
đŹ Department Store
2000 ESLs in 8.4 minutes
- Customer sets: 08:00, 12:00, 16:00, 20:00
- 50 gateways, 40 ESLs each
- 6 parallel groups per gateway
- 3-second time slots
- Result: High-speed promotional updates
đ¨ Emergency Price Update
1000 ESLs in 1.7 minutes
- Immediate update trigger
- 8 parallel groups per gateway
- 2-second time slots
- Critical price changes
- Result: Ultra-fast emergency response
đ Warehouse Scale
5000 ESLs in 21 minutes
- 100 gateways, 50 ESLs each
- 4 parallel groups per gateway
- 5-second time slots
- Inventory tracking updates
- Result: Massive scale deployment
Configuration API for High-Performance Mode
Battery Impact Analysis
Update Mode | Active Time per Update | Daily Power Consumption | Battery Life Impact | Recommended Usage |
---|---|---|---|---|
Standard (15s) | 15 seconds | 0.125 mAh | Baseline | Regular daily updates |
Optimized (5s) | 5 seconds | 0.042 mAh | 66% reduction | Business hours updates |
High-Speed (3s) | 3 seconds | 0.025 mAh | 80% reduction | Promotional campaigns |
Emergency (2s) | 2 seconds | 0.017 mAh | 86% reduction | Critical updates only |
⢠Faster Updates: 1000 ESLs in under 5 minutes vs 25+ minutes
⢠Better Battery Life: Shorter active time reduces power consumption
⢠Parallel Processing: Multiple simultaneous connections per gateway
⢠Emergency Capability: Critical updates in under 2 minutes
⢠Scalable Architecture: Easily handles 5000+ ESLs with more gateways
Detailed Mode Explanations
đ Standard Mode - Conservative Approach
Technical Specifications
Parameter | Value | Reasoning |
---|---|---|
Slot Duration | 15 seconds | Safe margin for BLE connection establishment |
Parallel Groups | 1 | Sequential processing to avoid interference |
Concurrent Connections | 1 per gateway | Minimal gateway load |
Distribution Window | 30 minutes | Spread load over extended period |
Performance Characteristics
Use Cases
- Daily Price Updates: Morning, afternoon, evening updates
- Stable Environments: Minimal RF interference
- Battery-Critical Applications: Maximum battery life priority
- Legacy Systems: Older gateways with limited capacity
- Low-Priority Updates: Non-time-sensitive information
⢠Maximum battery life (4+ years)
⢠Highest reliability and stability
⢠Minimal gateway resource usage
⢠Compatible with all hardware
⢠Slow update times (25+ minutes for 1000 ESLs)
⢠Not suitable for time-critical updates
⢠Sequential processing only
⥠Optimized Mode - Balanced Performance
Technical Specifications
Parameter | Value | Reasoning |
---|---|---|
Slot Duration | 5 seconds | Optimized for BLE 5.0 fast connection |
Parallel Groups | 4 | Balanced load with manageable complexity |
Concurrent Connections | 4 per gateway | Optimal gateway utilization |
Distribution Window | 5 minutes | Fast completion with controlled load |
Parallel Processing Strategy
Performance Optimization Features
- Connection Pooling: Reuse established BLE connections
- Data Compression: Reduce transmission time by 40%
- Intelligent Queuing: Pre-fetch next device data
- Error Recovery: Fast retry with exponential backoff
- Load Balancing: Dynamic adjustment based on gateway performance
⢠6x faster than standard mode
⢠Better battery life (shorter active time)
⢠Parallel processing efficiency
⢠Suitable for business hours
⢠BLE 5.0 compatible hardware
⢠Modern gateways with sufficient capacity
⢠Stable network infrastructure
đ High-Speed Mode - Maximum Throughput
Technical Specifications
Parameter | Value | Reasoning |
---|---|---|
Slot Duration | 3 seconds | Aggressive timing for maximum speed |
Parallel Groups | 6 | High concurrency for speed |
Concurrent Connections | 6 per gateway | Push gateway limits for performance |
Distribution Window | 3 minutes | Rapid completion target |
Advanced Optimization Techniques
Use Cases
- Flash Sales: Immediate price changes across all products
- Promotional Campaigns: Time-sensitive marketing updates
- Inventory Alerts: Stock level changes during peak hours
- Competitive Pricing: Rapid response to competitor changes
- Event-Driven Updates: Concert tickets, limited offers
⢠10x faster than standard mode
⢠Advanced optimization features
⢠Priority-based processing
⢠Ideal for time-sensitive campaigns
⢠High-performance gateways required
⢠Stable, low-latency network
⢠Professional deployment recommended
đ¨ Emergency Mode - Ultra-Fast Response
Technical Specifications
Parameter | Value | Reasoning |
---|---|---|
Slot Duration | 2 seconds | Absolute minimum for reliable connection |
Parallel Groups | 8 | Maximum concurrency possible |
Concurrent Connections | 8 per gateway | Push hardware to absolute limits |
Distribution Window | 2 minutes | Emergency response time target |
Emergency Protocol Implementation
Emergency Features
- Interrupt Capability: Override all normal operations
- Resource Allocation: Maximum gateway utilization
- Fast Fail: Quick retry or skip for failed devices
- Priority Override: Critical devices updated first
- Real-time Monitoring: Live progress tracking
- Automatic Fallback: Return to normal mode after completion
Emergency Use Cases
đ¨ Price Correction
Incorrect pricing detected by audit system
- Regulatory compliance requirement
- Customer protection priority
- Legal liability prevention
â ď¸ Safety Alert
Product recall or safety warning
- Immediate customer notification
- Regulatory compliance
- Brand protection
đ§ System Recovery
Gateway failure or network outage recovery
- Service restoration
- Catch-up updates
- System synchronization
đ° Competitive Response
Urgent competitive pricing adjustment
- Market position protection
- Revenue optimization
- Customer retention
⢠Fastest possible update time (1.7 minutes)
⢠Critical situation response
⢠Regulatory compliance capability
⢠Maximum resource utilization
⢠Use only for genuine emergencies
⢠Higher failure rate possible (2-3%)
⢠Increased gateway load and heat
⢠Should not be used regularly
Mode Selection Guidelines
Scenario | Recommended Mode | Reasoning | Expected Time (1000 ESLs) |
---|---|---|---|
Daily price updates | Standard | Maximum battery life, non-urgent | 25 minutes |
Business hours updates | Optimized | Balanced performance and efficiency | 4.2 minutes |
Promotional campaigns | High-Speed | Time-sensitive marketing | 2.5 minutes |
Flash sales | High-Speed | Immediate customer impact | 2.5 minutes |
Price corrections | Emergency | Regulatory compliance | 1.7 minutes |
Safety alerts | Emergency | Customer safety priority | 1.7 minutes |
System recovery | Emergency | Service restoration urgency | 1.7 minutes |
Message Flow Sequence
Complete Wake Cycle
1. Server Sends Update
2. Gateway Queues Message
Gateway stores the message in device-specific queue until wake time
3. ESL Wakes and Checks In
4. Gateway Delivers Queued Messages
5. ESL Acknowledges and Sleeps
Power Management
Power States
đ¤ Deep Sleep
Power: ~10 ÂľA
Duration: 99.9% of time
Activities: RTC only, no radio
â° Wake Transition
Power: ~5 mA
Duration: ~100 ms
Activities: Initialize radio, sync time
đĄ Active Communication
Power: ~15 mA
Duration: 5-15 seconds
Activities: BLE data transfer
đźď¸ Display Update
Power: ~20 mA
Duration: 2-5 seconds
Activities: E-ink refresh
Battery Life Calculations
Daily consumption with 3 wake cycles:
- Sleep: 23.95 hours Ă 10ÂľA = 0.24 mAh
- Wake/Comm: 0.05 hours Ă 15mA = 0.75 mAh
- Display: 3 Ă 5s Ă 20mA = 0.08 mAh
- Total: ~1.07 mAh/day = 580 days battery life
Queue Management
Gateway Queue Structure
Queue Policies
Policy | Description | Configuration |
---|---|---|
Message Priority | Higher priority messages delivered first | Priority levels 1-5 (1 = highest) |
Queue Size Limit | Maximum messages per device | Default: 10 messages |
Message Expiry | Auto-remove old messages | Default: 24 hours |
Deduplication | Remove duplicate render commands | Keep only latest version |
Batch Delivery | Send multiple messages at once | Max batch size: 5 messages |
Advanced Features
Dynamic Schedule Adjustment
The system can dynamically adjust wake schedules based on various factors:
Time-of-Day Optimization
Event-Based Scheduling
- Price Changes: Trigger immediate wake for affected ESLs
- Promotions: Increase update frequency during sales
- Inventory: More frequent updates for fast-moving items
- Battery Low: Reduce wake frequency to extend life
Emergency Wake Protocol
For critical updates that can't wait for the next scheduled wake cycle:
Wake Methods
đ BLE Advertising
ESL periodically listens for wake signals (every 30s)
đ Physical Button
Manual wake trigger for immediate update
đĄ Beacon Mode
Special beacon triggers wake for all nearby ESLs
â° Next Wake Override
Adjust next wake time to be sooner
Gateway Load Balancing
Distribute wake times to prevent gateway overload:
Staggering Algorithm
Load Metrics
Metric | Target | Action if Exceeded |
---|---|---|
Concurrent Connections | < 4 devices | Increase slot spacing |
Queue Depth | < 50 messages | Trigger extra wake cycles |
Response Time | < 500ms | Add mesh gateway |
CPU Usage | < 70% | Redistribute devices |
Protocol Optimization
Communication Efficiency
- Message Compression: Use binary protocols for image data
- Delta Updates: Send only changed pixels for partial updates
- Batch Acknowledgments: Single ACK for multiple messages
- Connection Reuse: Keep BLE connection open for multiple operations
Power Optimization Techniques
Best Practices
â° Schedule Design
- Align wake times with business operations
- Consider time zones for multi-location deployments
- Plan for seasonal adjustments
đ Battery Management
- Monitor battery levels proactively
- Implement low-battery schedules
- Plan replacement cycles
đ Performance Tuning
- Optimize message sizes
- Balance load across gateways
- Monitor and adjust slot timing
đ ď¸ Troubleshooting
- Log all wake events for analysis
- Track missed wake cycles
- Monitor gateway queue depths