- Updated .gitignore to exclude advert_state.json.
- Added version checks for MeshCore in install.sh to ensure compatibility with multi-byte path support.
- Implemented path length decoding in packet_capture.py to handle new MeshCore firmware specifications.
- Adjusted requirements.txt to require meshcore version 2.2.31 or higher for multi-byte path support.
- Added 'local-docs/' to .gitignore to exclude local documentation files.
- Changed PACKETCAPTURE_IATA value from 'LOC' to 'XYZ' in install.sh.
- Implemented persistent state management for last_advert_time in packet_capture.py, including methods to load and save the state to a JSON file, improving reliability of advert timing.
- Revised MQTT settings for Let'sMesh Analyzer to include US and EU server configurations.
- Updated server addresses, ports, and transport methods for improved connectivity.
- Enabled authentication tokens and keepalive settings for both MQTT brokers.
- Added comments for optional custom MQTT broker configuration.
- Changed default connection type from BLE to serial in docker-compose.yml and Dockerfile.
- Updated privileged mode settings for improved security and flexibility.
- Enhanced device mounting instructions to recommend using persistent device IDs.
- Added comments for optional environment variables and MQTT settings for better clarity.
- Removed unnecessary default environment variables related to BLE connections.
- Bump version in install.ps1 and install.sh to 1.2.
- Remove unnecessary debug logging in Bluetooth pairing functions.
- Enhance error handling in connection health checks for TCP with SDK auto-reconnect.
- Streamline MQTT configuration checks in install.sh.
- Introduced on-device signing as the default method for JWT token generation, with fallback options to Python signing and meshcore-decoder CLI.
- Enhanced error handling and logging for token generation processes.
- Updated installation scripts to reflect changes in authentication methods, removing the requirement for meshcore-decoder.
- Added async support for token creation to improve performance in asynchronous contexts.
- Updated requirements to ensure compatibility with the latest meshcore package for on-device signing support.
- Add check_dialout_group() function in install.sh to prompt users to add themselves to dialout group when using serial connections
- Fix device name retrieval: wait for self_info to populate and add fallback to PACKETCAPTURE_ORIGIN
- Prevents 'Cannot connect to MQTT without device name' errors when device info is delayed or unavailable
- Fixes indentation errors in packet_capture.py
- Updated `install.ps1` and `install.sh` to prompt for an optional owner email address during JWT configuration.
- Added email validation and storage in the environment configuration.
- Modified `packet_capture.py` to include the owner email in JWT claims if configured.
- Introduced `Configure-JwtOptions` in `install.ps1` and `configure_jwt_options` in `install.sh` to allow optional configuration of an owner public key for JWT tokens.
- Updated the MQTT broker configuration to prompt for JWT options if not already set.
- Enhanced `packet_capture.py` to include the owner public key and client agent in JWT claims if configured.
- Implement JWT token storage and renewal logic in packet_capture.py.
- Introduce a background task for periodic JWT renewal.
- Update install.sh to check existing MQTT broker configurations before setup.
- Enhance MQTT broker reconnection logic with renewed tokens.
- Add new environment variables for JWT renewal interval and threshold.