- Introduced a new `JackeryDataCoordinator` class to manage MQTT subscriptions and data retrieval for all sensor entities.
- Updated the setup process to create and start the coordinator, allowing shared data handling among sensors.
- Enhanced sensor lifecycle management by registering and unregistering sensors with the coordinator.
- Improved logging for better visibility into the coordinator's operations and sensor updates.
- Added a delay at startup to ensure MQTT connection is established before sending data requests.
- Implemented error handling for MQTT connection issues, logging warnings and continuing the periodic data request process.
- Enhanced logging for task cancellation to provide clearer feedback on sensor operation.
- Added calls to `super().async_added_to_hass()` and `super().async_will_remove_from_hass()` for improved lifecycle handling.
- Ensured proper logging during sensor addition and removal from Home Assistant.
- Introduced a constant for request interval to standardize data request timing.
- Refactored meter serial number mapping logic for clarity and maintainability.
- Enhanced LWT and data message handling with dedicated methods for improved readability and error handling.
- Updated periodic data request logic to utilize the new request interval constant.
- Renamed the `custom_components/jackery_home/` directory to `custom_components/JackeryHome/` for consistency with naming conventions.
- Updated all relevant documentation and scripts to reflect the new directory name.
- Removed obsolete files related to the previous directory structure.
- Refactored the error handling logic to use an asynchronous function for resubscribing to MQTT topics after an error occurs.
- Added detailed logging for LWT message processing and device serial number updates.
- Ensured that the periodic data request task is initiated after resubscribing to the necessary topics.
- Renamed the `custom_components/JackeryHome/` directory to `custom_components/jackery_home/` for consistency.
- Updated all references in documentation and scripts to reflect the new directory name.
- Removed obsolete files related to the previous directory structure.
- Updated meter serial number mapping logic to explicitly handle "grid_import" and "grid_export" sensor IDs.
- Simplified data topic assignment by removing unnecessary conditional checks.
- Changed MQTT broker address from 192.168.0.101 to 192.168.1.100 in delete.py.
- Updated meter serial number mappings in sensor.py to use string types for consistency.
- Adjusted data topic paths in sensor.py for improved clarity and functionality.
- Added new energy data points and updated the initialization of energy variables in data_transmission_example.py.
- Improved data construction and parsing methods to handle new data formats and ensure compatibility with updated MQTT topics.
- Refined sensor logic in JackeryHome component to correctly map meter serial numbers and handle power values more robustly.
- Ensured consistent data types for meter values and improved error handling during data processing.
- Changed MQTT broker address from 192.168.0.101 to 192.168.1.100 across multiple files.
- Introduced new data handling methods in data_transmission_example.py for constructing and parsing data requests and responses.
- Updated MQTT topics to follow a new structure for better organization and clarity.
- Enhanced sensor logic in JackeryHome component to support new data formats and improve device state management.