https://github.com/meshcore-dev/meshcore-ha
Home Assistant integration for monitoring and controlling MeshCore radio networks
https://github.com/meshcore-dev/meshcore-ha
ha homeassistant homeassistant-integration lora lorawan mesh meshcore radio
Last synced: 2 months ago
JSON representation
Home Assistant integration for monitoring and controlling MeshCore radio networks
- Host: GitHub
- URL: https://github.com/meshcore-dev/meshcore-ha
- Owner: meshcore-dev
- License: mit
- Created: 2025-03-12T17:02:12.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2026-02-28T20:50:18.000Z (3 months ago)
- Last Synced: 2026-02-28T22:35:47.095Z (3 months ago)
- Topics: ha, homeassistant, homeassistant-integration, lora, lorawan, mesh, meshcore, radio
- Language: Python
- Homepage: https://meshcore.co.uk/
- Size: 769 KB
- Stars: 123
- Watchers: 11
- Forks: 33
- Open Issues: 30
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

# MeshCore for Home Assistant
[](https://my.home-assistant.io/redirect/config_flow_start/?domain=meshcore)
[](https://my.home-assistant.io/redirect/hacs_repository/?owner=meshcore-dev&repository=meshcore-ha&category=integration)
This is a custom Home Assistant integration for MeshCore mesh radio nodes. It allows you to monitor and control MeshCore nodes via USB, BLE, or TCP connections.
> :warning: **Work in Progress**: This integration is under active development. BLE connection method hasn't been thoroughly tested yet.
Core integration is powered by [meshcore-py](https://github.com/meshcore-dev/meshcore_py).
---
## đź“– Documentation
### **[➡️ View Full Documentation](https://meshcore-dev.github.io/meshcore-ha/)**
**Everything you need to know:**
- âś… Complete feature list
- âś… Configuration guides
- âś… Sensor documentation
- âś… Service descriptions
- âś… Automation examples
- âś… Dashboard templates
- âś… Troubleshooting guides
---
## Installation
### HACS Installation (Recommended)
1. Make sure you have [HACS](https://hacs.xyz/) installed
2. Add this repository as a custom repository in HACS:
- Go to HACS > Integrations
- Click on the three dots in the top right corner
- Select "Custom repositories"
- Add the URL of this repository
- Select "Integration" as the category
3. Click "Install" on the MeshCore integration
### Manual Installation
1. Copy the `custom_components/meshcore` directory to your Home Assistant `custom_components` directory
2. Restart Home Assistant
## Quick Start
1. Go to **Settings** > **Devices & Services**
2. Click **+ Add Integration** and search for "MeshCore"
3. Follow the setup wizard to configure your connection
For detailed configuration instructions, see the [documentation](https://meshcore-dev.github.io/meshcore-ha/).
## MQTT Upload (Addon/Container Env)
Configuration can be done in the Home Assistant Web UI:
- Settings -> Devices & Services -> MeshCore -> Configure
- MQTT Global Settings
- MQTT Broker Settings (Broker 1-4)
Auth-token mode is easy install by default:
- `meshcore-decoder` is optional.
- If `meshcore-decoder` is not available, the integration automatically falls back to in-process Python signing (`PyNaCl`).
- Signing key is pulled from the connected node via `export_private_key()`.
- If private key export is disabled/blocked on firmware, auth-token upload cannot start.
## Map Auto Uploader (map.meshcore.dev)
When enabled (off by default), the integration automatically uploads repeater and room server adverts to [map.meshcore.dev](https://map.meshcore.dev) when your Companion hears them. This integrates the [map.meshcore.dev-uploader](https://github.com/recrof/map.meshcore.dev-uploader) bot directly into the MeshCore Home Assistant integration—no separate bot needed. Enable in Global Settings if you want Map Auto Uploader.
- Uses the same connection as Home Assistant (USB, BLE, or TCP)
- Requires private key export on firmware (`ENABLE_PRIVATE_KEY_EXPORT=1`)
- Replay protection and signature verification built-in
## Development
### Local Development Setup
1. Clone this repository
2. Copy `custom_components/meshcore` to your Home Assistant config directory
3. Restart Home Assistant
4. Add the integration through the UI
### Testing
Run tests with pytest:
```bash
pytest tests/
```
## Support and Development
- Report issues on [GitHub Issues](https://github.com/meshcore-dev/meshcore-ha/issues)
- Contributions are welcome via pull requests
- Documentation contributions are also welcome!
## Requirements
- Home Assistant (version 2023.8.0 or newer)
- MeshCore node with firmware that supports API commands
- For BLE: Bluetooth adapter on the Home Assistant host (direct connection only; proxy connections don't work with PIN pairing)
- For USB: USB port on the Home Assistant host
## License
This project is licensed under the MIT License - see the LICENSE file for details.