Internet of Things - Recap (March 2020)
Tags: iot, aws, news, productivity
Published: 2020-03-25 12:53:09

---
title: Internet of Things - Recap (March 2020)
published: true
description: Recap of the Internet of Things landscape for March 2020
canonical_url: https://devopstar.com/newsletter/2020/03/25
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/a67cnr1jp6mkzqeeq096.jpg
tags: iot, aws, news, productivity
series: Internet of Things - Recap
---

> Please reach out to me on [Twitter @nathangloverAUS](https://twitter.com/nathangloverAUS) if you have follow up questions!

*This post was originally written on [DevOpStar](https://devopstar.com/)*. Check it out [here](https://devopstar.com/newsletter/2020/03/25)

Welcome to the first issue of _the yet to be officially named_ **Internet of Things monthly recap**. The plan is to cover things that have caught my eye each month and share my thoughts on them.

---

### [FPGA Bootcamp #0](https://hackaday.io/project/159720-fpga-bootcamp-0)

---

I came across [Al Williams’s](https://hackaday.io/wd5gnr) FPGA Bootcamp which so far has four installments to the series that cover everything you might need to know as a beginner right up to working with actual FPGA hardware.

The bootcamp eventually makes use of the [iCE40-HX1K iCEstick Eval Board](https://www.latticestore.com/products/tabid/417/categoryid/59/productid/258/searchid/1/searchvalue/ice40hx1k-stick-evn/default.aspx) which seems to be a good board for beginners to get started with.

Checkout the series out if it sparks your interest:

* [Bootcamp 0](https://hackaday.io/project/159720-fpga-bootcamp-0) - Covers basic digital logic concepts with simulations
* [Bootcamp 1](https://hackaday.io/project/159191-fpga-bootcamp-1) - Introduction to FPGA coding and simulation with combinatorial logic
* [Bootcamp 2](https://hackaday.io/project/159216-fpga-bootcamp-2) - More FPGA coding and simulation with flip flops (sequential logic)
* [Bootcamp 3](https://hackaday.io/project/159692-fpga-bootcamp-3) - Working with actual FPGA hardware

---

### [Introducing Amazon Common Software for Devices (Preview): Accelerate Your Adoption of Amazon Device SDKs](https://developer.amazon.com/en-US/blogs/alexa/device-makers/2020/02/introducing-amazon-common-software-for-devices-preview)

---

Technically this news was from Feburary but I wanted to include it anyway. [Amazon Common Software (ACS) is open for preview](https://build.amazonalexadev.com/ACS_Preview.html). This framework promises to make integration of your devices with Amazon services much easier and more secure.

![Amazon Common Software Diagram](https://dev-to-uploads.s3.amazonaws.com/i/5pfua2thyunv3epbivhx.png)

Components like [FFS (Frustration Free Setup)](https://developer.amazon.com/docs/frustration-free-setup/understanding-ffs.html) also aim to make the onboarding process for end users to be much easier. A setup process of connecting a new device to the internet is part of this framework.

Watch this space going forward, I'm excited to try it out myself.

---

### [Pigweed: A collection of embedded libraries](https://opensource.googleblog.com/2020/03/pigweed-collection-of-embedded-libraries.html)

---

Pigweed is a new open source project by Google that aims to make embedded development less clunky by having a simple set of **modules** developers can use on their 32-bit microcontrollers.

The module they've used to prove Pigweed is valuable is called [pw_env_setup](https://pigweed.googlesource.com/pigweed/pigweed/+/refs/heads/master/docs/getting_started.md#bootstrap) which bootstraps a new system with everything it might need for development (python3.8, clang, an ARM compiler etc..)

Some other interesting looking modules include:

* [pw_string](https://pigweed.googlesource.com/pigweed/pigweed/+/refs/heads/master/pw_string/) - Provides the flexibility, ease-of-use, and safety of C++-style string manipulation
* [pw_presubmit](https://pigweed.googlesource.com/pigweed/pigweed/+/refs/heads/master/pw_presubmit/) - Provides an off-the-shelf integrated suite of linters, based on tools that you’ve probably already used.
* [pw_bloat](https://pigweed.googlesource.com/pigweed/pigweed/+/refs/heads/master/pw_bloat/) - A module to generate memory reports for output binaries empowering developers with information regarding the memory impact of any change.

There's a bunch more, and Google wants **YOU** to help contribute too! So [check their blog post](https://opensource.googleblog.com/2020/03/pigweed-collection-of-embedded-libraries.html) for more information.

---

### [Automate managing of STM32CubeMX + PlatformIO projects](https://github.com/ussserrr/stm32pio)

---

[stm32pio](https://github.com/ussserrr/stm32pio) is a neat cross-platform Python tool that creates & manages PlatformIO projects [STM32CubeMX](https://www.st.com/en/development-tools/stm32cubemx.html) `.ioc` files.

You get the best of both words using STM32CubeMX to create the hardware abstraction layer (HAL) framework code alongside a PlatformIO project which makes things like dependency management and CI testing a lot easier.

---

### [Arduino CLI](https://blog.arduino.cc/2020/03/13/arduino-cli-an-introduction/)

---

Arduino released [arduino-cli](https://github.com/arduino/arduino-cli) which was previously in beta. this tool chain greatly resembles what PlatformIO has been doing for a couple years now, so while I'm not super excited; I am happy to see the CLI workflows available for pure Arduino projects.

{% youtube 95IhOp5NOJc %}

---

### [Preview the Debugger feature for the Arduino Pro IDE](https://blog.arduino.cc/2020/02/28/preview-the-debugger-feature-for-the-arduino-pro-ide/)

---

The [Arduino Pro IDE](https://www.arduino.cc/pro/arduino-pro-ide) is another excellent step forward for the purists working on Arduino projects. One of the main features attracting people is the Debugger feature, which allows developers to set breakpoints and step through code while viewing the internal variables and callstack.

This functionality isn't unique and has been available in the competition projects for a very long time. However given the target audience of the Arduino, it's clear that these features were never priority (until now It seems).

{% youtube CoporLqnLOI %}

---

### [Raspberry Pi 4 Revision Fixes USB-C Compatibility Problem](https://www.tomshardware.com/news/raspberry-pi-4-usb-c-update)

---

Ever since its release, the Raspberry Pi 4 has been plagued by a small issue with its USB-C compatibility. The issue meant that the Type-C port would not work with high-speed cables; making it a little bit of a hassle sometimes.

The latest revisions now selling have this issue resolved and your boards should not work with all cables.

---

### [Espressif's 240MHz ESP32-S2 SoCs, Modules, and Boards Enter Mass Production with RISC-V Coprocessor](https://www.hackster.io/news/espressif-s-240mhz-esp32-s2-socs-modules-and-boards-enter-mass-production-with-risc-v-coprocessor-9e70c98369dd)

---

ESP32-S2 SoC and its related modules ESP32-S2-WROVER, ESP32-S2-WROOM and development board ESP32-S2-Saola-1 have gone into mass production. **This is excellent news** as it means we'll likely see boards leveraging the [ESP32-S2 SoC series](https://www.espressif.com/en/products/hardware/socs) starting to pop up.

Some of the stand out things the new chip includes are:

* an Ultra-low-power coprocessor
* RSA secure boot functionality
* AES-XTS encryption of flash memory
* PSRAM (pseudo-static RAM) and a number of other security features.

---

### [ESP AVS for AWS IoT SDK](https://www.espressif.com/en/products/software/esp-alexa/avs-for-aws-iot/overview)

---

More [Espressif news](https://www.espressif.com/en/products/software/esp-alexa/avs-for-aws-iot/overview) as they also now provide a certified solution for Alexa built-in devices with the AVS for AWS IoT SDK protocol.

The board(s) provided are the ESP32-WROVER-E module and DSP Group’s DBMD5P Audio SoC, called the [ESP32-Vaquita-DSPG](https://www.mouser.com/ProductDetail/Espressif-Systems/ESP32-Vaquita-DSPG?qs=%2Fha2pyFaduiCXNcbDBrYP4KfZ2UgjRPdLG%2FhOB4dDPuLBZBM8MBX1T7XpKj7zZR7).

Also included is an ESP SDK for AVS and a companion app called [ESP Alexa](https://play.google.com/store/apps/details?id=com.espressif.provbleavs)

---

### [IBM Call For Code (COVID-19)](https://developer.ibm.com/callforcode/)

---

IBM has announced their yearly [Call For Code hackathon](https://developer.ibm.com/callforcode/) will be shifted to target the COVID-19 pandemic. Given we’re all going to be spending a lot more time indoors it might be an interesting challenge to take on from an IoT perspective.

I’m interested in teaming up with anyone out there who has a great idea and maybe wants some technical hands. [Hit me up on Twitter @nathangloverAUS](https://twitter.com/nathangloverAUS).

---

### [Easy AWS IoT with ESP-IDF](https://devopstar.com/2020/03/14/easy-aws-iot-with-esp-idf)

---

When working on IoT projects its common that you will need to bake in libraries that allow you to interface with features on your embedded device. Espressif maintain the [Espressif IoT Development Framework (ESP-IDF)](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/index.html) which bundles all these libraries for you making it really easy to get started with projects.

In this post I spent some time exploring how to use the [Espressif IoT Development Framework (ESP-IDF)](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/index.html) with [PlatformIO](http://platformio.org/) to make developing projects for AWS IoT even easier.