tinyusb
ardupilot
tinyusb | ardupilot | |
---|---|---|
48 | 72 | |
4,601 | 10,041 | |
- | 1.7% | |
9.8 | 10.0 | |
3 days ago | 1 day ago | |
C | C++ | |
MIT License | GNU General Public License v3.0 only |
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.
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
ardupilot
- Reading Sensor Data From Flight Controller Mateksys F405-TE - Integrated IMU - No Documentation
- Someone is selling my stuff on Etsy, can I do anything?
-
Kalman Filter Tutorial: Kalman Filter from the Ground Up
They are widely used in narrow circles :)
Two of (arguably the best) open source RC aircraft flight controllers (ArduPilot and PX4) are using extended Kalman filters in their state estimators (essentially sensor fusion that provides attitude/position estimate):
https://github.com/ArduPilot/ardupilot/tree/master/libraries...
https://github.com/PX4/PX4-Autopilot/blob/main/src/modules/e...
I'm not that familiar with cleanflight/betaflight/inav scene to know what the FPV racer flight controllers use.
-
Tell HN: Parrot abandoned their Bebop and Disco drones
2. https://ardupilot.org/
-
here pro vs here 4 GNSS RTK performance
Trimble also has some nice stuff, I think the BD940 is interesting. I do not know if it's recommended or not, but Ardupilot has a driver for the Septentrio GPS (https://github.com/ArduPilot/ardupilot/blob/master/libraries/AP_GPS/AP_GPS_SBF.cpp), as well for Trimble GPS (https://github.com/ArduPilot/ardupilot/blob/master/libraries/AP_GPS/AP_GPS_GSOF.cpp). So people have used these brands for drones.
-
Book on programming my own autopilot
For programmable open source autopilot: Arduino > Ardupilot (https://ardupilot.org).
-
How do I make a flight controller and what do I need?
You might also want to look at something like Ardupilot
-
Robotics team is entering in an autonomous boat competition, need some advice.
I'd like to emphasize the reference to Ardupilot bc there is a lot of material already developed there: a lot about navigation and guidance from UAVs, and the low-level stuff. Check this out
- Does anyone know about a good avionics related open source project for learning purposes?
- Programming transmitter
What are some alternatives?
esp32-s2-usb-host-cdc
inav - INAV: Navigation-enabled flight control software
libusb - A cross-platform library to access USB devices
PX4-Autopilot - PX4 Autopilot Software
lufa - LUFA - the Lightweight USB Framework for AVRs.
ESP32 - DroneBridge for ESP32. A secure & transparent telemetry link with support for WiFi and ESP-NOW. Supporting MAVLink, MSP, LTM or any other protocol
hid-remapper - USB input remapping dongle
MicroPython - MicroPython - a lean and efficient Python implementation for microcontrollers and constrained systems
rt-thread - RT-Thread is an open source IoT real-time operating system (RTOS).
fprime - F´ - A flight software and embedded systems framework
Adafruit_TinyUSB_Arduino - Arduino library for TinyUSB
paparazzi - Paparazzi is a free and open-source hardware and software project for unmanned (air) vehicles. This is the main software repository.