'capture' with any argument (tinySA-App sends 'capture rle') sends the
screen in the NanoVNA-D (DiSlord) RLE8 format: "BM", width, height,
bpp 8, compression 1, the palette, then per row the PackBits packed
palette indices. Plain 'capture' still sends raw RGB565.
The palette holds all colours the tinySA draws, so the screen is read
once: the LCD palette, the waterfall colours and the trace colours ORed
over each other and over the colours drawn before them in draw_cell().
The image viewer and the display test set capture_verify, as does a
colour not in the palette: the next capture then reads the screen twice
to add its colours, or sends raw when there are more than 256.
The screen is now read as one DMA stream (ili9341_read_memory_start /
next / end) so the next row is read while the current one is packed or
sent. Tested on HW V0.4.5.1, pixel exact against raw on normal, 4 trace,
waterfall, menu and keypad screens:
- capture rle: about 28 KB, 253 ms (was 482 ms raw)
- capture: 345 ms (was 482 ms)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
STORAGE -> UPDATE FIRMWARE installs a firmware .bin from the SD card.
The shell command "fwupdate {file}" checks a file, "fwupdate {file} flash"
installs it. Config, calibration and presets (0x0803C000 and up) are never
touched; ROM DFU (jog held at power-on) stays the recovery.
- Image format: STM32F303xC.ld inlines the code rules to place a header
(magic, model, size, version) directly after the vector table and a
trailer (end magic, size, CRC field left unset) at the end of the image.
Only images with the header are accepted.
- Before anything is erased, the running firmware reads the whole file with
FatFs (page CRCs, image CRC, card sector map from FIL.clust) and reads it
again with the raw sector reader used by the update (dry run).
- The flasher runs from CCM RAM with interrupts off and VTOR in CCM. It keeps
page 0 in RAM, erases page 0 first and programs it last after a full image
CRC check, skips unchanged pages, retries errors without user input and
initializes the SD card again after it was removed or keeps failing.
It draws a progress bar and resets only after jog is released, because
jog pressed at reset starts the ROM bootloader.
added run "file.name" console command, only for in cmd file
added AUTO SAVE to trigger menu
added wait {seconds} console command
added 3rd waterfall size
commit d9f1514b26
Merge: 61480136210a57
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sun Dec 11 13:54:00 2022 +0300
Merge branch 'DiSlord_browser' of https://github.com/erikkaashoek/tinySA into DiSlord_browser
commit 6148013c54
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sun Dec 11 13:53:42 2022 +0300
Rewrite progress bar update/remove dead code/use buffering in cmd_scanraw
cmd_vbat now run in sweep thread
commit 6210a57304
Author: erikkaashoek <erik@kaashoek.com>
Date: Fri Dec 9 12:06:01 2022 +0100
Level error + above 4.4GHz
commit 63a26eb112
Author: DiSlord Live <dislordlive@gmail.com>
Date: Wed Dec 7 18:59:45 2022 +0300
Less code size and remove variable
commit e46a7423ee
Author: erikkaashoek <erik@kaashoek.com>
Date: Mon Dec 5 10:36:20 2022 +0100
Fix keyboard
commit 519af36d93
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 21:49:32 2022 +0300
Add Enter button
commit a1eeae37f3
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 21:49:05 2022 +0300
Not need clear text
commit 1d9c85c7c3
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 20:04:37 2022 +0300
Replace
commit 400175ed48
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 19:57:16 2022 +0300
Fix
commit dc01db6e8a
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 19:52:11 2022 +0300
Add lcd_set_font function
Allow lcd_printf print by selected font
Fix text position in browser
commit bb860080de
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 17:53:47 2022 +0300
Add SWEEP_UI_MODE flag for console command
This allow run command if active thread in UI mode
commit 31e4d72a46
Merge: 18b4b94f832809
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 16:15:39 2022 +0300
Merge branch 'DiSlord_browser' of https://github.com/erikkaashoek/tinySA into DiSlord_browser
commit f8328093f1
Author: erikkaashoek <erik@kaashoek.com>
Date: Sat Dec 3 13:16:53 2022 +0100
Removed compile warnings on 072
commit 18b4b94875
Merge: 80dfb6ed99d679
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 15:05:50 2022 +0300
Merge branch 'V4.3' of https://github.com/erikkaashoek/tinySA into DiSlord_browser
commit 80dfb6e6bc
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 14:01:05 2022 +0300
Fix warnings
commit a61de95423
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 13:51:47 2022 +0300
Fix f072 compile
commit 467f300b3d
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 12:50:26 2022 +0300
Add *.cmd files browse and execute
Added some useful functions
commit f2752f1200
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 12:48:52 2022 +0300
Fix clean frequency area
commit ab35aadde3
Merge: 6fcdc8b68a5114
Author: erikkaashoek <erik@kaashoek.com>
Date: Sat Dec 3 09:59:06 2022 +0100
Merge branch 'DiSlord_browser' of https://github.com/erikkaashoek/tinySA into DiSlord_browser
commit 6fcdc8b7af
Author: erikkaashoek <erik@kaashoek.com>
Date: Sat Dec 3 09:56:58 2022 +0100
UI updated with STORAGE menu
commit 68a5114048
Merge: fae9a43afb59b8
Author: DiSlord Live <dislordlive@gmail.com>
Date: Sat Dec 3 11:22:42 2022 +0300
Merge branch 'V4.3' of https://github.com/erikkaashoek/tinySA into DiSlord_browser
commit fae9a43825
Merge: ba7a3dc768ecf0
Author: DiSlord Live <dislordlive@gmail.com>
Date: Fri Dec 2 18:23:14 2022 +0300
Merge branch 'DiSlord_browser' of https://github.com/erikkaashoek/tinySA into DiSlord_browser
# Conflicts:
# ui.c
commit ba7a3dc941
Author: DiSlord Live <dislordlive@gmail.com>
Date: Fri Dec 2 18:19:11 2022 +0300
Add autofilename option
Ask for filename on save
commit 0c0ac98140
Author: DiSlord Live <dislordlive@gmail.com>
Date: Fri Dec 2 18:17:48 2022 +0300
Add Enter symbol
Update fonts
commit 768ecf01ca
Author: erikkaashoek <erik@kaashoek.com>
Date: Fri Dec 2 08:20:25 2022 +0100
Old compiler can't use "string"[0]
commit c4563d6efc
Author: DiSlord Live <dislordlive@gmail.com>
Date: Thu Dec 1 23:56:06 2022 +0300
Keyboard size and position definition
commit e63db4f2df
Author: DiSlord Live <dislordlive@gmail.com>
Date: Thu Dec 1 23:55:32 2022 +0300
Refactoring keyboard code, prepare for text input keyboard
commit 597b4e300f
Merge: c43b8c17b602fc
Author: erikkaashoek <erik@kaashoek.com>
Date: Thu Dec 1 09:53:05 2022 +0100
Merge branch 'V4.3' into DiSlord_browser
commit c43b8c1005
Author: erikkaashoek <erik@kaashoek.com>
Date: Thu Dec 1 09:23:27 2022 +0100
Added preset load/store SD card
commit a0b0351a7e
Author: DiSlord Live <dislordlive@gmail.com>
Date: Wed Nov 30 23:03:04 2022 +0300
Disable battery and cal state update in browser mode
commit 9b3d077942
Author: DiSlord Live <dislordlive@gmail.com>
Date: Wed Nov 30 22:56:55 2022 +0300
Use big font for browser
commit 01e87fc27b
Author: DiSlord Live <dislordlive@gmail.com>
Date: Wed Nov 30 22:24:40 2022 +0300
Add browser option
commit be63b81b1b
Merge: 5d22b2f1543296
Author: DiSlord Live <dislordlive@gmail.com>
Date: Wed Nov 30 21:19:45 2022 +0300
Merge branch 'DiSlord_browser' of https://github.com/erikkaashoek/tinySA into DiSlord_browser
commit 5d22b2fcce
Author: DiSlord Live <dislordlive@gmail.com>
Date: Wed Nov 30 21:18:39 2022 +0300
Add dump firmware option
commit 154329698d
Merge: d31a599b9b9ea1
Author: erikkaashoek <erik@kaashoek.com>
Date: Wed Nov 30 19:17:58 2022 +0100
Merge pull request #42 from erikkaashoek/V4.3
Add c and h commands
commit d31a599b1d
Author: DiSlord Live <dislordlive@gmail.com>
Date: Wed Nov 30 21:17:36 2022 +0300
Fix typo
commit 517428bd01
Author: DiSlord Live <dislordlive@gmail.com>
Date: Wed Nov 30 20:43:38 2022 +0300
Allow read/write more then one sector (512 bytes) in one time
commit 84342fbd43
Author: DiSlord Live <dislordlive@gmail.com>
Date: Wed Nov 30 20:28:37 2022 +0300
Update save to card part