Repository navigation
v2.1.0
MeshCore Companion Cards is now a Home Assistant integration. It adds a full-page MeshCore panel to the sidebar, loads both cards by itself, and supports meshcore-ha 3.0.
⚠️ Breaking changes
- Install type changed. The repository is now a HACS Integration, not a Dashboard plugin. Existing users need to reinstall once (see "Upgrading" below).
- Requires meshcore-ha 3.0 or newer and Home Assistant 2025.6 or newer.
- Administrator account needed for the consoles, channel provisioning, adding or removing contacts, adverts and device settings. meshcore-ha 3.0 restricts companion commands to admins. Reading and sending messages works for every user.
✨ New
Sidebar panel
- The chat UI is available as a full-page MeshCore panel in the sidebar, with the Home Assistant app bar.
- Every view has its own URL, so browser back, bookmarks and links work:
/meshcore/chats,/meshcore/chats/ch/<idx>,/meshcore/chats/dm/<pubkey>/meshcore/nodes,/meshcore/nodes/<pubkey>/meshcore/console/meshcore/settings/<tab>
- On phones, opening a chat is a real navigation step, so the phone's back button returns to the chat list.
- One panel per companion. Title, icon, URL path and "administrators only" are editable under Configure.
Zero-config install
- Set up through Settings → Devices & Services → Add integration → MeshCore Companion Cards.
custom:meshcore-chat-cardandcustom:meshcore-repeater-cardare loaded automatically. No dashboard resources and noconfiguration.yamlentries.
meshcore-ha 3.0 support
- Accurate delivery status. Messages are tracked by the integration's
send_id, so "sending…" holds for the whole repeat-collection window (4 to 20 s) and late ACKs no longer create duplicate bubbles. - New statuses:
unconfirmed (too long to hear repeats)for long channel messages whose repeats can't be observed.- A failure reason under the bubble when a message never leaves the companion (not connected, rejected, contact missing, or held back by the mesh traffic policy).
- Several companions. Each card and panel only shows its own companion's messages. The config entry is resolved automatically from the device prefix.
- Safer commands. Rejected or rate-limited commands are reported as errors instead of success, and non-admins get a clear message.
🔧 Improved
- The narrow (phone) layout now follows the width of the card itself, so a card in a narrow dashboard column also stacks list and conversation.
- The repeater card console ignores replies from other companions and reports failed logins.
- Channel discovery relies on the integration's
get_channelsservice; the unsupportedselect.meshcore_*helper is no longer used. - README rewritten, including all four example bot automations.
- Polish translation for the setup dialogs.
⬆️ Upgrading from 2.0 and older
- In HACS, remove the old MeshCore Companion Cards download.
- Add
https://github.com/RikoDEV/ha-meshcore-cardsas a custom repository of type Integration, download it, and restart Home Assistant. - Remove the old entries under Settings → Dashboards → ⋮ → Resources (
/hacsfiles/ha-meshcore-cards/…or/local/meshcore-…-card.js) and delete any copies inconfig/www/. - If you added a
panel_custom:entry formeshcore-paneltoconfiguration.yaml, remove it. - Go to Settings → Devices & Services → Add integration → MeshCore Companion Cards and pick your companion.
Your dashboards keep working: card types and options are unchanged.
📦 Fresh install
- Open HACS and choose ⋮ → Custom repositories.
- Add
https://github.com/RikoDEV/ha-meshcore-cardswith type Integration. - Click Download on MeshCore Companion Cards.
- Restart Home Assistant.
- Add the MeshCore Companion Cards integration and pick your companion.