edgetx icon indicating copy to clipboard operation
edgetx copied to clipboard

[WIP] ELDB: Debugger for EdgeTX Lua software

Open voltangle opened this issue 2 years ago • 0 comments

This PR introduces support for debugging Lua software on EdgeTX radios.

Terminology:

  • ELDP: (E)dgeTX (L)ua (D)ebugger (P)rotocol
  • ELDB: (E)dgeTX (Lua) (D)e(b)ugger
  • etxdb: ELDB client
  • Client: Basically etxdb
  • Host: radio or simulator - the one where the debugger is running

The whole debug process is fairly simple, you connect your radio, select USB Data (formerly USB Serial) in the USB mode selector, and then use etxdb to switch it to ELDB mode (used for actually exchanging data between debugger client and host)

This PR can be marked as the first step to modern EdgeTX Lua development.

Tasks:

  • [x] ELDP USB Data mode
  • [x] ELDP .proto definition
  • [ ] ELDB Debugging session
  • [x] ELDB Communication
  • [ ] etxdb CLI
  • [x] etxdb Communication
  • [x] USB Serial rename to USB Data

Notes:

  1. ELDB support for the Simulator will come in a different PR
  2. File upload support using the debugger is also for a different PR
  3. Lua allocation tracer will be integrated into ELDB, again, in a future PR

voltangle avatar Mar 27 '23 21:03 voltangle