pw_touchscreen_imgui: Handle host pw_touchscreen events

Update pigweed and pigweed-experimental repos.
Update README.md with pw-system-console commands.

Bug: b/304366246
Change-Id: Ib3f73529d6cffd955fc114c827a967e768d744ee
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/kudzu/+/175550
Reviewed-by: Armando Montanez <amontanez@google.com>
13 files changed
tree: 0022b724f9f09d0509a4116ea9cb3c35c725e537
  1. applications/
  2. build_overrides/
  3. lib/
  4. pcb/
  5. targets/
  6. third_party/
  7. tools/
  8. .gitignore
  9. .gitmodules
  10. .gn
  11. activate.bat
  12. banner.txt
  13. bootstrap.bat
  14. bootstrap.sh
  15. BUILD.gn
  16. BUILDCONFIG.gn
  17. OWNERS
  18. pigweed.json
  19. README.md
README.md

Kudzu

Compile:

pw build

Run:

Host

Run the host app and connect to it via pw-system-console:

./out/gn/host_device_simulator.speed_optimized/obj/applications/badge/bin/badge & \
  pw-system-console --socket-addr default \
    --proto-globs third_party/pigweed/pw_rpc/echo.proto ; \
  killall badge

Kudzu

export ELF=./out/gn/rp2040.size_optimized/obj/applications/badge/bin/badge.elf

picotool reboot -f -u && \
  sleep 3 && \
  picotool load -x $ELF

Connect with pw-system-console:

pw-system-console --verbose \
  --baudrate 115200 \
  --proto-globs third_party/pigweed/pw_rpc/echo.proto \
  --token-databases ./out/gn/rp2040.size_optimized/obj/applications/badge/bin/badge.elf \
  --device /dev/rp2040

Linux Setup

Udev Rules:

Put the following into /usr/lib/udev/rules.d/49-picoprobe.rules

# Pico app mode
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2e8a", ATTRS{idProduct}=="000a", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="2e8a", ATTRS{idProduct}=="000a", MODE:="0666", SYMLINK+="rp2040"

# RP2 Boot
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2e8a", ATTRS{idProduct}=="0003", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="2e8a", ATTRS{idProduct}=="0003", MODE:="0666", SYMLINK+="rp2040"

# Picoprobe
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2e8a", ATTRS{idProduct}=="0004", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="2e8a", ATTRS{idProduct}=="0004", MODE:="0666", SYMLINK+="picoprobe"

This will also symlink /dev/picoprobe and /dev/rp2040 to the respective vendor and product ids.

Apply the above rules with:

sudo udevadm control --reload-rules
sudo udevadm trigger