Thank you for your interest in contributing to the OVMS Home Assistant integration!
If you find a bug, please open an issue on GitHub with:
- A clear description of the bug
- Steps to reproduce the issue
- Expected behavior vs actual behavior
- Home Assistant version
- Integration version
- OVMS module firmware version
- Relevant log entries (with sensitive information removed)
Feature requests are welcome! Please open an issue with:
- A clear description of the feature
- Use case explaining why this feature would be useful
- Any technical considerations you're aware of
- Which OVMS commands or metrics would be involved
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Test your changes with your Home Assistant installation
- Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow Python PEP 8 style guidelines
- Use type hints where appropriate
- Add docstrings to functions and classes
- Keep lines under 100 characters where reasonable
- Use meaningful variable and function names
Before submitting a pull request:
- Test the integration in a Home Assistant instance
- Verify that existing functionality still works
- Check that the integration loads without errors
- Test with your OVMS-equipped vehicle if possible
- Consult the OVMS documentation for protocol details
- Test commands safely - avoid potentially dangerous operations
- Consider the impact on vehicle battery when adding new polling features
- Be mindful of rate limits on the OVMS server
- Clone the repository to your Home Assistant's
custom_componentsfolder - Enable debug logging in your Home Assistant configuration:
logger: logs: custom_components.ovms_hass: debug
- Restart Home Assistant to load changes
Feel free to open an issue for questions or discussions about the integration.