Hacker News with Generative AI: Embedded Systems

Why FreeBSD is the right choice for embedded devices (klarasystems.com)
FreeBSD stands out as the ideal OS for embedded devices, offering true open-source freedom without GPL restrictions. With a permissive license, a robust community, and real-world adoption in high-performance systems, FreeBSD provides flexibility, reliability, and a streamlined development experience. Learn why more companies are choosing FreeBSD over Linux for their embedded solutions.
A whirlwind tutorial on creating teensy ELF executables for Linux (1999) (muppetlabs.com)
If you're a programmer who's become fed up with software bloat, then may you find herein the perfect antidote.
Using the Rust standard library with the NuttX RTOS (lupyuen.org)
Freshly Baked: Here’s how we Blink the LED with Rust Standard Library on Apache NuttX RTOS…
A FPGA friendly 32 bit RISC-V CPU implementation (github.com/SpinalHDL)
This repository hosts a RISC-V implementation written in SpinalHDL.
The Hunt for Error -22 (tweedegolf.nl)
This article is a linear retrospective of how we searched for and eventually fixed a hard-to-find bug in our embedded software. If you're only interested in the outcome, then make sure to read the last three sections.
Rhai: An embedded scripting language for Rust (github.com/rhaiscript)
Rhai is an embedded scripting language and evaluation engine for Rust that gives a safe and easy way to add scripting to any application.
Laser Fault Injection on a Budget: RP2350 Edition (courk.cc)
Tactility: OS for the ESP32 Microcontroller Family (tactility.one)
Loading...
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.
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.
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, …
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.
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.
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.
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+.
Nvidia Jetson Orin Nano Super [video] (youtube.com)
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.
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.
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.
CPython on NuttX (github.com/apache)
This is the NuttX's port of Python (CPython)!
Starlark Programming Language (starlark-lang.org)
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.
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.
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.
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.
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:
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.
Arm PC Base System Architecture 1.0 (developer.arm.com)
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.
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.