v2.7.0
This release is for the Waveshare ESP32-S3-RGB-Matrix board driving a 128x64 HUB75 panel, the only board I have tested it on.
The main thing is that Lua effects can now show real 3D on the panel itself, not only in the simulator on a computer.
- px.terrain draws ground that goes into the distance in one call: a height map seen from a camera, lit by the sun, with a pattern for each kind of ground, water that shows the sky, and haze. It runs in the firmware, many times faster than the same thing written in Lua, so the camera can fly over a landscape at the frame rate.
- px.save and px.restore keep a copy of the picture and put it back. A still scene is drawn once, and after that each frame only draws what moves. The first effect that uses both went from 6-12 to about 14 frames a second.
- A script can now be as big as it needs, up to 512 KB, limited only by the free space on the panel. It used to be 50 KB.
- The letter Й was drawn so that it read as А in both fonts. It reads as Й now.
- The native helpers count their work against the frame's time budget, so a broken script cannot hang the panel.
There are two new screens in the gallery that need this firmware: golf in 3D on two real courses, the Old Course at Cannes-Mandelieu and the Pestovo golf club near Moscow. Two players play all eighteen holes in four minutes, with a flyover of every hole, the tee shot from behind the player with the ball's tracer, the play from above with a plan of the hole in the corner, and the last putt with the crowd. The Old Course is built from OpenStreetMap data, so its holes, bunkers, water and woods are where they really are.
Install: for a new board, use the web flasher at https://nickoscope.github.io/AnimatedPixelClock/ or write firmware-v2.7.0-waveshare.bin at 0x0. For a board that is already running, upload OTA_ONLY_firmware-v2.7.0-waveshare.bin on the portal's firmware update page, or let the tools in tools/agent do it. Do not upload the full image as an update. The Windows PC stats companion is pc_stats_monitor_v4.exe. SHA256SUMS.txt has the checksums.