Repository navigation
Fast Lua tools (20 ms)
Pre-release
Pre-release
·
0 commits
to 726974f8291088dd41aca0788ac3d99e6fa4cd11
since this release
Fast Lua tools: color radio firmware
Made for StickTime, the FPV sim that runs
on your radio, but every Lua tool gets faster. In the zip, flash the file named after
your radio the usual way (bootloader or EdgeTX Buddy).
EdgeTX main plus faster Lua tools (SYS > Tools), from branch fast-lua-20ms:
- while a Lua tool is open, the UI loop runs every 20 ms instead of 50 ms and each
frame goes to the screen as soon as the tool has drawn it - new: a full screen tool's frames go straight to the display instead of being
copied into LVGL's frame buffers first: three frames in turn (one on the display,
one waiting for the display's next refresh, one being drawn), so on most radios the
tool doesn't wait for the display either. On the radios with a screen mounted upside down
(TX16S, T16, X10, X10 Express, H17, older F16) the frame is turned around straight
into the display's buffer, one pass instead of three. EdgeTX's own screens (a
dialog, a message, an error) take over the display whenever they need it - new: large fills (
lcd.clear(), big rectangles) go through DMA2D instead of
the CPU - the tool's solid lines, rectangles and filled triangles go straight into its
canvas instead of through one LVGL canvas call each, and the H7 radios no longer
flush the whole data cache on every lcd.drawLine - the tool gets
TOOL_RUN_USandTOOL_SHOW_US: how long its last run() and
putting that frame on the screen took - STM32H750 radios (targets tx16smk3, tx15, gx15, t15pro, t15h7, t22, pa01, st16,
c14, h17, v12, v15): the Lua interpreter and the drawing code behind it run from
ITCM instead of from SDRAM through the instruction cache - HelloRadioSky V12 and Flysky PA01 (SPI screens): frames go to the display in the
background (started at the display's vertical blank); the PA01 is untested so far - new: V12: the DMA reads two pixels at a time, so a frame goes out in 13 ms,
within one refresh of the V12's 74 Hz panel: Lua tools reach 50 fps (before, every
frame took two refreshes: 37-42 fps). V12 and PA01: no more transfers dropped a few
times a second (a clock read with interrupts off looked like a timeout)
With no tool open the radio runs like stock main (the V12's and PA01's background
display transfer is always on). SYS > Version shows -fastlua.
Commit: 025e1a3
Built: 2026-10-12 19:22:23 UTC
These are test builds of a development branch: back up your SD card first.
fast-lua is my fork of EdgeTX, and EdgeTX itself takes donations on Open Collective. If you like it, you can buy me a coffee on Ko-fi.