Grove peripherals for industrial/embedded IoT

Hardware interoperability is a long-standing issue. Ideally different computer and microcontroller boards expose their internals the way it fits their capabilities best. On the other hand, ideally peripherals should be reusable between platforms. There were always some platforms which were ahead the others in terms of interoperability (think Raspberry Pi, or platforms with "shields" in general), but that still just meant reusability in a very narrow sense.

Recently an initiative by Seeed Studio, the hardware creator platform based in Shenzhen, came up with Grove to take another stab at the problem, but now from the other side - the peripherals instead of the platform. Grove is based on a standardized 4-pin connector, standardized PCB sizes for the peripherals, and adapter boards & shields for all the most popular platforms (and beyond). This comprehensive approach enables Grove to immensely extensible on both sides - the platforms and the add-ons. They even have made a Grove-focused remix of the BeagleBone - the BeagleBone Green, with two onboard I2C Grove connectors.

Working at VIA, I thought it would be interesting to bring Grove to our embedded ARM boards as well. This would potentially allow enterprise and industrial users to take advantage of the quickly expanding Grove peripheral offering. A simple Grove break-out board was easy enough to put together and get manufactured by Seeed Studio - the GroveHat. It was great to see it working on the first try:

To demo the system, I've added an LCD with RGB Backlight, and a system monitoring script to display current CPU and memory usage of a system. I can imagine such simple tool be helpful for example for headless systems to use instead of screens to display simple metrics.

This break-out board makes digital and I2C peripherals available for system, both under Linux and Android. The latter is enabled by the VIA Smart ETK, and as far as I know, this is the first (and so far only) Android system that can use Grove! Besides this very simple version, I'm already thinking about an expanded version which includes serial connector, and hopefully pulse-width-modulation (but that's for the future).

In the meantime, I'm trying more interesting use cases with the compatible Grove peripherals, checking out if this would work well enough for industrial IoT and connected devices.

For a much more detailed writeup, please check this blogpost! Also find GroveHat on Tindie, the indie hardware marketplace.