State of BeagleConnect Firmware

Hi @jkridner

Where can I find the latest source for the 0.2.2 BeagleConnect firmware? I’ve found the binaries on 0.2.2 · main · BeagleConnect / cc1352-firmware · GitLab but I would like to experiment with customizing / building myself.

Also, I’ve been watching the development of the various GSoC initiatives (greybus on zephyr, etc) however not exactly sure where everything stands…could you give us a little update of where we are?


1 Like

I too have been trying to decipher where this effort stands. I began looking into Zephyr and more-or-less understand that to use the Connect today we can follow the instructions for setting up Zephyr on the Play.

After that you’ll come back to Using Zephyr — BeagleBoard Documentation

At the end of this process you’ll be able to build Zephyr apps and deploy them to the Connect.

The Zephyr project has sample apps, one of which is a wpanusb connector.
I find this copy that was derived from the Zephyr sample, which claims to be for BeagleConnect: GitHub - statropy/wpanusb_bc: wpanusb zephyr application for Beagle Connect, and maybe does what I want, which is a bridge between my Linux host and my Play running out in the field.

Yeah, I’ve very bullish on BCF + Play, as I think its potentially game-changing.

The “vision” (as far as I’ve been able to understand it), is as follows:

  • Incorporate greybus into BCF and Play. This will allow devices on BCF to “appear” as local devices on Play, so for example, a theoretical gpio on BCF may appear as /sys/class/gpio/gpio60 on BeaglePlay - that is, its indistinguishable from a local device. So the BeaglePlay interacts with these remote devices as if they were local, but everything is happening wirelessly automatically. This lessens the need to even develop a custom zephyr firmware - as you may be able to interact the the end device (eg. a mikrobus click board) remotely from the Play.

  • Get mcumgr working on BCF, this will allow you to “manage” (reboot, load firmware OTA, etc) the devices remotely from a BeaglePlay

  • Get mDNS incorporated into zephyr firmware. So you can manage things via dns rather than IP.

  • Get a working compile of zephyr for the onboard R5 chips on BeagleAI64. This allows us to have a “common OS” that runs on all the “MCU class devices”, while using Linux on all the “Application Class” devices. Moving forward I think this is important, since in coming years many (most?) devices are going to be heterogeneous and offer multiple CPUs.

  • Although not specifically mentioned, I hope there is a push to get BCF working via true mesh networking. The real promise of these devices is to have dozens or hundreds of them communicating via mesh networking to form a resilient IoT infrastructure.