* Added support for extracting firmware from TAR file (with apps)
* Added tar to usb cdc firmware command.
* Serial flash tar
* Show error on bad tar
* Check tar for valid filenames
- Recon repeat delay, range: from 0s to 254s, timer is played before each TX
- fixed missing '<' '>' around button names for DELETE and REMOVE name to indicate that they can also be used to skip in the list
- added missing pmem recon dump entries
* UI for Recon Repeater config
* persistent recon repeat settings
* record_view: added possibility to force keep the provided record filename
* working auto record to same file
* Recon TX
* added Repeater type
* adding yellow coloring on Repeater config+a modal, comments in the code
* default repeater values
* Initial commit - wip
* Half part of the transition of baseband processor.
* More SGD
* WIP, Weather refactor, UI improv
* Rename
* Added 4msps, and fixes
* Fixes
* princeton working
* Renamed proc_weather, bc now multifunctional
* Proto: bett
* FPS_CAME = 4,
FPS_PRASTEL = 5,
FPS_AIRFORCE = 6,
* Came Atomo, fixes
* Separate weather and sgd, bc of baseband size limit
* Fix display
* Save space
* More protos
* Dooya proto added
* More protos
* add protos
* More protos
* Move weather to ext app
* nw
* Revert "Move weather to ext app"
This reverts commit 8a84aac2f5.
* revert
* Fix merge
* Better naming
* More protos
* More protos
* Add protos
* Fix warning
* Add NeroRadio
* more protos
* more protos
* More protos
* Shrink a bit
* fixes
* More protos
* Nicer code
* Fix naming
* Fix format
* Remove unused
* Fix some protos, that needs a LOOOONG part with the same lo/high
* Modify key calculation
* support for a sdcard speed option
* trying to link sdio_cclk_set from file
* changed io to IO in checkbox text
* changed order so high speed option is read after pmem is restored from sd
* test button
* took out unneeded comment
* force behavior of test button
---------
Co-authored-by: GullCode <gullradriel@hotmail.com>
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Clang
* Clang
* Tweak position of field on screen
* Reverted text on Write button per reviewer feedback
* First BLE work
* Adding new fsk proc WIP
* Reverting ble stuff
* Initial compile working
* more work.
* Adding waterfall for debug
* more edits to debug
* Work to get widgets to show.
* cleanup before attempting diff fsk modulation method
* Temporary debug to learn how decimation scales.
* Tab view for console and spectrum. Spectrum still not working right.
* Fixed spectrum offset.
* Added audio sampling rate increments to freqman
* Added overriding range for frequency field and working off deviation
* BLE cleanup. Got PDU parsing.
* Parsing CRC
* forgot :
* Removing AA again because cluttering UI
* fix compile
* attempt at throttling.
* WIP changes.
* Decimating by 4 to handle issue with overloading.
* Attempt to parse MAC still needs work.
* Small fixes. MAC still wrong.
* Fixed invalid indexing on Symbols.
* List view of BLE Mac Addresses
* Added Channel Option and improved GUI header.
* renaming to dB and fixing some warnings.
* Advertisements only.
* Initial cut of BLE Advertisement scan app.
* Copyrights
* formatting correctly in association to clang13
* Fixing warning and hiding fsk rx.
* spacing
* Removing some cmake install files that weren't suppose to be there.
* missed some.
* Added name to about.
* Edits for PR review pt.1
* Refactor ORing with 0 doesn't make sense.
* remove parenthesis
* More PR Review changes.
* Fix compiler error.
* PR Review edits.
* PR review changes.
* Fixes.
* Unneeded ;
* Update ui_about_simple.cpp
---------
Co-authored-by: jLynx <admin@jlynx.net>
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Alpha order sub-menus
* WIP Getting Remote types outlined
* WIP building UI
* WIP adding RemoteButton control
* WIP Fix build
* WIP Basic editing support
* Border on the active button
* Make TxView2 sane
* Add easier RGB color creation from uint32
* Center some button icons
* WIP Remote - main UI
* WIP main UI mostly working, can send
* Add 'join' utility
* WIP save/load
* Pre-alloc buttons to prevent focus dangling
* Alpha order settings/debug pages
* Add UI for picking capture and set frequency
* WIP Getting really close now
* Fix path for init name
* Some fit & finish
* Force console scroll area to be multiple of line height. Tons of comments.
* Resize POCSAG console to fill height.
* Make scoll behavior comment clearer
* WIP Refactoring
* WordExtractor building
* Fix buffer sizes and squelch execute
* Move impls to cpp file
* Baud indicator
* WIP new bit extractor
* New approach for bit extraction.
* Code fit and finish
* Fix case on button
* Cleanup
* Adjust rate miss threshold
* Fix count bits error calculation.
* Advanced draft decim /4 just waterfall ok
* apply some Kall's corrections + formatting
* Tidy up both decim_factors
* New refine optimizations
* Format issues
* more format issues ...mmmm
* comments update
* WIP Cleanup
* WIP
* WIP - add variant
* Use std::visit to dispatch MultiDecimator -- fluent API
* Clean up comments
* Merge next and fix compilation
* Fix odd loop in BlockDecimator
* Clean up spectrum math
* Descibe spectrum update math better, more clear math.
* Apply spectrum interval correction at 1.5M
* Increase replay buffer to handle x4 ovs
---------
Co-authored-by: Brumi-2021 <ea3hqj@gmail.com>
* Reset color for well-formed message fragments
* better colors
* Fix POGSAG decode state machine
* Invert is_message to make more clear
* Use new escape string constants
* Run ECC twice, better diagnostics
* center status icon
---------
Co-authored-by: kallanreed <kallanreed@noreply.github.com>
* Color strings
* Color strings
* Color strings
* Color strings
* Color strings
* Color strings & fix first group scrolling off screen
* Color strings
* Color strings
* Clang
* Clang
* Clang attempt #3
* Update ui_painter.cpp
* Update ui_widget.cpp
* Clang test
* Clang
* Clang test
* Update ui_about_simple.cpp
* Update lge_app.cpp
* Set bandwidth_filter in pogsac
* WIP pocsag UI revamp
* Settings UI, better console, UI Revamp
* Add baud rate to error messages
* Reset last_addr in error cases
* Show malformed messages as different color vs hiding
* Use light grey to indicate low quality decode
---------
Co-authored-by: kallanreed <kallanreed@noreply.github.com>
* Attempt to fix Capture startup hang
* Pump baseband_queue on M4 startup
* Synchronization experiment
* Moved SpectrumCapture member, better hang detection for M0
* Prevent execute from working on members until class has been initialized.
* Formatting
* Remove workaround.
* Rebase on next
* WIP new edit UI
* Fix textfield highlight
* WIP new edit
* Wrap up first pass of freqman edit
* Fix indexing of options
---------
Co-authored-by: kallanreed <kallanreed@noreply.github.com>
* FreqmanDB direct file
* Clear UI for short lists
* Final touches on freqlist UI.
* Support vertical alignment in NewButton
* New buttons in FreqMan
* Wiring up UI to filewrapper actions
* Work around empty file
* WIP freqman changes/memory perf/stash
* Split ui tone_key function out for testing.
* Add more tests and fix bugs.
* Use default max_entries in recond
* Set limit back to 90 for now
* Use filesystem::path type vs string for BMP file name
* Use filesystem::path type vs string for BMP files
* Use a global const file path string for "/splash.bmp"
* Support for viewing BMP files and setting as Splash screen
* Support for viewing BMP files and setting as Splash screen
* Support for viewing BMP files and setting as Splash screen
* Update ui_ss_viewer.cpp
* Update ui_ss_viewer.hpp
* WIP RadioState init
* TX/RX cleanup
* Update all apps using RadioState and setting modulation mode
* Set apps to use AM mode
* Don't push modulation update in RadioState.
* Support passing overrides to Audio and MicTX
* Support set_nearest on OptionsField, fix recon step
* Fix audio, typo
---------
Co-authored-by: kallanreed <kylereed@manzana.lan>
Co-authored-by: kallanreed <kallanreed@noreply.github.com>
* Added fn to indicate support for disabling speaker
* Support both mute & speaker disable icons
* Byte grouping for ui_config2_t bitmap
* Fix disabling AK speaker to take effect immediately
* Orange icons vs yellow
* Update app icon colors per current development states
* Darken bright icons on white backgrounds
* Darken bright icons on white backgrounds
* added auto record checbox and functions (audio and raw)
* Changed baseband compile option from -O3 to -O2. Trying lower gave unexpeted and crashing results.
* added 650k SPEC bw
* fix hang if wait is -100
* fixing no SPEC support in scanner
* Don't disable DAC when other audio output is using it
* Persistent audio mute revisions
* Moved persistent audio mute code to audio.cpp
* Make "Disable AK speaker amp" take effect immediately
* Set rf direction in RadioState
* centralize cpld load for TX->RX
* Remove calls to load_sram from all apps
* re-add CPLD hack, don't set radio values directly.
---------
Co-authored-by: kallanreed <kallanreed@noreply.github.com>
* add a little Stash utility.
* add radio state RAII helper.
* first part of radio_state changes
* add radio_state_ to rest of apps
* fix freq_step and format
* fix unused ui_sigfrx: corrected sample rate, added back freq setting
* Allow apps to not use persisted freq.
* use rx_freq for RX mode
* remove direct call to persistant_memory in tx_model
* app_setting defaults, and tx_view to use ctor value
* GCC12 related fixes but still compiles on GCC9
* Suppress warnings about volatile +=
* Enable c++20 if supported by the compiler
On gcc12 we need to use -std=c++20 since constexpr .c_str() on std::string is only officially available since c++20 and the new gcc wouldnt let us use it with older standard
* code format
---------
Co-authored-by: Eisenberger Tamas <e.tamas@iwstudio.hu>
* fix pmem -> make backup_ram_t data members volatile
plus add calculated crc to the pmem debug screen
* rename pmem debug menu to p.mem
As this is how its refered to in the wiki and other screens
* p.mem looked strange with capital P
---------
Co-authored-by: Eisenberger Tamas <e.tamas@iwstudio.hu>
* reset config when holding down select durring boot
it still need to be tripple checked if adc or control init really doesnt use any pmem
* one less magic number :)
* dual key action left+right for pmem reset
---------
Co-authored-by: Eisenberger Tamas <e.tamas@iwstudio.hu>
* Consolidate styles into a Styles class and clean up code
* Format
* Add style_bg_dark_grey for nav bar
* Fix bugs found in PR
* Rename styles
* Add bg_white style
---------
Co-authored-by: kallanreed <kallanreed@outlook.com>
Co-authored-by: gullradriel <3157857+gullradriel@users.noreply.github.com>
* Put WFM bandwidth options in ascending order
* Put WFM bandwidth options in ascending order
* Put WFM bandwidth options in ascending order
* Put WFM bandwidth options in ascending order
* Put WFM bandwidth options in ascending order
* Clang formatting attempt
* OptionsField wrapping - for your consideration
Perhaps if OptionsWidget supported wrapping, then it would be easier to dial through all available options without having to know which direction to turn the dial.
* moved pmem setting restore before top bar is loaded
* added a check pmem from sdcard function, replaced occurences, added a save to file on back button
* Added defines for flag file and dump file, changed test func name to should_use_sdcard_for_pmem, used file_exists, removed save and load pmem parameter
* changed a text to a more comprehesible one
* WIP file editing
* WIP file editing
* Add "on_pop" handler to navigation.
* WIP Editing
* WIP for draft
* Fix mock and unit tests, support +newline at end.
* Clean up Painter API and use string_view
* Fix optional rvalue functions
* Fix Result 'take' to be more standard
* FileWrapper stack buffer reads
* Grasping at straws
* Nit
* Move set_on_pop impl to cpp
* Workaround "Open" when file not dirty.
---------
Co-authored-by: kallanreed <kallanreed@outlook.com>
* Support for 3 levels of rotary encoder sensitivity #965
Backend support; UI will still need to call set function to configure.
* Support for 3 levels of rotary encoder sensitivity #965
Backend support only. UI will still need to be changed to call the set_sensitivity() function to configure.
* Removed trailing space
* Deleted blank lines to see if format checker will be happier
* Simpler support for multiple levels of encoder sensitivity, for issue #965
Removed the convoluted code :-) and instead just using a 2-dimensional array to choose which transition map to use. For now I only have 2 (vs 3) levels enabled as well, to save code space and because high-sensitivity is very touchy.
* Simpler version of configurable encoder sensitivity, issue #965
* Formatting
* Formatting test for Clang
* Formatting test
* Formatting (removed helpful comment)
* Formatting test (remove commented-out code)
* Formatting & swapping medium/low so default mode=0
* Swapped medium/low so default mode=0
* Adding UI & PMEM support to make encoder dial sensitivity configurable, issue #965
* Adding UI & PMEM support to make encoder dial sensitivity configurable, issue #965
* Adding UI & PMEM support to make encoder dial sensitivity configurable, issue #965
* Adding UI & PMEM support to make encoder dial sensitivity configurable, issue #965
* Adding UI & PMEM support to make encoder dial sensitivity configurable, issue #965
* Adding UI & PMEM support to make encoder dial sensitivity configurable, issue #965
* Removed unneeded range check (trusting in pmem checksum)
* easier 'now', start adding text editor
* Adding scrolling to notepad
* Better scrolling
* Better scrolling, off-by-1 bugs
* MVP fit and finish
* Add tiny font and use in Notepad
* Font tweaking, tiny font cursor
* Fix warning
* Format changed files
* WIP No file limit
* WIP - adding CircularBuffer type
* WIP Caching
* add unit test for circular_buffer
* WIP still have a bug when moving cache forward
* Finish lazy line caching
---------
Co-authored-by: kallanreed <kallanreed@outlook.com>
* fix units for frequency offset. It was planned to be a uint32_t since a uint16_t is obviously too short
* took the uint32_t limitation for frequency offset in account
* easier 'now', start adding text editor
* Adding scrolling to notepad
* Better scrolling
* Better scrolling, off-by-1 bugs
* MVP fit and finish
* Add tiny font and use in Notepad
* Font tweaking, tiny font cursor
* Fix warning
* Format changed files
---------
Co-authored-by: kallanreed <kallanreed@outlook.com>
-Enhanced frequency file reading:
Correctly read freq files that contain a mix of SINGLE and RANGE or HAM_RADIO types (strstr in file processing was ignoring EOL and was therefore finding the f= on the next line). Also changed to simply ignore blank or unrecognized lines versus adding them as SIMPLE entries to freq table.
This allow comments and white line in freqman files.
-Fixed "can_loop" option in NumberField:
When NumberField range.first was non-zero, and can_loop was true, turning the encoder dial in the downward direction did not result in numbers looping back to range.second as was expected. This fix allows looping in downward direction in the case where range.first is non-zero.
Fixed issue with temperature & pressure values for OOK-8400-Schrader TPMS sensor type 5 (temperature & pressure were swapped and using wrong conversion ratio). Tested fix against 14 sensors of this type.