rust-esp32-std-demo
toml-rs
rust-esp32-std-demo | toml-rs | |
---|---|---|
16 | 8 | |
766 | 1,034 | |
- | - | |
6.8 | 3.1 | |
2 months ago | over 1 year ago | |
Rust | Rust | |
Apache License 2.0 | Apache License 2.0 |
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.
rust-esp32-std-demo
-
ESP32 USB is frustrating, try JCUSB for S3 + USB + CDC + OpenOCD + Arduino IDE
This is my link: https://github.com/ivmarkov/rust-esp32-std-demo
- Rust on my ESP32 (using idf framework)
-
Embedded Rust on ESP32C3 Board, a Hands-on Quickstart Guide
A complete STD demo on ESP32C3
-
Low FPS on ESP32 LCD
I'm trying lots of Rust demos (including rust-esp32-std-demo, esp32-spooky-maze-game) for ESP32 on my M5GO kit with ili9342c controller and all of them struggle to give fullscreen (320x240) frame-rate > 5.
-
Considerations when benchmarking on mcu?
I used this demo as a guide, it uses esp-idf for rust, and allows you to use std
- Embedded Rust Development
-
Can you run rust on the new raspberry pi pico w?
rust-esp32-std-demo works quite well with WiFi, HTTPS and MQTTS. The only thing I could not make work (but I did not put much effort into it) was using async primitives. That part seems to be experimental, indeed.
-
Rust on Espressif chips – 15-07-2022
FWIW I've very recently gotten https://github.com/ivmarkov/rust-esp32-std-demo (which is a pretty comprehensive demo) running on a TinyPICO (w/ESP32) and am looking forward to building out my own projects next.
-
Is this normal bindgen/embuild behavior?
I'm using this template project to get started with the esp32, though I've started fresh in a new main function. Every time I build the project -even if I only add a blank line to main - it seems to re-compile bindgen and embuild, and regenerate the bindings for a variety of packages that have C components. I haven't made any changes to these though and the process takes a full 90 seconds. In addition nothing in the bindings that are getting generated shows up in intellisense in vscode. Any help appreciated.
-
Starting work using the esp32 in rust - problems and solutions. (devlog, i guess?)
This worked fairly well for me. I assume that's where the book takes you, bit I've missed if you said if you're trying to use std or no_std. https://github.com/ivmarkov/rust-esp32-std-demo
toml-rs
-
`toml` vs `toml_edit` (ie `toml` 0.6 is out)
I updated the toml<->json online converter after the ValueAfterTable error has been fixed with toml 0.6. Very nice to see progress on the toml and toml_edit crates.
-
Error trying to deserialize TOML using Rust/SERDE
use std::fs::File; use std::io::Write; use std::collections::BTreeMap as Map; use serde_derive::{Serialize, Deserialize}; #[derive(Debug)] #[derive(Serialize, Deserialize)] #[serde(tag = "type0")] enum FooBarTwo<'a> { FooBarOne { string1: &'a str }, } #[derive(Debug)] #[derive(Serialize, Deserialize)] #[serde(tag = "type1")] enum FooBarThree<'a> { FooBarFour { string2: &'a str }, } #[derive(Debug)] #[derive(Serialize, Deserialize)] struct FooBarFour<'a> { black: &'a str, #[serde(borrow)] green: FooBarTwo<'a>, #[serde(borrow)] blue: FooBarThree<'a>, } #[derive(Debug)] #[derive(Serialize, Deserialize)] struct FooBarFourList<'a> { // Uasing a Map to workaround a known bug (#303) when using top level Vec // see https://github.com/alexcrichton/toml-rs/issues/303 #[serde(borrow)] foo_bar_six: Map<&'a str, FooBarFour<'a>> } fn main() { let red = FooBarFour { black: "aaa", green: FooBarTwo::FooBarOne { string1: "aaaabbbb" }, blue: FooBarThree::FooBarFour { string2: "ccccccc" }, }; let pink = FooBarFour { black: "aaa", green: FooBarTwo::FooBarOne { string1: "aaaabbbb" }, blue: FooBarThree::FooBarFour { string2: "ccccccc" }, }; let mut white = Map::new(); white.insert("pink", pink); white.insert("red", red); let fbfl = FooBarFourList { foo_bar_six: white }; println!("\nTL: {:?}\n", fbfl); let filename = "./data/test.toml"; let data = toml::to_string(&fbfl).expect("Error serialising fbfl"); println!("\nTL as TOML: {:?}\n", data); let mut f = File::create(filename).expect("Unable to create file"); f.write_all(data.as_bytes()).expect("Error writing data to file"); let toml_in: FooBarFour = toml::from_str(&data).expect("Error deserialising fbfl"); println!("\n{:?}\n", toml_in); }
-
Introduction to Rust generics [1/2]: Traits
This is especially useful for data deserialization: Just by implementing the Serialize and Deserialize traits from the serde crate, the (almost) universally used serialization library in the Rust world, we can then serialize and deserialize our types to a lot of data formats: JSON, YAML, TOML, BSON and so on...
-
Hey Rustaceans! Got a question? Ask here! (21/2022)!
It looks like the fields are public now (https://github.com/alexcrichton/toml-rs/pull/455, https://docs.rs/toml/latest/toml/value/struct.Date.html), so just upgrading the crate should do it :-)
-
anyone using rust in production? what do you do?
Pair that with Serde for serialization/deserialization (JSON, TOML, YAML, CSV/TSV, XML, URL query strings, etc.), Figment for configuration, and ignore for filesystem traversal with blacklist support, and Rust is a real joy for writing CLI utilities.
-
toml_edit v0.3
Added toml-rs-compatible API via the toml_edit::easy module for when developers want to ensure consistency between format-preserving and general TOML work, with one caveat.
-
Hey Rustaceans! Got an easy question? Ask here (16/2021)!
A quick example off the top of the head of my head is some tests in the toml package. It has a few different approaches. One is to use macros as in parser.rs. In valid.rs and invalid.rs it uses macros to generate a separate test for each input file. This allows you to run just one individual test from the list. These examples aren't perfect, and there are more sophisticated test utilities (like insta) that can abstract the process of "here are a bunch of inputs, test them all".
-
Reading TOML with default values
I want to read a toml file with default value. I tried toml-rs but it doesn't allow for default values.
What are some alternatives?
smol - A small and fast async runtime for Rust
serde-yaml - Strongly typed YAML library for Rust
esp-idf-sys - Bindings for ESP-IDF (Espressif's IoT Development Framework)
cargo-flamegraph - Easy flamegraphs for Rust projects and everything else, without Perl or pipes <3
ili9341-rs - A WIP, no_std, generic driver for the ILI9341 (and ILI9340C) TFT LCD display
toml - Rust TOML Parser
getrandom - A small cross-platform library to securely get random data (entropy)
rust - Empowering everyone to build reliable and efficient software.
embassy - Modern embedded framework, using Rust and async.
community-localization
espflash - Serial flasher utility for Espressif SoCs and modules based on esptool.py
flamegraph - Easy flamegraphs for Rust projects and everything else, without Perl or pipes <3