ELKS: Linux for 16-bit Intel Processors
(github.com/ghaerr)
ELKS is a project providing a Linux-like OS for systems based on the Intel IA16 architecture (16-bit processors: 8086, 8088, 80188, 80186, 80286, NEC V20, V30 and compatibles). Such systems are ancient computers (IBM-PC XT / AT and clones) as well as more recent SBCs, SoCs, and FPGAs. ELKS supports networking and installation to HDD using both MINIX and FAT file systems.
ELKS is a project providing a Linux-like OS for systems based on the Intel IA16 architecture (16-bit processors: 8086, 8088, 80188, 80186, 80286, NEC V20, V30 and compatibles). Such systems are ancient computers (IBM-PC XT / AT and clones) as well as more recent SBCs, SoCs, and FPGAs. ELKS supports networking and installation to HDD using both MINIX and FAT file systems.
Beyond BLE: Cracking Open the Black-Box of RF Microcontrollers [video]
(media.ccc.de)
Despite the recent popularity and breadth of offerings of low-cost RF microcontrollers, there is a shared absence of documentation for the internal workings of their RF hardware.
Despite the recent popularity and breadth of offerings of low-cost RF microcontrollers, there is a shared absence of documentation for the internal workings of their RF hardware.
Mastodon Server for Apache NuttX Continuous Integration (macOS Rancher Desktop)
(lupyuen.org)
We’re out for an overnight hike, city to airport. Our Build Farm for Apache NuttX RTOS runs non-stop all day, all night. Continuously compiling over 1,000 NuttX Targets: Arm, RISC-V, Xtensa, x64, …
We’re out for an overnight hike, city to airport. Our Build Farm for Apache NuttX RTOS runs non-stop all day, all night. Continuously compiling over 1,000 NuttX Targets: Arm, RISC-V, Xtensa, x64, …
Revisiting the NetBSD Build System
(blogsystem5.substack.com)
I recently picked up an embedded project in which I needed to build a highly customized full system image with minimal boot times. As I explored my options, I came to the conclusion that NetBSD, the often-forgotten BSD variant, was the best viable choice for my project.
I recently picked up an embedded project in which I needed to build a highly customized full system image with minimal boot times. As I explored my options, I came to the conclusion that NetBSD, the often-forgotten BSD variant, was the best viable choice for my project.
Demystifying Common Microcontroller Debug Protocols [video]
(media.ccc.de)
Many developers know that the answer to "How do I debug this microcontroller" is either "JTAG" or "SWD". But what does that mean, exactly? How do you get from "Wiggling wires" to "Programming a chip" and "Halting on breakpoints"? This talk will cover how common debug protocols work starting from signals on physical wires, cover common mechanisms for managing embedded processors, and ending up at talking to various common microcontrollers.
Many developers know that the answer to "How do I debug this microcontroller" is either "JTAG" or "SWD". But what does that mean, exactly? How do you get from "Wiggling wires" to "Programming a chip" and "Halting on breakpoints"? This talk will cover how common debug protocols work starting from signals on physical wires, cover common mechanisms for managing embedded processors, and ending up at talking to various common microcontrollers.
Sipeed NanoKVM-PCIe
(cnx-software.com)
Sipeed NanoKVM-PCIe is a variation of the NanoKVM KVM-over-IP solution introduced last summer, but instead of being a tiny Cube with USB-C power, the new model can be powered through the PCIe slot from the host (as well as USB-C) and adds optional WiFi 6 and PoE functionality.
Sipeed NanoKVM-PCIe is a variation of the NanoKVM KVM-over-IP solution introduced last summer, but instead of being a tiny Cube with USB-C power, the new model can be powered through the PCIe slot from the host (as well as USB-C) and adds optional WiFi 6 and PoE functionality.
Piccolo OS, a Small Multitasking OS for the Raspberry Pi Pico
(github.com/garyexplains)
Piccolo OS is a small multitasking OS for the Raspberry Pi Pico. It is designed primarily as a teaching tool. It demonstrates the fundamentals of a co-operative multitasking OS and the Arm Cortex-M0+.
Piccolo OS is a small multitasking OS for the Raspberry Pi Pico. It is designed primarily as a teaching tool. It demonstrates the fundamentals of a co-operative multitasking OS and the Arm Cortex-M0+.
Asynchronous Rust on Cortex-M Microcontrollers (2023)
(memfault.com)
In the realm of embedded software, the demand for efficient and responsive applications is ever-increasing.
In the realm of embedded software, the demand for efficient and responsive applications is ever-increasing.
HP-RT real-time VME operating system – OpenPA.net
(openpa.net)
HP-RT was a real-time operating system from HP for its HP 9000 740 VME instrumentation computers, released from 1993 to 1997 in six versions from 1.0 to 3.0.
HP-RT was a real-time operating system from HP for its HP 9000 740 VME instrumentation computers, released from 1993 to 1997 in six versions from 1.0 to 3.0.
Subnet routers: how do they work?
(tailscale.com)
The most straightforward way to use Tailscale is to install the client on every node that you want to add to your network. But there are some cases, like embedded devices or existing VPCs, where a direct installation on each node isn’t feasible. That’s when you can turn to a subnet router.
The most straightforward way to use Tailscale is to install the client on every node that you want to add to your network. But there are some cases, like embedded devices or existing VPCs, where a direct installation on each node isn’t feasible. That’s when you can turn to a subnet router.
Starlark Programming Language
(starlark-lang.org)
Starlark is a small language designed to be embedded in another application, to provide configuration or scripting abilities.
Starlark is a small language designed to be embedded in another application, to provide configuration or scripting abilities.
My4th Light – Custom 8-Bit Forth CPU
(mynor.org)
The new "XS" platform allows an even smaller computer design. Compared to the original My4TH computer board, the new XS platform has a much more compact microcode.
The new "XS" platform allows an even smaller computer design. Compared to the original My4TH computer board, the new XS platform has a much more compact microcode.
OpenWrt One router officially launched
(openwrt.org)
The OpenWrt Project is a Linux operating system targeting embedded devices. Instead of trying to create a single, static firmware, OpenWrt provides a fully writable filesystem with package management. This frees you from the application selection and configuration provided by the vendor and allows you to customize the device through the use of packages to suit any application.
The OpenWrt Project is a Linux operating system targeting embedded devices. Instead of trying to create a single, static firmware, OpenWrt provides a fully writable filesystem with package management. This frees you from the application selection and configuration provided by the vendor and allows you to customize the device through the use of packages to suit any application.
Apertis v2024 released – Debian Bookwarm for industrial embedded devices
(lwn.net)
Apertis is a Collabora-developed Debian derivative distribution designed to be incorporated into electronic devices; the v2024 release is now available. It is now based on the Bookworm release, and includes support for Podman, ONNX Runtime, OP-TEE, and more.
Apertis is a Collabora-developed Debian derivative distribution designed to be incorporated into electronic devices; the v2024 release is now available. It is now based on the Bookworm release, and includes support for Podman, ONNX Runtime, OP-TEE, and more.
Interceptor Carrier Board v2.0 Adds 4 GbE Ports for RPi CM4 and Banana Pi CM4
(linuxgizmos.com)
The Axzez Interceptor v2.0 is a versatile carrier board for the Raspberry Pi and Banana Pi Compute Module 4, designed for applications such as NAS, NVR, IoT, and managed switches. It offers advanced capabilities and supports operating systems like Debian 12 ‘Bookworm’ and OpenWrt.
The Axzez Interceptor v2.0 is a versatile carrier board for the Raspberry Pi and Banana Pi Compute Module 4, designed for applications such as NAS, NVR, IoT, and managed switches. It offers advanced capabilities and supports operating systems like Debian 12 ‘Bookworm’ and OpenWrt.
Accessing a DRM Framebuffer to display an image
(embear.ch)
When doing bring-ups on embedded devices a useful way to test if a display interface is working is this command:
When doing bring-ups on embedded devices a useful way to test if a display interface is working is this command:
Minimally intrusive instrumentation of embedded system C/C++ code
(github.com/RTEdbg)
The toolkit includes a library of functions for minimally intrusive code instrumentation (data logging/tracing), tools for transferring data to the host, a tool for decoding data on the host, and demo code.
The toolkit includes a library of functions for minimally intrusive code instrumentation (data logging/tracing), tools for transferring data to the host, a tool for decoding data on the host, and demo code.
Making Sense of Real-Time Operating Systems in 2024
(hackaday.com)
The best part about real-time OS (RTOS) availability in 2024 is that we developers are positively spoiled for choice, but as a corollary this also makes it a complete pain to determine what the optimal choice for a project is.
The best part about real-time OS (RTOS) availability in 2024 is that we developers are positively spoiled for choice, but as a corollary this also makes it a complete pain to determine what the optimal choice for a project is.
Release RP2350 and ESP32-C6 support, RISC-V native emitter, common TinyUSB code
(github.com/micropython)
This release of MicroPython adds support for the new RP2350 MCU, improved RISC-V support with native code generation, support for ESP32-C6 MCUs, update Zephyr version with threading support, unified TinyUSB bindings across ports, a portable UART IRQ API, and enhanced mpremote recursive copy. There are also numerous bug fixes, enhancements to the test suite and more attention to testing of the machine module and its API. Read on for more details.
This release of MicroPython adds support for the new RP2350 MCU, improved RISC-V support with native code generation, support for ESP32-C6 MCUs, update Zephyr version with threading support, unified TinyUSB bindings across ports, a portable UART IRQ API, and enhanced mpremote recursive copy. There are also numerous bug fixes, enhancements to the test suite and more attention to testing of the machine module and its API. Read on for more details.
Why systemd is a problem for embedded Linux
(kevinboone.me)
The Internet is full of rants about systemd, and I don’t want this post to be another one. Many of the complaints people make about it don’t stand up to much scrutiny, even the technical ones; and many complaints are not even technical. My particular interest in Linux is primarily for embedded applications; and there, I suggest, systemd is creating a potential (technical) problem.
The Internet is full of rants about systemd, and I don’t want this post to be another one. Many of the complaints people make about it don’t stand up to much scrutiny, even the technical ones; and many complaints are not even technical. My particular interest in Linux is primarily for embedded applications; and there, I suggest, systemd is creating a potential (technical) problem.
Async embedded Rust vs. FreeRTOS and C showdown (2022)
(tweedegolf.nl)
It's time for another technical blog post about async Rust on embedded. This time we're going to pitch Embassy/Rust against FreeRTOS/C on an STM32F446 microcontroller.
It's time for another technical blog post about async Rust on embedded. This time we're going to pitch Embassy/Rust against FreeRTOS/C on an STM32F446 microcontroller.
K4 – High performance open-source transactional, durable embedded storage engine
(github.com/guycipher)
High performance transactional, durable embedded storage engine. Designed to deliver low-latency, optimized read and write performance.
High performance transactional, durable embedded storage engine. Designed to deliver low-latency, optimized read and write performance.
Why did you write a new RTOS for CHERIoT?
(cheriot.org)
I’m often asked why we decided to write a new RTOS for CHERIoT instead of using something that already existed, such as ThreadX, FreeRTOS, or Zephyr. The short answer is that CHERIoT is a hardware-software co-design project and retrofitting ground-up co-design is hard. This post is for people who want the long answer.
I’m often asked why we decided to write a new RTOS for CHERIoT instead of using something that already existed, such as ThreadX, FreeRTOS, or Zephyr. The short answer is that CHERIoT is a hardware-software co-design project and retrofitting ground-up co-design is hard. This post is for people who want the long answer.