Update dependencies and enhance README for RP2040 support
This commit is contained in:
@@ -1,5 +1,4 @@
|
|||||||
/target
|
/target
|
||||||
Cargo.lock
|
|
||||||
**/*.rs.bk
|
**/*.rs.bk
|
||||||
.direnv
|
.direnv
|
||||||
.envrc
|
.envrc
|
||||||
|
|||||||
Generated
+1784
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -6,7 +6,7 @@ edition = "2021"
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
embassy-executor = { version = "0.7.0", features = ["task-arena-size-32768", "arch-cortex-m", "executor-thread", "executor-interrupt"] }
|
embassy-executor = { version = "0.7.0", features = ["task-arena-size-32768", "arch-cortex-m", "executor-thread", "executor-interrupt"] }
|
||||||
embassy-time = { version = "0.4.0", features = ["generic-queue-8"] }
|
embassy-time = { version = "0.4.0", features = ["generic-queue-8"] }
|
||||||
embassy-rp = { version = "0.3.0", features = ["defmt", "unstable-pac", "time-driver", "critical-section-impl"] }
|
embassy-rp = { version = "0.3.0", features = ["defmt", "unstable-pac", "time-driver", "critical-section-impl", "rp2040"] }
|
||||||
embassy-net = { version = "0.6.0", features = ["defmt", "tcp", "udp", "dhcpv4", "medium-ethernet"] }
|
embassy-net = { version = "0.6.0", features = ["defmt", "tcp", "udp", "dhcpv4", "medium-ethernet"] }
|
||||||
embassy-sync = { version = "0.6.1" }
|
embassy-sync = { version = "0.6.1" }
|
||||||
embassy-usb = { version = "0.4.0" }
|
embassy-usb = { version = "0.4.0" }
|
||||||
|
|||||||
@@ -84,6 +84,9 @@ flatpak run org.example.rustdevshell
|
|||||||
| **minicom** | Serial terminal for device output |
|
| **minicom** | Serial terminal for device output |
|
||||||
| **elf2uf2-rs** | Convert ELF to UF2 format (RP2040) |
|
| **elf2uf2-rs** | Convert ELF to UF2 format (RP2040) |
|
||||||
| **picotool** | Pico-specific firmware operations |
|
| **picotool** | Pico-specific firmware operations |
|
||||||
|
| **cargo-binutils** | LLVM tools for size and object analysis |
|
||||||
|
| **flip-link** | Stack overflow protection for embedded |
|
||||||
|
| **tea** | Gitea CLI for repository management |
|
||||||
|
|
||||||
## Testing & Development Features
|
## Testing & Development Features
|
||||||
|
|
||||||
@@ -107,6 +110,9 @@ cargo fmt
|
|||||||
|
|
||||||
# Build for embedded target
|
# Build for embedded target
|
||||||
cargo build --target thumbv6m-none-eabi --release
|
cargo build --target thumbv6m-none-eabi --release
|
||||||
|
|
||||||
|
# Analyze binary size
|
||||||
|
cargo size --target thumbv6m-none-eabi --release
|
||||||
```
|
```
|
||||||
|
|
||||||
## Project Layout
|
## Project Layout
|
||||||
|
|||||||
@@ -51,6 +51,10 @@
|
|||||||
cargo
|
cargo
|
||||||
rustfmt
|
rustfmt
|
||||||
rust-src
|
rust-src
|
||||||
|
rust-std
|
||||||
|
]
|
||||||
|
++ [
|
||||||
|
targets.thumbv6m-none-eabi.latest.rust-std
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
@@ -75,9 +79,12 @@
|
|||||||
probe-rs-tools
|
probe-rs-tools
|
||||||
openocd
|
openocd
|
||||||
minicom
|
minicom
|
||||||
|
cargo-binutils
|
||||||
|
flip-link
|
||||||
# RP2040 UF2 workflows
|
# RP2040 UF2 workflows
|
||||||
elf2uf2-rs
|
elf2uf2-rs
|
||||||
picotool
|
picotool
|
||||||
|
tea
|
||||||
pre-commit
|
pre-commit
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -101,7 +108,7 @@
|
|||||||
rustup target add thumbv6m-none-eabi >/dev/null 2>&1 || true # Cortex-M0/M0+ (RP2040)
|
rustup target add thumbv6m-none-eabi >/dev/null 2>&1 || true # Cortex-M0/M0+ (RP2040)
|
||||||
fi
|
fi
|
||||||
echo "[rust-template] Welcome to the Rust dev shell!"
|
echo "[rust-template] Welcome to the Rust dev shell!"
|
||||||
echo "Tools: cargo, rustc, clippy, rustfmt, rust-analyzer, probe-rs, openocd, minicom, elf2uf2-rs, picotool"
|
echo "Tools: cargo, rustc, clippy, rustfmt, rust-analyzer, probe-rs, openocd, minicom, elf2uf2-rs, picotool, cargo-binutils, flip-link, tea"
|
||||||
echo "Run 'cargo build' to build, or 'nix run .#dev-helper' for a tool summary."
|
echo "Run 'cargo build' to build, or 'nix run .#dev-helper' for a tool summary."
|
||||||
echo "See README.md for usage."
|
echo "See README.md for usage."
|
||||||
'';
|
'';
|
||||||
@@ -118,6 +125,7 @@
|
|||||||
version = "0.1.0";
|
version = "0.1.0";
|
||||||
src = ./.;
|
src = ./.;
|
||||||
cargoLock.lockFile = ./Cargo.lock;
|
cargoLock.lockFile = ./Cargo.lock;
|
||||||
|
meta.mainProgram = "rusty-dog";
|
||||||
};
|
};
|
||||||
|
|
||||||
devHelper = pkgs.writeShellScriptBin "dev-helper" ''
|
devHelper = pkgs.writeShellScriptBin "dev-helper" ''
|
||||||
|
|||||||
Reference in New Issue
Block a user