Articles by

Mike Szczys

Mike is a Firmware Engineer at Golioth. His deep love of microcontrollers began in the early 2000s, growing from the desire to make more of the BEAM robotics he was building. During his 12 years at Hackaday (eight of them as Editor in Chief), he had a front-row seat for the growth of the industry, and was active in developing a number of custom electronic conference badges. When he's not reading data sheets he's busy as an orchestra musician in Madison, Wisconsin.

Add Custom Kconfig Symbols in Zephyr

I needed to build 15 sets of the same firmware, but pass three unique variables for each copy. Zephyr has a solution for this: the Kconfig system. You can declare your own custom symbol, then set the value by passing a command line argument at compile time. Here's how to do this with your own projects.

Better IoT design patterns: Desired state vs. actual state

With a bit of planning, you can make sure that your IoT devices stay in sync with the cloud and behave in a predictable way for your users. The concept uses a "desired state" that is watched by the device for changes from the cloud. The device then reports back its actual state as a separate collection of data.

Golioth and Datacake enable device data visualization with a few clicks

Golioth has partnered with Datacake to make it easy to stream data from Golioth devices to beautiful visualization panels on the web. Showcase your IoT data with Datacake!

How to Connect Live Golioth IoT Data to Grafana Cloud using WebSockets

The Golioth WebSocket plugin is now available in the Grafana Cloud. This post guides you through how to add the plugin to Grafana, how to connect the Golioth WebSocket API, and how to set up a dashboard to visualize realtime the data.

Pin mapping in Zephyr lets you move pin functions with ease

Reassigning pins in your Zephyr project is key to keeping your code portable. This guide demonstrates how to use devicetree overlay files to move peripherals like SPI or i2c to different pins, and how to make sure your new assignments don't collide with the existing configuration.

How to parse JSON data in Zephyr

Parsing JSON packets with strings and punctuation delimiters doesn't sound like much fun on a microcontroller. That's why it's really nice that Zephyr has a built-in JSON library. In this post and video we show you how to use it on your data from the cloud.

Debugging Zephyr for Beginners: printk() and the Logging Subsystem

Zephyr has a number of tools to aid in debugging during your development process. Today we're focusing...

How to build your Zephyr app in a standalone folder

If you're like me, you installed Zephyr and began making your own changes to the sample applications...

Want to stay up to date with the latest news?

We would love to hear from you! Please fill in your details and we will stay in touch. It's that simple!