View all updates Aug 31, 2020

Networking

by Tyler G

First Things First

I am still hoping for some more feedback via this survey. The survey has been fruitful so far. Lots of requests for Linux support. On that note, I am happy to announce that the sl command line tool as well as the GCC toolchain for Stratify OS are running smoothly on Linux.

Accessing the Internet From the Toolbox

Here is a breakdown of how the Toolbox accesses the Internet. Let’s start with the hardware.

The Toolbox connects to the Internet using the ATWILC1000 Wi-Fi radio module, which handles the Wi-Fi phy layer and OTA radio encryption. That module is connected to the Toolbox’s STM32H750 480 MHz MCU via SPI with a 40 MHz bitrate.

There are two networking software stacks running on the STM32H750: one to manage the Wi-Fi hardware and one for the TCP/IP (including TLS) stack. They both run in the Stratify OS kernel as independent threads and communicate using a FIFO.

Applications can use the Wi-Fi API to scan for networks and connect to them. They can also use standard socket programming techniques for local network and Internet connectivity:

  • socket()
  • send()
  • recv()
  • close()

There is a C++ socket API wrapper that allows you to do anything on a mbedtls-secured socket that you could do on a standard socket.

The Code

If you want to dig deeper into how all this works, you can checkout some of the source code:

Up and Running in no Time

Getting IoT devices connected can be a pain. One of the main reasons the Toolbox includes a touchscreen display is to allow users to manage their Wi-Fi connections. The soft keyboard allows you to type in SSIDs and WPA keys, which should feel natural to anyone who’s connected a smartphone to a Wi-Fi network.

Sharing Toolbox Applications

The Stratify Labs web application allows you to publish Toolbox applications that you want to share with others. It has some other awesome features as well. The beta version is up now if you want to check it out.

About the Author

Tyler G

StratifyLabs  ·  StratifyLabs  ·   HIGHLAND, UT


This project is launching soon.

Coming Soon
5
updates

Credits

Stratify Labs, Inc.

Stratify Labs builds tools that help developers bring IoT products to life including Stratify OS. Stratify OS is a microcontroller operating system built specifically to handle the growing complexity demanded by IoT devices. It features complete kernel/application separation (in both the build and execution), filesystem and hardware abstraction, automatic updates, as well as built-in networking and security. We also are building the Toolbox (powered by Stratify OS), but you already knew that.


Tyler Gilbert

Subscribe to the Crowd Supply newsletter, highlighting the latest creators and projects: