compile-time-init-build
tinyusb
Our great sponsors
compile-time-init-build | tinyusb | |
---|---|---|
10 | 48 | |
397 | 4,532 | |
6.3% | - | |
9.3 | 9.8 | |
7 days ago | 3 days ago | |
C++ | C | |
Boost Software License 1.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
compile-time-init-build
- C++ library for composing modular firmware at compile-time
- Cib: C++ library for composing modular firmware at compile-time
- Callbacks in embedded | heapless environment
-
Looking for well written, modern C++ (17/20) example projects for microcontrollers
cib: a hyper-modern way that intel is doing it's foundational infrastructure
- Cib – Compile-Time Initialization and Build
-
Future of embedded coding architecture
What are your thoughts about this CIB library by Intel, https://github.com/intel/compile-time-init-build I am interested to see if this is a generalized and good approach to use compile time polymorphism in MCUs.
- GitHub - intel/compile-time-init-build: C++ library for composing modular firmware at compile-time.
tinyusb
- An open source cross-platform USB stack for embedded system
-
Bluetooth to USB Audio bridge
Implementing the required USB host interface is another hurdle, but tinyusb seems to have sorted most of that out, except that UAC2 is implemented as a device while you need a host.
- So I started porting braids to the PI PICO and ended with a generative drum machine
-
USB CDC: Multiple Virtual COM Ports
Have a look at TinyUSB. It supports the STM32WB and demo programs for the Nucleo-WB55RG. It even offers an example for dual CDC ports, so very close to what you're looking for.
-
Looking for well written, modern C++ (17/20) example projects for microcontrollers
Second: Distrust, misunderstanding, and out of date opinions of C++ in embedded spaces. I often see "compatibilty" thrown around as a goal for using C and not C++, but for most modern embedded systems, C++ compilers exist and are (usually) well tuned. Arm is a shining example here*. C++ is more optimizable than C as the intent can be clearer to the compiler. C++ constexpr and templates are a godsend for embedded systems, and I used both heavily in my recent arduino and pico testing. I combined both of them for a really cool experimental USB interface descriptor builder that runs at compile time and avoids the need to count byte sizes, but I gave up on it when the maintainer said C only, despite the fact that C can't do that. I was similarly disappointed when the pico "C++" was C only, as there was no backwards compatibility necessary.
-
Pico + CH559 = USB Midi host?
I looked at this but the fork seems to have had a lot of problems from looking at the PR: https://github.com/hathach/tinyusb/pull/1219
-
Badger 2040: tiny kit ereader
I think a better solution might be to use a USB flash drive in the usbc port. Unfortunately micropython and circuitpython don't support this (yet), so you'd have to use c++ https://github.com/hathach/tinyusb
-
ESP32-S3 Update via USB?
It's possible to make the s3 be a mass storage device via TinyUSB. https://github.com/hathach/tinyusb/tree/master/examples/device/cdc_msc_freertos
- Microcontroller that can read voltage?
- how do emulate a keyboard over usb? wherever I look I only see libraries and tutorials on how to use the eps32 as a Bluetooth keyboard not a wired one
What are some alternatives?
amp-embedded-infra-lib - amp-embedded-infra-lib is a set of C++ libraries and headers that provide heap-less, STL like, infrastructure for embedded software development
esp32-s2-usb-host-cdc
cpp_stm32 - Pure c++17 implementation of stm32 driver
libusb - A cross-platform library to access USB devices
etl - Embedded Template Library
lufa - LUFA - the Lightweight USB Framework for AVRs.
amp-hal-st - HAL implementation of the Embedded Infrastructure Library for ST microcontrollers
hid-remapper - USB input remapping dongle
sml - C++14 State Machine library
rt-thread - RT-Thread is an open source IoT real-time operating system (RTOS).
cortex-m3-rtos - ARM Cortex-M3 Real-Time Operating System for educational purpose.
Adafruit_TinyUSB_Arduino - Arduino library for TinyUSB