https://github.com/n3xed/freertos-esp32-sys
FreeRTOS ESP32 port and bindings for Rust
https://github.com/n3xed/freertos-esp32-sys
bindings esp32 freertos rust
Last synced: 3 months ago
JSON representation
FreeRTOS ESP32 port and bindings for Rust
- Host: GitHub
- URL: https://github.com/n3xed/freertos-esp32-sys
- Owner: N3xed
- License: apache-2.0
- Created: 2021-06-28T13:03:45.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2021-07-31T10:38:14.000Z (almost 5 years ago)
- Last Synced: 2025-03-28T03:41:23.720Z (over 1 year ago)
- Topics: bindings, esp32, freertos, rust
- Language: C
- Homepage:
- Size: 532 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# Rust bindings and ESP32 freertos port
This library is based on [FreeRTOS-rust](https://github.com/lobaro/FreeRTOS-rust).
The bindings were generated using [bindgen](https://crates.io/crates/bindgen).
This crate currently doesn't support `esp32s2` and `esp32s3` (I don't have these two chips
on hand). Though supporting them shouldn't be that hard, it probably only requires the
right include paths and a modified `FreeRTOSConfig.h`, the esp32 FreeRTOS port in the
`port` directory should work for all three variants.
## Building
This crate uses [cc](https://github.com/alexcrichton/cc-rs) to compile the C and assembly
code. Please look at its documentation to configure compiler and archiver paths of the
xtensa gcc toolchain.
## Features
- `use-rust-alloc`
Provide the required `vPortFree` and `pvPortMalloc` C functions using rust's global
allocator (and therefore requires the `alloc` crate to be available).
## License
Licensed under either of
* Apache License, Version 2.0
([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
* MIT license
([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)
at your option.
## Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.