Skip to content

IoT Sensor Gateway Firmware v1.0.8

Latest

Choose a tag to compare

@grrttweaver grrttweaver released this 12 Jul 06:10
· 6 commits to main since this release
a275a30

Release v1.0.8 - JIT Provisioning & Enhanced Diagnostics

🎉 Major Features

Just-In-Time (JIT) Certificate Provisioning

  • Automatic device provisioning with unique AWS IoT certificates
  • Seamless transition from provisioning certificates to device-specific certificates
  • License key-based device identification for secure provisioning
  • Automatic reconnection with new certificates after successful provisioning

Enhanced MQTT Connectivity

  • Switched to PubSubClient library for better ESP32-C6 compatibility
  • Improved connection stability with optimized keepalive and timeout settings
  • Robust reconnection logic with connection state tracking
  • Unique client IDs using MAC address for proper device identification

🔧 Improvements

Diagnostic Enhancements

  • Added device identification to diagnostic messages (license key, device ID, firmware version, hardware ID)
  • Enhanced packet statistics with total bytes received and rate limiting metrics
  • Improved emergency shutdown reporting with detailed shutdown reasons and counts
  • Better connection monitoring with signal strength and network information

Sensor Processing

  • Temporarily disabled packet validation to prevent false rejections of valid sensor data
  • Maintained rate limiting (1000 packets/minute) and emergency shutdown protection
  • Enhanced sensor cache management with automatic cleanup of oldest sensors
  • Improved TPMS packet processing with better error handling

System Stability

  • Hardware recovery mechanism via boot button for emergency shutdown recovery
  • Persistent emergency shutdown state with protection disable flags
  • Enhanced OTA update support with alternative update methods
  • Improved WiFi configuration with better AP mode handling

🐛 Bug Fixes

  • Fixed MQTT connection loops that were causing repeated connect/disconnect cycles
  • Resolved certificate loading issues with proper fallback to embedded certificates
  • Fixed client ID conflicts by using MAC-based unique identifiers
  • Corrected AWS IoT policy permissions for proper topic access
  • Fixed compilation errors and function declaration issues

🔐 Security

  • Secure certificate storage in device preferences with fallback to embedded certificates
  • Proper AWS IoT policy enforcement with device-specific permissions
  • License key validation for device identification and provisioning
  • Secure MQTT communication with TLS 1.2 encryption

📋 Technical Details

AWS IoT Integration

  • Provisioning topic structure: pressurepro/devices/WifiSensorGateway/provisioning/request
  • Response topic structure: pressurepro/devices/WifiSensorGateway/provisioning/{license_key}/response
  • Device topics: pressurepro/devices/WifiSensorGateway/{license_key}/{sensor-readings|diagnostics|commands}
  • Automatic policy creation with device-specific client ID patterns

Firmware Configuration

  • Firmware version: 1.0.8
  • Target platform: ESP32-C6
  • MQTT library: PubSubClient
  • JSON library: ArduinoJson
  • Certificate management: Preferences-based with embedded fallback

�� Deployment Notes

  1. First-time devices will automatically provision with unique certificates
  2. Existing devices will continue using their current certificates
  3. Emergency shutdown recovery available via boot button press during startup
  4. Debug mode can be enabled via MQTT command for troubleshooting
  5. OTA updates supported via MQTT commands with URL specification

📊 Monitoring

The enhanced diagnostic messages now include comprehensive device identification and performance metrics, making it easier to monitor device health and troubleshoot issues across your fleet of IoT gateways.


Note: This release includes significant changes to the MQTT connectivity and certificate management systems. Please test thoroughly in your environment before deploying to production devices.