USBRetro is an open source controller adapter firmware for converting USB controllers, keyboards, and mice to various retro consoles' native controller protocols.
PikaPython is an ultra-lightweight Python interpreter that runs with only 4KB of RAM, zero dependencies. It is ready to use out of the box without any configuration required and easy to extend with C.
Specifically supports a large number of microcontrollers.
Snek is a tiny embeddable language targeting processors with only a few kB of flash and ram. Think of something that would have been running BASIC years ago and you'll have the idea. These processors are too small to run MicroPython.
Snek borrows semantics and syntax from python, but only provides a tiny subset of that large language. The goal is to have Snek programs able to run in a full Python (version 3) implementation so that any knowledge gained in learning Snek will transfer directly to learning Python.
Github and list of supported microcontrollers: https://github.com/keith-packard/snek
OpenEMC is an open-source firmware implementing an embedded management controller (EMC) on an STM32F1 microcontroller. It consists of a bootloader and firmware (both written in Rust) and Linux kernel driver modules (written in C).
Implements communication with the host over I2C and one interrupt line, field-upgradable firmware, full power control, a system watchdog, a real-time clock (RTC) with alarm and system wake-up, GPIO with interrupts, pin control, an analog digital converter (ADC), and full Linux device tree integration.
A Mexican company that designs and sells hacker toys, security auditing tools, and educational devices. They even sell products suitable for teaching kids.
The ATMegaZero is a microcontroller board based on the Atmel ATMega32U4 microchip, the same chip used in the Arduino Leonardo and Arduino Micro. It was modeled after the Raspberry PI Zero to take advantage of its sleek design and form factor but in the form of a microcontroller board. Similar to the Raspberry Pi Zero the ATMegaZero comes with 40 GPIO pins that can be used as input or output for interfacing devices and can be programmed using the Arduino IDE software. The ATMegaZero comes with a built-in USB which makes the ATMegaZero recognizable as a mouse or keyboard.
Two extant variants at this time: One based upon the ATMega32U4 (older) and one based upon the ESP32-S2 (newer) (CircuitPython compatible).
Somebody put together a very helpful list of all of the PIC microcontrollers out there, their specifics, and most importantly what their configuration bits (fuses) mean and what the constants map to. For example, MCLRE=off is 0xfdf.
TensorFlow Lite for Microcontrollers is an open-source machine learning framework in which a TensorFlow model is built and trained on a host computer. That model is then reduced in size and computational complexity by an exporter that converts it to the TensorFlow Lite format. For the tiniest of compute platforms — microcontrollers — that model is then converted to a C array containing the model structure and any trained parameters, like weights and biases. On the microcontroller, an interpreter parses the C array to extract operations and data to run inferences against new input data.
Given that TF Lite for Microcontrollers runs on some heavily resource-constrained devices, I got to wondering whether or not I could run inferences against these models on a Commodore 64.
This is a modification of the original firmware for the "Frequency Counter with a PIC and minimum hardware" created by Wolfgang "Wolf" Büscher, DL4YHF.
Derivatives of Wolf's design are sold on Ebay and other sides in kit form, usually adding a crystal test circuit but otherwise using Wolf's exact design and firmware for the counter part (Wolf is aware of these "clones" but doesn't mind as long as "those kits are offered for a fair price").
This is for those PIC 16F628 kits.
PIC microcontrollers, electronics, science projects, software, games, maps, and more.
TinyGS is an open network of Ground Stations distributed around the world to receive and operate LoRa satellites, weather probes and other flying objects, using cheap and versatile modules. This project is based on ESP32 boards and currently it is compatible with sx126x and sx127x LoRa modules but we plan to support more radio módules in the future.
MicroPython/CircuitPython DOS-like shell for microcontroller boards like the RasPi Pico and Featherwing.
This tutorial is about taking photos using an ESP32-CAM board running MicroPython. The board has an OV2640 without any chip between it and the ESP32. A photo routine and a Webserver were implemented to take a photo using a Webbrowser. MicroPython is a lean and efficient implementation of the Python 3 programming language.
WikiChip is the preeminent resource for computer architectures and semiconductor logic engineering, covering historical and contemporary electronic systems, technologies, and related topics.
How to rig an Arduino up to play a simple melody through a piezo speaker.
This is a thing of beauty.
A wiki of designs, schematics, and links to open source electronics projects. If you get lost in here long enough you'll find some interesting stuff.
5226 links, including 359 private