Here’s to 2023!

The end of the calendar year is a great time to reflect on what matters most from the past year. In 2022 the growth of the Golioth platform exceeded our expectations—both in terms of new customers and in terms of new features. We found that much of our growth was driven by the customers joining the platform. The acid test of supporting responsive hardware and firmware developed by talented engineers from myriad industries guided how we added features and improved functionality.

Let’s take a quick look at some of the things that developed throughout the year.

Device capabilities

Golioth doesn’t actually make any hardware or firmware for sale. This is confusing to people sometimes, because it’s so prominently featured on our blog and main website. But it’s actually because the hardware examples and firmware repositories make it extremely simple for engineers to get their devices connected to the Golioth Cloud. Here is a sampling of the things we created or updated this year:

  • The Golioth Zephyr SDK – The Golioth Zephyr SDK was our first and most popular. It enabled devices like the nRF9160, the iMX RT1060, the ESP32, the nRF52840, and a wide range of other devices supported by the Zephyr Project. Now on version 0.5.0, we saw big improvements throughout the year that simplify the network and platform connectivity for the user. (This was especially true with the major release of version 0.4.0.)
  • The Golioth Espressif SDK – In July we officially released the Golioth ESP-IDF SDK. This implemented native support for the ESP-IDF, Espressif’s customized Real Time Operating System (RTOS) built on top of FreeRTOS. This enables all of the features and parts in the Espressif ecosystem like the ESP32.
  • The Golioth Modus Toolbox SDK – Our third SDK supports the Infineon Modus Toolbox. Released in October, it represents a different direction from our first two SDKs. This one is natively available in Infineon’s Modus Toolbox ecosystem, which makes it even easier for hardware engineers to evaluate the Golioth platform with available Infineon parts.
  • Hardware-in-the-loop (HIL) and Continuously Verified Boards (CVB) – As our coverage of hardware vendors and ecosystems has grown, so too has our focus on maintaining quality at scale. We added test automation with real hardware for our most popular hardware platforms. This allows us to maintain feature velocity while keeping code quality up to our standards.
  • Thread support – This year we saw ever-increasing interest in Thread Networking protocol, especially around the recently released Matter standard from the CSA. We began testing thread-based hardware with Golioth early in the year to see how we could support companies looking to use Thread in industrial settings. We were pleasantly surprised to see what a great fit Golioth is for these types of deployments. We expect to see many more in 2023.

Cloud Capabilities

While Golioth’s Device support makes it much easier to connect your products to the Internet, the Golioth Cloud capabilities are what make it worth connecting in the first place! We introduced a bunch of new features this year that make it even easier to deploy and manage a massive number of devices out in the world.

  • Query Builder – Many hardware and firmware engineers coming to our platform aren’t as well versed with JSON, a common way to describe data around the web. The query builder makes it easy to analyze data that has arrived on the Golioth Console and then to export that query to other visualization tools like Grafana.
  • WebSockets with Grafana – We find ourselves using Grafana—an open source visualization platform—on a regular basis. While the program is normally targeted at engineers monitoring servers, we find it’s an easy way to plot charts of IoT data, as well. This year we contributed to the community by developing a WebSockets Plugin for Grafana. This allows near instantaneous data to move from a data source like the Golioth Cloud over to Grafana.
  • Golioth Output Streams – Moving data around the web is a key feature of any IoT platform. Output Streams are how Golioth connects to external services, especially from the hyperscale providers like AWS, Azure, and Google Cloud. We find that an easier export method like Output Streams creates more seamless hand-off between hardware teams and Cloud teams inside of our clients’ companies. This reduces tensions between teams and allows hardware engineers to chose a platform built with them in mind, while still being able to pass data to the Cloud team’s preferred platform.
  • Golioth Blueprints – Blueprints allow the Golioth platform to have a notion of what hardware is being connected to the Cloud. In the current implementation, it is a way to delineate for things like Over-The-Air (OTA) updates, so you are targeting the proper hardware (or revision of hardware), for an update. Having a better picture of the capabilities of hardware connected to Golioth will allow other advanced features we’ll talk about in the new year.
  • Golioth Remote Procedure Calls (RPCs) – If you want to push processing to the “edge”, you need to have some way to send those commands, the data you want to process, and be able to collect a response. That’s where RPCs shine: being able to send more complex queries and commands out to the devices in the field. A good example of this is something as simple as updating the text on a display with arbitrary content.
  • Golioth Settings Service – Configuring one device with a setting is useful, but being able to apply that setting across all devices in a fleet can be instrumental in controlling the behavior of a large amount of devices. The Settings Service codifies how this is done using Golioth and enables things like calibration and mode selection on Devices in the field.
  • Golioth Self Service Account Management – We know that hardware and firmware engineers are busy. We wanted to make it as simple as possible to “graduate” from the 50 devices that are included for free on the Dev tier to a larger number of devices needed in a professional fleet. Now users can upgrade or downgrade their account at any time, without needing to talk to anyone.
  • Golioth Certificate Based Authentication – As Device fleets grow, it becomes more of a burden to add incremental devices onto a network. Instead of commissioning and programming new devices joining a fleet, a certificate allows Devices to be programmed at the factory and as soon as they connect to Golioth, they will be securely added to the fleet.

Reference Designs

Towards the later part of 2022, we started creating and releasing “Reference Designs”. These are full-stack designs including hardware, firmware, software, Golioth configuration, and visualization outputs like Grafana. Someone looking to build a business around the various designs we create can take these ideas and immediately start to scale their operations. The first two designs we released were in the “Smart City” and “AgTech” area, with many more planned for 2023. We launched a new “Industries” section on our website, where you can see other areas coming in the future.

  • IoT Trashcan Monitor – National parks and municipalities can save time and money on driving trash trucks on a regular route, and instead detect which trashcans need to be changed. This design tracks trash height, can orientation, weather data, and detects illegal dumping.
  • IoT Greenhouse Controller – When growing plants in a controlled environment like a Greenhouse, proprietors will want to not only monitor the status of the plants, but be able to act on that data. This design showcases how to enable automatic and manual control of lighting and ventilation based on sensor data being harvested by the same design.

Events and Training

The final piece of the puzzle that help hardware and firmware engineers get their devices online is training. For us this means sharing how to use Golioth Cloud features and work with the Real-Time Operating Systems (RTOS) that are running on the devices. After a slow start to the year due to COVID, we spent a good amount of time connecting with engineers at in-person conferences. We also hosted some of our own online training events.

  • Zephyr Developer Summit (ZDS) 2022 – This event held in June at the Computer History Museum in Silicon Valley was a gathering of the major developers and sponsors of Zephyr. We had an opportunity to train 25 engineers, many of whom had only a small amount of Zephyr knowledge. We also gave a range of talks detailing how we use Zephyr to connect IoT devices to the Cloud.
  • Embedded World 2022 – We traveled to Nuremberg Germany later in June to showcase Golioth as part of the Zephyr booth. This was the largest trade show we attended and it was great to hear perspective of engineers, many of whom traveled from across the EU (and beyond).
  • A fully remote Hardware Developer training event – After our experiment running a training at ZDS, we decide to try a fully remote training. This was different because it included the use of Kasm, which provides a desktop environment in the browser and a fully installed toolchain. We tried this on a larger scale in Q4 of 2022 and will offer more in 2023.
  • Espressif DevCon22 – We were invited to take part in the first Espressif virtual conference event this year, where we talked about how Golioth enables massive IoT deployments using our recently released ESP-IDF.

Here’s to the future!

2022 was an epic year for Golioth and I want to personally thank our customers, community & partners for being part of this year’s successes. But that was (soon to be) the past – we are extremely excited about the future of the Golioth platform and what’s in store for next year. Our goal continues to be building the platform that makes it easy for hardware and firmware engineers to connect to a Cloud built for their IoT needs. We look forward to supporting new hardware, extending what can be done with the cloud, and showcasing how engineers can deploy their projects to the world.

Cheers and happy new year!

Contributors

Talk with an Expert

Implementing an IoT project takes a team of people, and we want to help out as part of your team. If you want to troubleshoot a current problem or talk through a new project idea, we're here for you.

Start the discussion at forum.golioth.io