Armbian's latest updates bring critical ethernet fixes for Rockchip SoCs, enhanced hardware support for Banana Pi R4 and NanoPi M6, plus various build system improvements and kernel updates.| Armbian blog
Test different Armbian kernels safely by using multiple SD cards. Just swap and reboot without risking your stable system.| Armbian blog
Essential troubleshooting guide for Armbian SBCs covering power supply issues, storage failures, network problems, and serial console debugging to quickly restore system functionality.| Armbian blog
Armbian added support for BananaPi R4 Router, enhanced board features, and updated kernels including Edge to 6.16.0-rc7.| Armbian blog
Kernel 6.16 rollout, enhanced BananaPi security with KASLR support, and U-Boot 2025.07 updates, highlight this week's major improvements across Armbian platforms.| Armbian blog
Why heatsinks are essential for SBC performance and longevity.| Armbian blog
Weekly Armbian development highlights including expanded board support for DshanPi A1, Raspberry Pi kernel updates to 6.16, and build system improvements.| Armbian blog
Why choosing the correct input voltage and stable power supply is important for your single board computer's reliability.| Armbian blog
The SBC and embedded computing market is projected to reach $3.6 billion by 2030, growing at 6-7% annually. ARM systems dominate with 40% market share, while RISC-V emerges as a compelling open-source alternative.| Armbian blog
Boost your embedded software quality with smarter testing strategies. Learn how unit tests, HAL, HIL, data-driven testing, and crash reporting improve reliability, maintainability, and real-world performance.| KDAB
Memory management is one of the most critical aspects of embedded systems development. In resource-constrained environments like microcontrollers, running out| Shawn Hymel
Unexpected Maker has recently released the Series, a lineup of four new ESP32-S3 development boards: the EdgeS3, TinyS3, FeatherS3, and ProS3. The boards| CNX Software - Embedded Systems News
When working with embedded systems, especially platforms like Zephyr, it’s not always practical to rely on real hardware. Maybe your dev board is in the mail,| Shawn Hymel
This article explores using a Raspberry Pi as an inexpensive host for remote debugging embedded targets with an NXP MCU-Link CMSIS-DAP debug probe. It provides detailed instructions for setting up …| MCU on Eclipse
Step-by-step guide to running Erlang and Elixir on ESP32 microcontrollers with AtomVM - from toolchain setup to Hello World examples| Lucas Sifoni
This tutorial shows how to display Qt Widget windows in a Qt Quick application, combining the flexibility of both frameworks. Learn how to manage integration through C++, expose widget properties and signals to QML, and build multi-window UIs for desktop or embedded platforms from real world examples.| KDAB
In the fast-evolving world of embedded systems and IoT, selecting the right operating system is critical. For skilled and intermediate engineers, understanding where a real-time operating system (RTOS) comes from (e.g. history, evolution, and the forces driving its development) can provide valuable context for making informed technical decisions. Zephyr, now one of the most robust […]| Shawn Hymel
Pico Technology expands the PicoScope 3000E Series with new entry-level mixed-signal oscilloscopes featuring four analog channels.| Circuit Cellar
Writing Embedded Device Drivers#| lenord.me
How I made a mesh network of BBC microbits play music.| flowblok’s blog
Low, Lower, Lowest Level Programming How low can you go? When it comes to embedded programming, the "full stack" starts at the PCB. In a recent talk at our local C++ meetup in Stockholm, I explored this in depth. Let's find out what's at the end of the rainbow by diving into topics like memory management, interrupt vector tables and electronics!| The Ivory Tower
Hello, friends! I hope you’re all doing super well! After hearing friends and many people on the Internet talk about Rust for quite a long time, I decided I would take the plunge and start learning it! I had made some short-lived attempts to learn the language before, but I didn’t stick with it. This […]| Shaffan's Blog
Codethink's John Ellis joins the Embedded Insiders podcast for 'The Road Ahead: Automotive Tech, Standards, and Safety for 2025'. Tune in here.| www.codethink.co.uk
The PS2 is more than capable of doing some wild things, including running Linux. I always wondered if we could just write baremetal Go code on it, so I decided to give it a try.| Ricardo
This article discusses using Visual Studio Code (VS Code) with Docker containers for embedded system development, specifically focusing on ARM Cortex-M and NXP LPC55S16. It outlines the advantages …| MCU on Eclipse
I’ve had a Sipeed I2S mic array board for a while now, and I am just starting to play with...Read More The post Driving SK9822 LEDs with the Raspberry Pi Pico PIO appeared first on Electronut Labs.| Electronut Labs
The article describes setting up a CI/CD pipeline using GitLab, VS Code, and Docker for projects involving various microcontrollers like Raspberry Pi Pico-W, ESP32, and NXP K22FX512. It outlines th…| MCU on Eclipse
The Eclipse Foundation has long been a leader in driving open source innovation across IoT, edge computing, and embedded ecosystems. For over 20 years the Eclipse C/C++ Development Tools (CDT) plat…| Life at Eclipse
In collaboration with Arm, we’ve published a white paper documenting the process of integrating Arm STLs into a Linux environment. Access it here.| Codethink
Facing hardware delays? Testing embedded software doesn’t have to wait—here’s how QEMU bridges the gap.| Codethink
In this post I investigate how a typical Oneplus smartphone battery communicates the current voltage, state of charge etc. to the main device. This can be also useful for repurposing these batteries on a Raspberry or Orange Pi, to power portable projects.| Jake’s Blog
This is the next part in my telescope series, look at the other posts for more details. In this post I describe how I set up a basic controller to test the mechanical setup.| Jake’s Blog
Last time, I wrote about how to configure VS Code to debug Rust Cortex-M programs, but you know what’s better than writing documentation for how to do a thing? Automating it. I’m very happy to announce my PR to add a basic debug configuration for VS Code has been merged into the cortex-m-quickstart template. VS […]| Christopher J. McClellan
I use GnuPG to compute cryptographic signatures for my emails, git commits/tags, and software release artifacts (tarballs). Part of GnuPG is gpg-agent which talks to OpenSSH, which I login to remote servers and to clone git repositories. I dislike storing Continue reading OpenPGP key on FST-01SZ→| Simon Josefsson's blog
I use Replicant on my main Samsung S3 mobile phone. Replicant is a fully free Android distribution. One consequence of the “fully free” means that some functionality is not working properly, because the hardware requires non-free software. I am in Continue reading GPS on Replicant 6→| Simon Josefsson's blog
The Replicant project released version 4.2 0003 recently. I have been using Replicant on a Samsung SIII (I9300) for around 14 months now. Since I have blogged about issues with NFC and Wifi earlier, I wanted to give a status Continue reading Replicant 4.2 0003 on I9300→| Simon Josefsson's blog
Since November 2013 I have been using Replicant on my Samsung S3 as an alternative OS. The experience has been good for everyday use. The limits (due to non-free software components) compared to a “normal” S3 (running vendor ROM or Continue reading Replicant 4.2 on Samsung S3→| Simon Josefsson's blog
For the last half-year I have used CyanogenMod on an Nexus 4 as my main phone. Recently the touch functionality stopped working on parts of the display, and the glass on the back has started to crack. It seems modern Continue reading Replicant 4.0 on Samsung Galaxy S III→| Simon Josefsson's blog
My home network has several devices that do not have large persistent storage to keep log files. For example, my wireless routers based on OpenWRT doesn’t log to the limited local storage it has, and a Flukso energy metering device Continue reading Small syslog server→| Simon Josefsson's blog
The ability to connect a 3G modem to a wireless router to form a Internet connected ad-hoc network of machines is very powerful. I’ve done this many times and have written about it before (e.g., see my OpenWRT writeup page) Continue reading OpenWRT with Huawei E367 and TP-Link TL-WR1043ND→| Simon Josefsson's blog
Earlier I have written about OpenWRT configuration for two routers in a home network and OpenWRT configuration for 3G dial-up (which succeeded my summerhouse OpenWRT writeup) before. The OpenWRT project recently announced a new release, OpenWRT 10.03 Backfire. Thus, this Continue reading OpenWRT 10.03 “Backfire”→| Simon Josefsson's blog
Using OpenWRT with WPA-PSK 2 on Broadcom WLAN routers have been stuck on a quite old bug. Recently someone suggested that it may have been fixed in trunk, which caused me to test it. And it works! It took some Continue reading Home Wireless Network→| Simon Josefsson's blog
I decided it was time to dust off my Arduino starter kit I got like.. over 5 years ago? I had also bought a tiny AM2301 temperature and humidity meter, so why not combine that and the LCD display that came with the starter kit. No idea if it's the same I linked but it has same part number.. Idk. Could be cheap clone. Anyway I'm happy I did try this! The project was super simple, I was basically following the directions here to make the LCD display work. Here's an image of it in action: I pret...| AksDev
This year’s ECTC, held at the end of May, will continue its focus on the role of packaging in keeping silicon scaling on track.| Tech Design Forum
If you want a variable to reference another variable in Bash, that is possible using a concept called indirect reference. Below is a simple example where ‘varname’ contains the name of another variable ‘foo’. # our variable foo=bar # our reference varname=foo # the following syntax will ERROR and DOES NOT work !!! echo "${$varname}" ... Bash: indirect reference to evaluate a variable value| Fabian Lee : Software Engineer
There are multiple options for creating a TLS secret using kustomize. One is to embed the certificate content as a base64 string directly in the data, the other is to use an external file. Below is an example kustomization.yaml file that serves as an entry point for both methods. --- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization resources: ... Kubernetes: creating TLS secrets with kustomize using embedded or external content| Fabian Lee : Software Engineer
How to avoid accidentally breaking no_std compatibility in Rust crates.| blog.dbrgn.ch
Announing the SGP30 Rust driver.| blog.dbrgn.ch
Announing the MCP3425 Rust driver.| blog.dbrgn.ch
SOUCABL happened on Thursday, March 7 in a new location, the business school at the University of South Carolina in Columbia. This was spring break at UNCG so I didn’t have to cancel my class to at…| This Liaison Life
In this post I'm going to run through a crash course about UART, and write up some personal notes I use to find them quickly and dump shells on embedded devices. So is going to be a little informal at times but the aim of the post is to get the tips and process across quickly so those who want to can get to dumping shells too! So this focused on supporting the activity of interacting with UART ports as they appear on an average IoT device. | k3170
Indrium Pi HAT – a Nordic nRF52840 shield for Raspberry Pi 3b+ that converts it into a low power wireless gateway for BLE and 802.15.4 based...Read More The post Indrium Pi HAT appeared first on Electronut Labs.| Electronut Labs
Blip is a development board for Bluetooth Low Energy (BLE) and 802.15.4 based wireless applications, based on the Nordic Semiconductor...Read More The post Blip appeared first on Electronut Labs.| Electronut Labs
With the exploding number of connected devices being deployed, power consumption is a major concern. Technologies like BLE...Read More The post Papyr appeared first on Electronut Labs.| Electronut Labs
Bumpy is an inexpensive Open Source blackmagic probe compatible SWD debugger designed to be used with ARM GDB. It supports...Read More The post Bumpy appeared first on Electronut Labs.| Electronut Labs
hackaBLE is a tiny (~ 18 mm x 28 mm) Open Source Nordic nRF52832 based BLE development board you can embed in your BLE projects....Read More The post HackaBLE appeared first on Electronut Labs.| Electronut Labs
PogoProg is a range of spring-loaded programming adapters from Electronut Labs. These are designed with aesthetics and ergonomics in...Read More The post PogoProg appeared first on Electronut Labs.| Electronut Labs
iCE Bling is an Lattice iCE40UP5k FPGA based LED earrings. The earrings have 8×8 grid LEDs and are powered by...Read More The post iCE Bling appeared first on Electronut Labs.| Electronut Labs
Bluey is an Open Source BLE (Bluetooth Low Energy) development board with Temperature, Humidity, Ambient...Read More The post Bluey appeared first on Electronut Labs.| Electronut Labs
snapVCC is a highly portable and convenient power supply for your electronics projects. It’s designed to snap right on to a 9 V battery...Read More The post SnapVCC appeared first on Electronut Labs.| Electronut Labs
Puya's 10-cent PY32 series is complicating the RISC-V narrative and has me doubting I'll ever reach for an 8-bit part again.| Jay Carlson
An in-depth look at the Padauk microcontroller ecosystem, including the PMS150C.| Jay Carlson
The Intel 8051 was the first microcontroller that saw historic, widespread use — now 40 years later, let's bring it back to life, using the latest development tools available.| Jay Carlson
Back in my blog post about Securing the Google SIP Stack, I did say I’d look at re-enabling SIP in Android-12, so with a view to doing that I tried building and booting LineageOS 19.1, but it crashed really early in the boot sequence (after the boot splash but before the boot animation started). It turns out that information on debugging the android early boot sequence is a bit scarce, so I thought I should write a post about how I did it just in case it helps someone else who’s struggli...| James Bottomley's random Pages
Quick guide to using the core-coupled memory more effectively with FreeRTOS firmware projects.| Electric UI
One of my old home automation boards running ebusd is still using Raspberry PI 1 B SoC. FreeBSD is still perfectly supporting this hardware, however, due to being a Tier-2 platform, binary updates …| smallhacks
The job queue in Microvium is used just for executing async continuations. It uses only 2 bytes of idle memory and doesn't require allocating any threads or special support from the host of any kind.| Coder Mike
During exploitation of ELF binaries, it is quite common that one needs to find a writable memory region: a writable “cave”. In this post I’ll present two generic techniques to fin…| Eyal Itkin
Microvium's async/await uses continuation-passing style (CPS) at its core for efficiency, but automatically creates promises as well when required. It does so by defining a handshake protocol between the caller and callee to establish when promises are required. Promises in Microvium also pretty compact, but not as compact as raw CPS.| Coder Mike
Interrupt handling is an important part of embedded systems development: it allows separating application logic from peripheral interfacing, while removing the need for polling and allowing real-time| Joel Filho
A suspended async function in Microvium can take as little as 6 bytes of RAM by using continuation-passing style (CPS) instead of promises, using dramatically less memory than other engines.| Coder Mike
The async/await feature of JavaScript is an alternative to multithreading, state machines, or callback-based code for managing long-running operations. Microvium's design of async-await makes it one of the most memory-efficient and ergonomic ways of writing such code for small devices.| Coder Mike
How to get a root shell on the old LG HR 598 Bluray player ? Here is some notes about my hardware hacking journey.| vegvisir
Flash file systems, "bootloaders" and SPARC.| the6p4c.github.io
Learn about the hardware aspects for Programmed Input Output and Direct Memory Access.| SerHack – Security Research
Unpacking and reverse engineering of Bitmain AntMiner Z11 firmware.| SerHack – Security Research
In this post, we'll explore at a high level the key concepts of programming microcontrollers. Then, to further demystify them, we'll write a small Rust program and run it on an ARM microcontroller.| Tempus Ex