I’m currently testing Zidoo M6 with Android 11. The mini PC is mostly designed for industrial and commercial use cases, so it may not need to be certified by Google in order to access Google apps and services like a consumer device. But for review purposes, it can still be an inconvenience, as I got the message “The device isn’t Play Protect certified – Google apps and services can’t run on this device” when trying to use Google Play and login with one of my Google accounts. This does not look good, and Chrome, a Google app, refuses to work as well. I still tried to log in, but it just failed, returning an error telling me: “Your account wasn’t added. Try again”. That would mean I’d have to download the apps on my PC and sideload them with a USB flash drive. That’s not practical, and there’s must be […]
Getting Started with the Yocto Linux BSP for Polarfire SoC FPGA Icicle Kit
Last month I received Microchip PolarFire SoC FPGA Icicle development kit that features PolarFire SoC FPGA with a Penta–core 64-bit RISC-V CPU subsystem and an FPGA with 254K LE, and booted it into the pre-installed Linux operating systems based on OpenEmbedded. Today, I’ll show how to get started with the Yocto BSP and run the EEMBC CoreMark benchmark, and I’ll check out the FPGA with Libero SoC Design Suite in a couple of weeks. Operating Systems supported by PolarFire SoC FPGA My initial idea was to focus this part of the review on Linux on RISC-V status, checking some system information, running some benchmarks (e.g. SBC-Bench), compiling the Linux kernel, and installing services like a LEMP stack (Linux, Nginx (pronounced Engine-X), MySQL, PHP) which could be used for WordPress hosting for instance. But then I looked at the operating systems supported with Microchip PolarFire SoC FPGA. There’s a Yocto Linux […]
Heatshrink – An ultra-lightweight compression library for embedded systems
When I wrote about Bangle.js 2 JavaScript smartwatch yesterday, I noticed they used “Heatshrink compression” in ESPruino firmware. I can’t remember ever reading about Heatshrink before, and indeed there are no results while searching on CNX Software. Heatshrink is an open-source data compression library designed for resources-constrained embedded systems that works with as little as 50 bytes of RAM. That’s impressive, so let’s investigate. The library is written in C language and was released about 8 years ago on Github with the following key features: Low memory usage – As low as 50 bytes with specific parameters, and usually under 300 bytes are needed. Incremental, bounded CPU use – Input data is processed in tiny bites Static or dynamic memory allocation Released under an ISC license which allows you to use the library freely, even in commercial products. The internal workings of the library are explained as follows: Heatshrink is […]
A first look at Microchip PolarFire SoC FPGA Icicle RISC-V development board
Formally launched on Crowd Supply a little over a year ago, Microchip PolarFire SoC FPGA Icicle (codenamed MPFS-ICICLE-KIT-ES) was one of the first Linux & FreeBSD capable RISC-V development boards. The system is equipped with PolarFire SoC FPGA comprised a RISC-V CPU subsystem with four 64-bit RISC-V (RV64GC) application cores, one 64-bit RISC-V real-time core (RV64IMAC), as well as FPGA fabric. Backers of the board have been able to play with it for several months ago, but Microchip is now sending the board to more people for evaluation/review, and I got one of my own to experiment with. That’s good to have a higher-end development board instead of the usual hobbyist-grade board. Today, I’ll just have a look at the kit content and main components on the board before playing with Linux and FPGA development tools in an upcoming or two posts. Microchip PolarFire SoC FPGA Icicle Unboxing The board […]
Getting started with Bluetrum AB32VG1 RISC-V Bluetooth audio board using RT-Thread
Bluetrum AB32VG1 is a development board based on AB5301A RISC-V microcontroller designed for Bluetooth audio applications as well as general-purpose projects that works with RT-Thread real-time operating system. RT-Thread sent me a board for review, and I’ll write about my experience in a getting started guide for Bluetutm AB32VG1 trying out the RT-Thread Studio IDE with the LED blink and audio samples, as there’s no Bluetooth sample at this time… Bluetrum AV32VG1 Unboxing The board ships with a USB-C cable for power and programming. It offers Arduino UNO headers for expansion, a MicroSD card slot, a USB host port, a 3.5mm audio jack, an IR receiver, and a few buttons. There’s nothing to do on the bottom of the board apart from a QR Core for the WeChat app. There are also several configuration jumpers, but I could not find any documentation about these and did not mess with the […]
ESP32 Arduino 2.0.0 release adds ESP32-C3 and ESP32-S2 support
As just noted in my article about LILYGO T-32C3 module, the ESP32 Arduino 2.0.0 release happened a few days ago adding ESP32-C3 and ESP32-S2 support to the Arduino IDE. But the news probably warrants its own post and it is a major release of the Arduino code for ESP32 that also includes other new features and changes namely: Upload over USB CDC. Support for the KSZ8081 Ethernet PHY. LittleFS update for partition label and multiple partitions. Added support for RainMaker. BLE 5 features for ESP32-C3 (ESP32-S3 ready). ESPTOOL update. Added 802.11mc WiFi RTT FTM (Fine Time Measurement) support. Online Documentation added (somehow it requires a login to Readthedocs). USB MSC (Mass Storage) and HID support (ESP32-S2 only). UART refactoring (SerialHardware). New examples, boards added, bugs fixed. You can find a more detailed changelog, including the exact files changes in the source code, on Github. If we want to give it […]
Your VGA monitor may be easier to repair than you think
When a VGA monitor does not start at all, a common reason is that one or two capacitors are damaged. All you need to do to repair it is to replace them, and you’re good to go. It’s quite easier than you think, and I’ll show you how. I was tasked with repairing a VGA monitor, namely an LG Flatron W1934S, that would not turn on anymore. All I could see what the blue power LED blinking regularly, about every two seconds. Since so far, I had a 100% success rate in failing to repair TVs, I was not confident, and I thought maybe the monitor is some special state making it not turn on, as it happened to me with another monitor a few years ago. But a web search revealed the problem was probably a power supply board issue with one of the capacitors damaged and, in theory, […]
How to use PinePhone as a mobile hotspot
I’ve recently started using my Android phone as a mobile hotspot with mixed results so instead, I’ve switched to using PinePhone as a hotspot with Manjaro Arm Linux with Plasma Mobile instead, and performance seems much more stable now. Early this year, I received Pinephone with PostMarketOS beta, and after playing with it a bit I did not do much with it so far. But in recent times, I’ve been staying in various places without WiFi, so I purchased a lost cost SIM card with a one-year cellular data plan to be able to work from any location using my Android 10 smartphone (Huawei Y9 Prime 2019) as a mobile hotspot. It works most of the time, but sometimes I have massive packet loss, and the only way to recover is to turn off and on the hotspot, and in some cases even reboot the phone. Playing with settings on […]