Search code examples
bluetoothraspberry-pizephyr-rtosbluetooth-mesh

Bluetooth mesh for Raspberry Pi


Problem

I am currently working on a Bluetooth communication library for Raspberry Pi. It only has to support simple messaging. The main requirement is that is it decentralized

I therefore thought that Bluetooth mesh would be the best solution. I followed this guide for installing the Linux meshctl tool, but I could not find the functionality for sending messages between multiple Raspberry Pi. It seems that the meshctl tool is only for provisioning and configuring Bluetooth mesh networks.

Is this correct? Please correct me if I am wrong, I would love to be wrong.

Solution?

Is Zephyr a viable alternative? It seems that it is currently ahead of Linux when it comes to Bluetooth mesh.

TLDR: Is the meshctl tool for Linux only for provisioning and configuration? Should i use Zephyr instead?


Solution

  • TLDR: Yes, Meshctl is for provisioning only. Better to use Zephyr for regular mesh nodes instead.

    Bluetooth Mesh nodes are usually embedded devices and Zephyr is really good alternative for regular node. It is backed by Linux foundation and feature rich implementation. It is also under active development. There are also couple of other open source mesh implementations: Mynewt-nimble and ESP32 but both of them are actually based on Zephyr's mesh stack.

    As provisioner you could use meshctl by Bluez or provisioner app on phone (nRF Mesh or Bluetooth Mesh by Silicon Labs).