v1.0.4
Release v1.0.4
This release significantly upgrades the PC Host Mode capability, transforming the Python bridge into a fully functional network manager. It introduces real OS-level control for Wi-Fi and system operations, along with critical robustness fixes for connection handling.
🛠 PC Host Improvements (serial_bridge.py)
- Real Network Management: The bridge now executes actual OS commands to manage the host's network connection (Windows, Linux, macOS):
setWiFi&connectNetwork: Can dynamically switch the PC's Wi-Fi access point.disconnectNetwork: Disconnects the current Wi-Fi interface.isNetworkConnected: Verifies internet access by pinging a public DNS (8.8.8.8).
- System Control: Implemented
rebootHostwith a safety mechanism (10-second countdown + console warning) to restart the bridge script or the OS. - Automatic Session Cleanup: The host now automatically detects and closes orphaned TCP connections when a client resets and reconnects. This eliminates the "Slow Blink" / Connection Failures previously experienced after resetting the Arduino board.
- Port Resilience: Added retry logic for opening the serial port, preventing crashes during rapid restarts.
📂 New & Updated Examples
- HostManagement (PC Host): A new sketch demonstrating how to remotely disconnect, configure, and reconnect the PC's Wi-Fi and trigger a host reboot from the Arduino.
- SecureConnection (PC Host): Demonstrates SSL/TLS verification using a local certificate file (
cert/Amazon_Root_CA1.pem) stored relative to the script. - STARTTLS (PC Host): Added support for upgrading plain TCP connections to secure SSL (e.g., for SMTP/Gmail).
- Revised HTTP Streaming: Updated logic to support local server testing across different host architectures.
📄 Documentation
- Added comprehensive
examples/Readme.mdguiding users through the new directory structure and PC Host setup. - Updated main
README.mdwith v1.0.4 features and compatibility notes.