RAK4631 board: - SX126X_POWER_EN on P1.05 driven HIGH at init (radio is power-gated; without this the chip has no power and SPI hangs) - HFXO + LFXO external crystals in embassy_nrf::Config (USB CDC-ACM needs +/- 500 ppm which the internal RC oscillator can't provide) - SoftwareVbusDetect(true, true) so USB enumerates without needing a CLOCK_POWER interrupt handler - Green LED on P1.03 via SimpleLed (RAK19007 Base LED1, active HIGH) - driver/mod.rs: open simple_led feature gate for rak_wisblock_4631 - Spim::new pin-order comment on SPI setup (arg order is sck/miso/mosi, not sck/mosi/miso — easy to get wrong) debug-checkpoint instrumentation (feature-gated, zero cost in release): - radio.rs: debug_blink::set(N) at each TX-phase boundary, filling in the long-aspirational blink-map doc - debug_blink.rs: checkpoint 19 between prepare_for_cad and cad(), so future bring-ups can distinguish modem-setup hang from DIO1-wait hang justfile + mise.toml: - set shell := ["mise", "exec", "--", "sh", "-c"] so recipes always resolve tools through mise, not whatever happens to be on PATH - replace per-board := vars + long if/elif _info chain with a single case statement — one place per board, two lists (names + metadata) - new flash-dfu recipe using adafruit-nrfutil via uvx, with VID:PID (239a:0029) port autodetect for the Adafruit nRF52 bootloader - mise.toml: rust pins now carry ARM targets + clippy, so 'mise install' is sufficient bootstrapping (no extra rustup target add steps) Verified TX on real hardware (RAK19007 Base + RAK4631 Core + RAK1921 OLED, US915 band): ADVERT round-trip with an external receiver.
23 lines
990 B
TOML
23 lines
990 B
TOML
[tools]
|
|
just = "latest"
|
|
|
|
# Cargo-installed tooling via mise's `cargo:` backend.
|
|
"cargo:cargo-binutils" = "latest" # rust-objcopy, rust-size
|
|
"cargo:cargo-hex-to-uf2" = "latest" # ELF → UF2 for nRF52 / RP2040 DFU drives
|
|
"cargo:espup" = "0.16" # bootstraps the ESP Xtensa toolchain
|
|
"cargo:espflash" = "3" # flash + save-image for ESP targets
|
|
"cargo:probe-rs-tools" = "0.31" # debug-probe flash/run for ARM targets
|
|
|
|
# Stable Rust + cross-compile targets. Targets land under $RUSTUP_HOME for
|
|
# the pinned toolchain, so they're always available under `mise exec` — no
|
|
# extra `rustup target add` step at setup time.
|
|
#
|
|
# Xtensa ESP targets are NOT listed here — they use the self-contained `esp`
|
|
# toolchain installed out-of-band by `espup` (see `just setup`). That
|
|
# toolchain ships its own rust-src for `-Zbuild-std`.
|
|
[tools.rust]
|
|
version = "1.94"
|
|
profile = "default"
|
|
components = "clippy"
|
|
targets = "thumbv6m-none-eabi,thumbv7em-none-eabihf"
|