resolve#2649
> Updated the reverse loop in AnimFly::Run to cast numLeds to a signed type, preventing an endless loop when shifting LEDs backward
resolve#2650
> Revised the pixel cache update in ColorWave::move to iterate with size_t and decrement safely
copilot is either afraid that numLeds is zero or it is <2
which is theoretically possible, but very unlikely w/ neopixel setups
continue refactoring of sensors using multiple read entities
allow to have separate readings in either form
- global voltage & frequency only
- global & channel a only
- global & channel b only
- global & channel a & channel b (default)
still, prone to ordering errors. driver code might need a separate loop
to allow more flexible processing, outside of 'sensor' method constraints
(also note that I have no idea if it actually works on a real device)
remove inconsistent i2c_{read,write}_uint, improve buffer variant instead
ade7953sensor explicitly counting variable length ints
brzo currently is in a persistent todo-list
- there is no runtime configuration of i2c pins
- api does not support cached writes, only repeated start
- api is quite different from the 'Wire' implementation
(albeit, whole implementation is much smaller)
- code would really benefit from cxx rewrite, as any
upside from asm use is generally offset by readability
plus, re-using memory locations already introduces
'unobvious' asm code, which is not visible w/o disasm
- code focuses on gcc4.x compatibility and breaks w/ gcc9.x+
register allocation *could* be fixed by using u16 temporaries
this seems to work ok'ish, but it is unclear whether there
is any need for the full u32 value space
count every param that was not already handled internally
allow terminal handler to process "line=..." w/ put handler
impl todo and iterate over all available "line=..."s
in case there are any unquotable or binary sources
SCRIPT is an odd one per the spec, ignore type=...
as it is describing how minification & bundling is done
- experimental vite dev server support
- gulp webui_build & webui_PRESET -> build
- gulp task params for build and dev server
- bundle sources using rollup in both gulp and vite
- PRESET lib to manage available modules and their constants
replacing 'define' method of .js code treeshaking