使用 Rust + ESP32C3 开发的 UPS 控制代码。
Go to file
2022-09-10 16:10:13 +08:00
.cargo feat: wifi 连接,网络校时,MQTT。 2022-08-07 11:57:05 +08:00
.devcontainer feat: wifi 连接,网络校时,MQTT。 2022-08-07 11:57:05 +08:00
docs feat: wifi 连接,网络校时,MQTT。 2022-08-07 11:57:05 +08:00
scripts feat: wifi 连接,网络校时,MQTT。 2022-08-07 11:57:05 +08:00
src fix: Beep 有概率崩溃问题。 2022-09-10 16:10:13 +08:00
.dockerignore feat: wifi 连接,网络校时,MQTT。 2022-08-07 11:57:05 +08:00
.gitignore feat: generate project from esp-idf-template. 2022-04-17 15:26:32 +08:00
.gitpod.Dockerfile feat: wifi 连接,网络校时,MQTT。 2022-08-07 11:57:05 +08:00
.gitpod.yml feat: wifi 连接,网络校时,MQTT。 2022-08-07 11:57:05 +08:00
build.rs feat: generate project from esp-idf-template. 2022-04-17 15:26:32 +08:00
Cargo.toml feat: reporting voltage via MQTT. 2022-08-21 21:54:09 +08:00
rust-toolchain.toml commit. 2022-08-06 10:27:17 +08:00
sdkconfig.defaults feat: wifi 连接,网络校时,MQTT。 2022-08-07 11:57:05 +08:00

esp32_c3_rust_wifi_demo

Dev Containers

This repository offers Dev Containers supports for:

Note

In order to use Gitpod the project needs to be published in a GitLab, GitHub, or Bitbucket repository.

In order to use GitHub Codespaces the project needs to be published in a GitHub repository and the user needs to be part of the Codespaces beta or have the project under an organization.

If using VS Code or GitHub Codespaces, you can pull the image instead of building it from the Dockerfile by selecting the image property instead of build in .devcontainer/devcontainer.json. Further customization of the Dev Container can be achived, see .devcontainer.json reference.

When using Dev Containers, some tooling to facilitate building, flashing and simulating in Wokwi is also added.

Build

  • Terminal approach:

    scripts/build.sh  [debug | release]
    

    If no argument is passed, release will be used as default

  • UI approach:

    The default build task is already set to build the project, and it can be used in VS Code and Gitpod:

    • From the Command Palette (Ctrl-Shift-P or Cmd-Shift-P) run the Tasks: Run Build Task command.
    • Terminal-> Run Build Task in the menu.
    • With Ctrl-Shift-B or Cmd-Shift-B.
    • From the Command Palette (Ctrl-Shift-P or Cmd-Shift-P) run the Tasks: Run Task command and select Build.
    • From UI: Press Build on the left side of the Status Bar.

Flash

Note

When using GitHub Codespaces, we need to make the ports public, see instructions.

  • Terminal approach:

    • Using flash.sh script:

      scripts/flash.sh [debug | release]
      

      If no argument is passed, release will be used as default

  • UI approach:

    • From the Command Palette (Ctrl-Shift-P or Cmd-Shift-P) run the Tasks: Run Task command and select Build & Flash.
    • From UI: Press Build & Flash on the left side of the Status Bar.
  • Any alternative flashing method from host machine.

Wokwi Simulation

When using a custom Wokwi project, please change the WOKWI_PROJECT_ID in run-wokwi.sh. If no project id is specified, a DevKit for esp32c3 will be used.

Warning

ESP32-S3 is not available in Wokwi

  • Terminal approach:

    scripts/run-wokwi.sh [debug | release]
    

    If no argument is passed, release will be used as default

  • UI approach:

    The default test task is already set to build the project, and it can be used in VS Code and Gitpod:

    • From the Command Palette (Ctrl-Shift-P or Cmd-Shift-P) run the Tasks: Run Test Task command
    • With Ctrl-Shift-, or Cmd-Shift-,

      Note

      This Shortcut is not available in Gitpod by default.

    • From the Command Palette (Ctrl-Shift-P or Cmd-Shift-P) run the Tasks: Run Task command and select Build & Run Wokwi.
    • From UI: Press Build & Run Wokwi on the left side of the Status Bar.

Warning

The simulation will pause if the browser tab is in the background.This may affect the execution, specially when debuging.

Debuging with Wokwi

Wokwi offers debugging with GDB.

  • Terminal approach:

    $HOME/.espressif/tools/riscv32-esp-elf/esp-2021r2-patch3-8.4.0/riscv32-esp-elf/bin/riscv32-esp-elf-gdb target/riscv32imc-esp-espidf/debug/esp32_c3_rust_wifi_demo -ex "target remote localhost:9333"
    

    Wokwi Blog: List of common GDB commands for debugging.

  • UI approach:

    1. Run the Wokwi Simulation in debug profile
    2. Go to Run and Debug section of the IDE (Ctrl-Shift-D or Cmd-Shift-D)
    3. Start Debugging by pressing the Play Button or pressing F5
    4. Choose the proper user:
      • esp when using VS Code or GitHub Codespaces
      • gitpod when using Gitpod