No description
  • Rust 77.7%
  • Shell 12.4%
  • Dockerfile 9.9%
Find a file
ju6ge 5b0251f4c9
add new types for charge window info to bms protocol
these type add support for reading how much the charge state of the
battery has changed according to the configured charge window
2026-02-26 20:45:34 +01:00
.cargo initial reoder of folders and library crate creation 2025-12-29 23:22:18 +01:00
bin minimal working project with instruct step debugging infrastructure in place 2025-07-13 19:57:20 +02:00
firmware starting with library and measurment implementation 2026-01-01 21:20:55 +01:00
lib-bms-protocol add new types for charge window info to bms protocol 2026-02-26 20:45:34 +01:00
.doomrc minimal working project with instruct step debugging infrastructure in place 2025-07-13 19:57:20 +02:00
.gdbinit use debug binary for loading symbols 2025-12-29 14:32:01 +01:00
.gitignore Initial commit 2025-06-20 10:23:11 +02:00
Cargo.lock use thiserror for protocol error type 2026-01-05 17:26:05 +01:00
Cargo.toml initial reoder of folders and library crate creation 2025-12-29 23:22:18 +01:00
openocd.cfg fix openocd cfg 2025-12-28 13:43:32 +01:00
README.md minimal working project with instruct step debugging infrastructure in place 2025-07-13 19:57:20 +02:00
rust-toolchain.toml Initial commit 2025-06-20 10:23:11 +02:00
wch-tools.Containerfile minimal working project with instruct step debugging infrastructure in place 2025-07-13 19:57:20 +02:00

ch32v203-bms

A simple battery management controller software.

Building

cargo build --release

Flash

wchip wchisp flash target/riscv32imc-unknown-none-elf/release/bms

Debugging

For debugging purposes a container file is provided together with wrapper scripts to start the containerized openocd and riscv-gdb transparently. The wrapper scripts assume that podman is setup.

Starting Debug server

./bin/openocd

Connecting with gdb for interactive debugging

./bin/gdb -f target/riscv32imc-unknown-none-elf/release/bms