Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →
Top 23 C Firmware Projects
-
Tasmota
Alternative firmware for ESP8266 and ESP32 based devices with easy configuration using webUI, OTA updates, automation using timers or rules, expandability and entirely local control over MQTT, HTTP, Serial or KNX. Full documentation at
Project mention: Printing emails based on Message Filters, does not seem possible | /r/Thunderbird | 2023-12-02All of my office devices are connected to Sonoff S31 smart plugs, flashed with Tasmota on their own locked-down VLAN, and can be controlled via voice, Alexa, Tasker automation on my Android, NFC tags at my office door and various scripts triggered via my StreamDeck (on Linux). This all works fantastic, and I can turn on or off my devices, including my printer, when I start or end my day at work.
-
I got one not too long after the official launch and I've used it a decent amount (granted I am in cybersecurity and have a more real-world use cases then the average person). My favorite use case is the IR remote since phones no longer have IR blasters. It's saved me twice so far in having to buy/find a remote for something.
One thing people don't realize is that the custom firmware [0] that you can run allows you to receive and transmit on a wide range of frequencies under 1Ghz. Lots of things use that range (garage doors, gates, fan remotes, etc.) and are not very secure. I think that this will be a time looked back on where it's possible to interact with those devices without having to buy a custom PCB transmitter or somewhat expensive and complex SDR.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
Project mention: Xtreme-Firmware alternatives - awesome-flipperzero, flipperzero-firmware-wPlugins, fucking-awesome-flipperzero, proxmark3-to-flipper, and flipperzero-firmware | libhunt.com/r/Xtreme-Firmware | 2024-02-12
-
-
So apparently the Pinecil is a BLE-enabled soldering iron with a 108 MHz RISC-V processor running a custom real-time operating system [0]. The author wanted to access the UART logs, so they repurposed a Raspberry Pi Pico (a dual-core microcontroller system running a real-time OS) for the task.
That's a staggering amount of hardware, sortware and computing power devoted to decoding one of the simplest and oldest serial protocols from a device whose sole purpose is to essentially melt tin. Maybe I'm out of touch, but I think I'll stick to my thermostat-controlled Weller soldering station and FTDI UART converters. I apologize if this post comes across as snarky, my point is that these are solved problems and have been for half a century.
-
For the modern server/desktop and even laptop, that's also no bad thing. It is somewhat ridiculous that UEFI bioses, internally, still boot in 16-bit real mode and have to do all the steps your bios bootloader used to do to set up a 64-bit environment ready to go: https://github.com/tianocore/edk2/blob/edc6681206c1a8791981a..., https://github.com/tianocore/edk2/blob/edc6681206c1a8791981a..., https://github.com/tianocore/edk2/blob/edc6681206c1a8791981a...
Why not just start the CPU in "long mode", which is what everyone is using it for, in the first place?
These newer ARM processors support 32-bit code at EL0 only (userspace). That seems like a reasonable approach for x86 as well and the freebsd announcement has this to say:
> There is currently no plan to remove support for 32-bit binaries on 64-bit kernels.
So for the moment, you can run 32-bit applications just fine.
-
esp-homekit-devices
Advanced firmware to add native Apple HomeKit support and custom configurations over WiFi, compatible with any SoC based on ESP32, ESP32-S, ESP32-C and ESP8266 series.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
Project mention: Anyone done the recent Samsung SSD firmware update? | /r/LinuxOnThinkpad | 2023-06-13
UEFI firmware can not be updated in legacy BIOS modeSee https://github.com/fwupd/fwupd/wiki/PluginFlag:legacy-bios for more information.Use fwupdmgr --help for help
-
mongoose-os
Mongoose OS - an IoT Firmware Development Framework. Supported microcontrollers: ESP32, ESP8266, CC3220, CC3200, STM32F4, STM32L4, STM32F7. Amazon AWS IoT, Microsoft Azure, Google IoT Core integrated. Code in C or JavaScript.
-
nexmon
The C-based Firmware Patching Framework for Broadcom/Cypress WiFi Chips that enables Monitor Mode, Frame Injection and much more
-
Project mention: At what abstraction level does the USB MSC class operate? | /r/embedded | 2023-04-16
If you just want to transfer data without necessarily using a filesystem on your storage device, check out daplink. It implements a virtual FAT filesystem over USB so you can copy over firmware updates easily.
-
Fortunately, some people have made third party tools that can allow you to do it yourself, if you're handy with python.https://github.com/o-gs/dji-firmware-tools
-
https://trezor.io/ - Easy to use, no matter how new in Bitcoin you're.
-
Project mention: [Tutorial] How to setup AltServer on Raspberry Pi/Linux Box and sync your device wirelessly (2023) | /r/jailbreak | 2023-12-10
Install idevicerestore Manually https://github.com/libimobiledevice/idevicerestore [Remove the (libimobiledevice-glue-dev \) line from the first command for it to work]
-
Project mention: OpenIPC is an alternative open firmware for your IP camera | news.ycombinator.com | 2024-03-02
Contains closed source binary blobs. It’s commercial with open source components.
https://github.com/OpenIPC/firmware/issues/230#issuecomment-...
-
Prusa-Firmware-Buddy
Firmware for the Original Prusa MINI, Original Prusa MK4 and the Original Prusa XL 3D printers by Prusa Research.
>I don't believe QOI will ever have any sort of real-world practical use
Prusa (the 3d printer maker) seems to think otherwise: https://github.com/prusa3d/Prusa-Firmware-Buddy/releases/tag...
-
-
stm32-bootloader
Customizable Bootloader for STM32 microcontrollers. This example demonstrates how to perform in-application-programming of a firmware located on an external SD card with FAT32 file system.
-
-
yi-hack-v5
Even newer Custom Firmware for Xiaomi Cameras based on Hi3518ev200 Chipset. It includes free RTSP, ONVIF and other improvements based on the work by roleoroleo
Project mention: Ask HN: IP cameras that don't require an app or internet | news.ycombinator.com | 2023-06-23Xiaomi yi with replacement firmware https://github.com/alienatedsec/yi-hack-v5
-
IoTGoat
IoTGoat is a deliberately insecure firmware created to educate software developers and security professionals with testing commonly found vulnerabilities in IoT devices.
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
C Firmware related posts
- Future of 32-bit platform support in FreeBSD
- Ask HN: Does anyone care about OpenPOWER?
- Accessing the Pinecil UART with Picoprobe
- Flipper Zero: Multi-Tool Device for Geeks
- Why Prusa is floundering, and how you can avoid their fate
- Sofirn SC21 Pro: user manual not accurate?
- Precision 7520: 64GB memory 3200MHz support
-
A note from our sponsor - InfluxDB
www.influxdata.com | 28 Mar 2024
Index
What are some of the best open-source Firmware projects in C? This list will help you:
Project | Stars | |
---|---|---|
1 | Tasmota | 21,220 |
2 | unleashed-firmware | 14,795 |
3 | flipperzero-firmware | 10,894 |
4 | nodemcu-firmware | 7,552 |
5 | IronOS | 6,759 |
6 | edk2 | 4,179 |
7 | esp-homekit-devices | 2,562 |
8 | fwupd | 2,540 |
9 | mongoose-os | 2,462 |
10 | nexmon | 2,307 |
11 | DAPLink | 2,128 |
12 | dji-firmware-tools | 1,347 |
13 | trezor-firmware | 1,234 |
14 | idevicerestore | 1,184 |
15 | firmware | 1,013 |
16 | Prusa-Firmware-Buddy | 977 |
17 | NanoVNA | 963 |
18 | stm32-bootloader | 839 |
19 | yi-hack-MStar | 815 |
20 | yi-hack-v5 | 686 |
21 | IoTGoat | 598 |
22 | RetroESP32 | 560 |
23 | EasyAVR | 528 |