* Default frequency
* Default frequency
* Use sample rate from .ini file if present
* Eliminate unneeded sampling_rate variable
* Eliminate unneeded sampling_rate variable
* 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
* C8 conversion
* C8 conversion
* C8 support
* C8 support
* C8 support
* C8 support
* Don't auto-convert GPS C8 files
* C8 support
* C8 support
* C8 support
* Remove hang workaround (different PR)
* Comment change
* Clang
* Clang
* Clang
* Merged change from PR #1287
* C8 support
* C8 support
* Improve bandwidth display
* Merged minor optimization from PR 1289
* Merge change from PR 1289
* Use complex types for C8/C16 conversion
* C8 support
* C8 support
* C8 support
* C8 support
* Roll back changes
* Roll back C8 changes
* C8 support
* C8 support
* C8 support
* C8 support
* C8 support
* Don't transmit samples past EOF
* Don't transmit samples past EOF
* Clang
* Clang attempt
* Clang attempt
* C8 support
* Clang
* No need to scale progress now that widget is fixed
* Use memcpy vs byte copy, elim progress scaling, correct comments
* Minor optimization in C16->C8 conversion
* Only copy bytes actually read from file
* 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>
* Added to_string_rounded_freq function
* Added to_string_rounded_freq function
* Clang
* Clang try #2
* Use constexpr for pow10 array
* Additional string_format test cases
* Specify std=c++17 for g++ versions that default to an older standard
* Corrected string_format test cases
* Support showing invalid entries in Freqman and allow minor edits
* Use light_grey instead of grey
* Fix comment
* Fix null in description bug
* Fix spacing in delete entry dialog
* trim in delete modal
* 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
* Added fonts viewer (debug) app
* Added fonts viewer (debug) app
* Clang
* Use degree symbol vs asterisk for latitude/longitude degrees
* Save a few bytes by not overriding on_key
* Save a few bytes by not overriding on_key
* Clang
* 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>
* Generate CTCSS messages at fixed rate regardless of tone freq
* Generate CTCSS messages at fixed rate regardless of tone freq
* Function for generating CTCSS description strings
* Function for generating CTCSS description strings
* Increase width of CTCSS text to include tone freq
* Increase width of CTCSS text field to include frequency
* Use CTCSS tone freq when saving HAM freqs to freq file
* Use function in tone_key.cpp for displaying CTCSS string
* Use function in tone_key.cpp for CTCSS descr strings
* Use function in tone_key.cpp for CTCSS descr strings
* Clang test
* Clang
* Clang
* Support for reading CTCSS tones from FreqMan file
* Clang
* Clean up and eliminate floating point
* Clean up and eliminate floating point
* Corrected CTCSS field length
* Corrected CTCSS field length
* Clang
* 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
* Recon: disabling config while recording
* Capture and Spectre Painter: using freqman set bandwidth option instead of static define
* Recon: light_grey for disable so we can still see the text
* 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
* using emplace_back instead of push_back is giving better results in regards of the memory management and crashes
* we tried with all our best ideas, we don't know why it's better but it outperformed every other allocations method tested
* Cleanings and setting the limit to a working for all apps one
* fixing a guru memory errors, renaming a leftover variable
* removed unneeded set_dirty
* 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>
* fixxing bandwidth application, moved 'continuous' from config page to main page in form of a 'loop' button. Removed looking glass button as it's not configurable to position on a range/signal
* Fix initial freq when no App Settings tpms
* Default POCSAG freq when no App Settings
* Enable Scanner App Settings for Modulation/BW/Step
* Default SONDE freq when no App Settings
* 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
* fixing recon/scanner restarting while on pause and setting a manual start or end
* gui revamping, duplicated options suppressed from config menu
* recon_match_mode set at start
* finely tuned spectrum and marker precision, all modes
* hidding buttons when mode is not supported
* removing on show hide since widget implementation is buggy. Fine tuned values using signal generator to get around the corners
---------
Co-authored-by: GullCode <gullradriel@hotmail.com>
* 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>
* fixing overflow by one in ../firmware/baseband/dsp_goertzel.cpp by expanding the original array size
* fix underflow by -1 if seq is not stopping the loop
* 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 expensive way
* Add default file handling to fileman
* Remove screenshot_reader and tests
* Read data in chunks
* Format
* Fix error text position
* PR feedback
---------
Co-authored-by: kallanreed <kallanreed@outlook.com>
* changed a hardcoded value by a define, changed the order for the database clean so it happens first, changed load_freqman_file_ex so it can take a max num of freqs as a parameter with a default to FREQMAN_MAX_PER_FILE
* added a swap and a set_db to clear as much as possible before the loading of a category
* added a define for Recon max per files
* remove unneeded comment
* 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>
* simplifications, better precision, less sleeps
* fixing glitches
* fixed res freeze
* correct frequency picking for marker, yay !
* added comments into the code in hard parts
* took out unneeded sleep
Special thanks to users vmakeev, tel, f1ghy, u-foka for their resilience in testing the bunch of bins I've produced to fix the thing :-)
* WIP Move file_wrapper and make testable.
* More tests, get text_editor compiling
* Back to working
* Run formatter
---------
Co-authored-by: kallanreed <kallanreed@outlook.com>
Remove clkin_detect_init() from cpu_clock_init() mirroring upstream change from the hackrf repo
Co-authored-by: Eisenberger Tamas <e.tamas@iwstudio.hu>