From b5fc72f5319f1480c2f04e6a92076ee13a8a32fe Mon Sep 17 00:00:00 2001 From: Timo Niemann Date: Thu, 4 Jun 2026 11:53:20 +0200 Subject: [PATCH] added minimal explaining readme --- README.md | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..82b9c6f --- /dev/null +++ b/README.md @@ -0,0 +1,59 @@ +# PicoSDKandFreeRtos + +Minimal Raspberry Pi Pico 2 (RP2350) project running FreeRTOS, plus a small +.NET host tool to measure USB-CDC round-trip latency. + +## Firmware + +The firmware exposes a simple ping protocol over USB-CDC. The host sends: + +``` +:ping\n +``` + +and the Pico replies: + +``` +:PONG!\n +``` + +### Build & flash + +Open the folder in VS Code with the **Raspberry Pi Pico** extension, then: + +1. If not prompted directly: Command Palette -> **Raspberry Pi Pico: Import Pico Project** +2. Command Palette -> **Raspberry Pi Pico: Run Pico Project (USB)** + +Required tooling (auto-installed by the extension): + +- Pico SDK 2.2.0 +- ARM GCC toolchain `14_2_Rel1` +- `picotool` 2.2.0-a4 +- Ninja, CMake + +## Host tool: `response_tester.cs` + +A .NET 10 file-based app that bursts ping commands over the serial port and prints per-command and average round-trip latency. + +### Run + +Requires .NET 10 SDK. + +```bash +dotnet response_tester.cs +``` + +Adjust `portName` (default `COM30`) inside the file if needed. + +## Troubleshooting +> Raspberry Pi Pico: Run Pico Project (USB) not working +- try **Raspberry Pi Pico: Compile Pico Project** +- hold `BOOTSEL` while connecting the Pico +- a new drive should be mountable +- move the *.uf2 file from ./build onto the new drive + +> COM-Port +- On Windows the Pico typically appears as `COMx` (check Device Manager). +- On Linux it appears as `/dev/ttyACM0` (or `ACM1`, ...). +- On macOS it appears as `/dev/tty.usbmodem*` or `/dev/cu.usbmodem*`. +- Update `portName` in `response_tester.cs` accordingly. \ No newline at end of file