Reverse engineering the SDK for BL602 RISC-V WiFi & BLE microcontroller

BL602 decompiled C code

Bouffalo Lab BL602, and its big brother BL604 with extra GPIOs, are RISC-V microcontrollers with WiFi and Bluetooth LE that offer an alternative to Espressif Systems ESP32 WiSoC, although it has been joined with Espressif’s own RISC-V solution with ESP32-C3. Soon after the “announcement” in October 2020, we found out the SDK and a relatively cheap BL602 board, but the SDK has many closed-source binaries. Soon after Sipeed and Pine64 expressed their interest in developing an open-source toolchain and even an open-source WiFi (and BLE) stack. Time has passed and even got a Pinecone board in January, but did not do anything with it, especially seeing the status of the software. The same cannot be said for Lup Yuen Lee (aka MrTechBlog) who spent a lot of time doing interesting with Pine64 BL602 module and board including playing and thoroughly documenting his work with Tensorflow Lite, connecting the board to […]

Sparkfun Thing Plus – Quicklogic EOS S3 Arm eFPGA board launched in Crowd Supply

Sparkfun Thing Plus Quicklogic EOS S3

SparkFun Electronics is a well-known electronics retailer that usually sells its in-house developed or third-party boards through its own online store. But this time around, the company decided to launch “Sparkfun Thing Plus – Quicklogic EOS S3” through Crowd Supply crowdfunding platform. The board is based on QuickFeather board designed with the same Quicklogic EOS S3 Arm Cortex-M4 plus embedded FPGA SoC, but follows Sparkfun’s Thing Plus form factor with a Qwiic connector and a different mix of sensors. Sparkfun Thing Plus – Quicklogic EOS S3 (QTPLUS-1.0) board specifications: SoC – QuickLogic EOS S3 MCU + eFPGA SoC with Arm Cortex-M4F Microcontroller up to 80 MHz, up to 512 Kb SRAM, and an embedded FPGA (eFPGA) with 2400 effective logic cells, 64 Kb RAM Storage – 16 Mbit SPI NOR flash (GigaDevice GD25Q16CEIGR) Sensors STMicro LIS2DH12TR accelerometer Digital pulse density modulation (PDM) microphone with Wake-on-Sound (WoS) feature: Vesper VM3011-U1 Expansion […]

It’s raining i.MX 8M Plus systems-on-module at Embedded World 2021

i.MX 8M Plus Systems-on-Module

NXP introduced i.MX 8M Plus AI SoC with a built-in 2.3 TOPS neural processing unit (NPU) last year, and we’ve already covered several early announcements about i.MX 8M Plus systems-on-module (SoM) with Variscite VAR-SOM-MX8M-PLUS and DART-MX8M-PLUS, TechNexion EDM-G-IMX8M-PLUS and AXON-E-IMX8M-PLUS respectively using SO-DIMM edge connectors and board-to-board connectors, as well as SolidRun i.MX 8M Plus SoM that was announced together with the HummindBoard Mate carrier board with dual Gigabit Ethernet. But as Embedded World 2021 Digital is taking place virtually until Friday, other companies have now made their own announcements of i.MX 8M Plus SoMs as the processor enters mass production this month, and since as far as I know, it’s pin-to-pin and software compatible with earlier i.MX 8M Nano/Mini SoCs, the update must have been easy. That means we’ve got a longish list of modules, and I have probably missed some. Supported operating systems are basically the same across […]

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

Raspberry Pi Pico Rust RT-Thread 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 […]

AWS IoT EduKit leverages M5Stack Core2 ESP32 hardware

AWS IoT EduKit

M5Stack Core2 is a neatly packed ESP32 IoT development kit with a 2-inch touchscreen display, motion sensor, a microphone., and a built-in battery that was launched last September. The hardware has been selected by Amazon Web Services and gone through some small modifications including the addition of a secure element, and a yellow paint job giving birth the the “AWS IoT EduKit” hardware and software solution designed to “learn how to build IoT applications using AWS services through a prescriptive learning program”. M5Stack Core2 for AWS IoT EduKit specifications are pretty similar, but with a few tweaks here and there: SoC – Espressif ESP32-D0WDQ6-V3 dual-core Xtensa LX6 processor clocked at up to 240MHz with 520KB SRAM, Wi-Fi, and dual-mode Bluetooth connectivity External Memory – 8MB PSRAM Storage – 16MB flash storage, MicroSD card slot up to 16GB Display – 2-inch IPS LCD screen with 320×240 resolution (ILI9342C driver), and touchscreen […]

Embedded Artists Unveils iMX RT1064 uCOM with WiFi 5 & Bluetooth 5.1 Module

NXP iMX RT1064 uCOM System-on-Module

Embedded Artists have recently introduced iMX RT1064 uCOM system-on-module powered by NXP i.MX RT1064 Cortex-M7 crossover MCU clocked at 600 MHz with 1MB SRAM and 4GB flash on-chip, as well as 32MB SDRAM, and equipped with an optional WiFI 5 and Bluetooth 5.1 module from Murata. iMX RT1064 uCOM technical specifications: SoC – NXP i.MX RT1064 Arm Cortex-M7 @ up to 600 MHz with 1MB SRAM, 4MB on-chip QSPI flash, 2D graphics acceleration engine System Memory – 32 MB SDRAM Storage – Optional additional 4GB to 32GB eMMC flash and/or SQPI flash Wireless – Optional Murata Type 1ZM dual-band 802.11b/g/n/ac WiFi 5 and Bluetooth 5.1 module based on NXP 88W8987 2x DF40C-100 board-to-board connectors: Storage – 2x USDHC Display I/F – 24-bit parallel RGB up to 1366 x 768 pixels Camera – Parallel CSI Audio – 3x SAI, SPDIF Connectivity – 10/100M Ethernet (requires PHY on carrier board) USB – […]

TechNexion Unveils EDM and AXON SoM’s Powered by NXP i.MX8M Plus SoC

AXON-E-IMX8M-PLUS

A few days ago we wrote about Variscite’s NXP i.MX 8M Plus-powered AI systems-on-modules and devkits, and now it’s TechNexion’s turn to introduce its own SoM’s for artificial intelligence applications. Just like variscite, the company has two variants with EDM-G-IMX8M-PLUS following the EDM standard with a 260-pin edge connector, and AXON-E-IMX8M-PLUS part of the AXON family with board-to-board connectors better suited to vibration-prone applications. Besides the form factor and different default storage  capacities, both SoM’s share the same specifications: SoC – NXP i.MX8M Plus quad-core Cortex-A53 processor @ up to 1.8 GHz with Cortex-M7 real-time core @ 400 MHz, Vivante GC520L 2D GPU, Vivante GC7000UL 3D GPU, 1080p60 hardware decoder (HEVC, H.264, VP9, and VP8) and encode (H.265/H.264), and 2.3 TOPS NPU System Memory – Up to 8 GB LPDDR4 Storage AXON-E-IMX8M-PLUS – 32 GB eMMC flash by default EDM-G-IMX8M-PLUS – 16 GB eMMC flash by default Networking Chips Qualcomm […]

PicoCore RT1 System-on-Module Runs FreeRTOS on NXP i.MX RT1050 Crossover Processor

PicoCore RT1 i.MX RT1050 SoM

F&S Elektronik Systeme PicoCore RT1 is a System-on-Module powered by NXP i.MX RT1050 crossover processor designed to offer the real-time capabilities of microcontrollers and the performance of application processors thanks to an Arm Cortex-M7 core clocked at up to 600 MHz. The 40×35 mm module is also equipped with 32MB SDRAM, 256MB “high-reliability QSPI NOR flash, and 16KB EEPROM, and offers various interfaces including Ethernet, RGB LCD, and USB via board-to-board connectors. PicoCore RT1 (V1) SoM specifications: SoC – NXP i.MX RT1050 Arm Cortex-M7 processor @ up to 600 MHz with 32KB L2 cache, 2D graphics accelerator System Memory – 32MB SDRAM Storage – 256MB QSPI Flash, 16KB EEPROM; optional NAND flash 2x 80-pin board-to-board connector with Storage – SD Card Display – 16-bit RG interface, analog resistive and PCAP touch via I2C Networking – 1x 10/100M Ethernet Audio – Line-In, Line-Out, microphone, headphone, I2S USB – 1x USB 2.0 […]