Raspberry Pi Pico Gets supports for Rust, RT-Thread OS and FreeRTOS

In January end, we saw the launch of Raspberry Pi Pico equipped with an RP2040 dual-core Cortex-M0+ microcontroller working up to 133 MHz with official support for MicroPython and C. In this feature, we will be discussing the Raspberry Pi Pico’s flexible software support compatible with RP2040 MCU, apart from the MicroPython, C/C++, and upcoming Arduino IDE software support. We will specifically be focusing on Rust, RT-Thread OS, and FreeRTOS support for Raspberry Pi Pico. Rust Code Running on Raspberry Pi Pico Rust language is considered fast, reliable, and secure when it comes to IoT gateways. It also opens up the option for writing extremely low-level code, such as operating system kernels or microcontroller applications.  Porting Rust with RP2040 for working with Raspberry Pi Pico was seen in Jonathan Pallant’s Twitter Feed. The RP2040 comes with an external QSPI flash. The internal mask-ROM reads the programs from the external flash and uses it at top of SRAM (0x2004_lf00) using a […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

Ubuntu Core 20 released for secure Linux IoT devices and embedded systems

Canonical has just released Ubuntu Core 20, a minimal, containerized version of Ubuntu 20.04 LTS for IoT devices and embedded systems. The company highlights several security improvements and features of the new version of the Linux-based operating system with secure boot, full disk encryption, secure device recovery, and secure containers. Ubuntu Core 20 is said to come with all benefits from Ubuntu 20.04 LTS such as regular, automated updates, the ability to manage custom app stores, and offers a longer 10-year support window. Ubuntu Core is available and certified on popular32-bit and 64-bit x86 and Arm single board computers such as Intel NUC or Raspberry Pi 4. Minimum requirements include a single-core processor @ 500 MHz, 256MB RAM, and 512MB storage. Alternatively, it’s also possible to run it in a virtual machine on your PC. Security is further enhanced with apps running in containers, and since only the necessary software components are installed, it can minimize the attack surface for […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

Getting Started with Raspberry Pi Pico using MicroPython and C

Raspberry Pi Pico board was just launched last Thursday, but thanks to Cytron I received a sample a few hours after the announcement, and I’ve now had time to play with the board using MicroPython and C programming language. I went to the official documentation to get started, but I had to look around to achieve what I wanted to do, namely blinking some LEDs, so I’ll document my experience with my own getting started guide for Raspberry Pi Pico using a computer running Ubuntu 20.04 operating system. The instructions will be similar for Windows and Mac OS. Preparing the hardware In theory, we could just get started with the board alone, but since I got some headers with my board, I also took the opportunity to try out Pine64 Pinecil soldering iron powered by MINIX NEO P2 USB-C power supply. The soldering iron worked great for about one minute, and then I started to have problems with soldering… Looking […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

Managing Edge IoT Linux Devices Closely, Remotely, Securely

CNXSoft: This is a guest post by Roy Dalal, Embedded Systems Engineer who looked for IoT device management solutions, and ended up using Upswift. With the recent shift from Real-Time Operating Systems (RTOS) to Linux-based embedded systems, there has been a boom in the IoT industry in creativity and expandability and opened doors to a whole new level of automation. Unlike the previous generation of IoT devices which followed the “program once, use forever” concept, with the new developments in the IoT industry, mainly the devices based on Linux operating systems that demand more and more flexibility, accessibility, and control. It has been challenging to address all these points at once when it comes to remote monitoring and control of these devices; especially if one produces thousands of those smart devices to be sold worldwide. The ability to manage these connected devices (Raspberry Pi, Jetson Nano, or any SOM/SBC that runs a flavor of Linux such as Yocto based, Ubuntu […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

Open-source VSCP IoT/M2M automation framework supports Arduino, Raspberry Pi

VSCP (Very Simple Control Protocol) is an open-source IoT framework that works on development boards like Arduino or Raspberry Pi, and lets you control IoT home automation tasks. The framework is highly scalable, has a very low footprint, and as such is specially designed for resource-limited devices. VSCP is an open-source standard protocol for m2m, IoT and other remote control and measurement applications. It enables simple, low-cost devices to be networked together with high-end computers and/or to work as an autonomous system, whatever the communication media is. The VSCP Protocol has two levels: Level 1 and Level 2. The protocol was primarily used in CAN networks (that is Level 1 for tiny microcontrollers) because CAN is cheap and reliable with high efficiency. However, VSCP can be used for faster transport layers such as TCP/IP, so here comes Level 2 which achieves better performance. We have already seen Souliss, an open-source IoT framework for home automation. If you wonder why another […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

Use AutoTVM and uTVM to optimize ML workloads on embedded devices & microcontrollers

We are seeing a massive increase in resource-constraints for embedded devices due to a lack of mature software stacks. With the increase in open-source hardware, the available software support takes a considerable amount of time to develop AI/ML/DL applications. Some of the challenges faced today are that bare-metal devices do not have on-device memory management, and they do not have LLVM support. They are also hard to debug because of rigid programming and cross-compilation interfaces. Due to this, “optimizing and deploying machine learning workloads to bare-metal devices today is difficult”. To tackle these challenges, there have been developments to support TVM, an open-source machine learning compiler framework for CPUs, GPUs, and machine learning accelerators, on these bare-metal devices, and Apache TVM is running an open-source foundation to make this easy. “µTVM is a component of TVM that brings broad framework support, powerful compiler middleware, and flexible autotuning and compilation capabilities to embedded platforms”. TVM that features a microcontroller backend, is […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

AWS IoT Core for LoRaWAN launched with asset tracking and smart building kits

With increasing connectivity issues on low-power devices, which transmit data over long-range, work on batteries that can last several years without replacement, LoRaWAN is one of the major solutions to address these issues as it has support in Zephyr OS as well. A couple of days back, Amazon Web Services announced AWS IoT support for LoRaWAN, which means that it will enable you to connect and manage low-power wireless devices that use LoRaWAN connectivity with the AWS Cloud.  Now the enterprises can set-up a private LoRaWAN network by connecting the devices to the AWS Cloud. AWS Cloud basically accelerates IoT application development by acting on the data generated by connecting LoRaWAN devices using AWS services. “The rapid acceleration of growth in both private and public LoRaWAN networks has been key in the expansion of LoRaWAN deployments worldwide. AWS’ launch of AWS IoT Core for LoRaWAN offers an innovative solution to accelerate private network deployments by offering a simple, reliable, cloud-based […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

LwM2M v1.2 M2M & IoT device management protocol adds support for HTTP and MQTT, LwM2M gateways

Lightweight M2M (LwM2M) is a REST-based protocol from the Open Mobile Alliance (OMA) for M2M & IoT device management that defines the application layer communication protocol between an LwM2M server and an LwM2M client running on an IoT/embedded device. While LwM2M v1.0 was published in early 2017, we first covered the new protocol a year earlier as Imagination Technologies released the source code for the LwM2M stack running on MIPS Creator Ci40 development board.  Since then we’ve mostly seen the LwM2M protocol supported in cellular LTE IoT modules including Quectel BC66 and u-Blox Sara-R410M, as well as the now-defunct Samsung Artik WiFi IoT modules. LwM2M v1.0 was followed by v1.0.1 and v1.0.2 for bug fixes, and v1.1, but OMA has now announced LwM2M v1.2 protocol that adds the following new features: New transports for LwM2M: MQTT and HTTP Optimizations for the bootstrapping and registration interfaces to reduce the amount of data transmitted during the bootstrapping and registration exchanges respectively. Observation […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples