* 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
* WIP on add to save list
* Added rewriting existing lines and appending new to same file.
* format
* not looking on new file.
* Added temp list due to some issue of recent being updated during save
I was receiving a system halt and this seems to fix it. Needs more testing though.
* clang format
* Stored entries backward. Fix.
* Update file working, need to replace temp file though.
* 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
* Initial BLE Comm commit.
* SCAN_RSP MAC was reversed.
* Added Auto Channel Hop.
* Improvements to Tx to better handle timers.
* Auto channel and more work on timers.
* more advertisement numbers.
* Showing highest dB first
* Including namestring in search
* Using replace seems to work better.
* bletx cleanup
* removing pop
* pop is needed on this view.
* cleanup switching
* reduce to 1 entry list
* Setting to use the name of BLE with a toggle checkbox.
* Removed &nav reference.
* Removing const
* Fixed issue with memory being run out when switching from a previous app
* Fixed not setting updated progressbar for each new packet.
* Running simple state machine to better catch in between buffers.
* Fixed buffer size 2048 was too large for a decimated before only containing 512 (2048/4 Decimation) Bytes.
* attempt at trying to minimize uncleared str buffers
* fixed bug not fully displaying rx packet
* added sending selected packet
* setting packet count to 100 as 1 is too aggressive for speed > 2
* setting limit to 50 as 50 does not bog down UI at speed 5.
* fix tx channel getting out of sync with freq
* Added parsing for ble name added focus for ble tx play button.
* Added sort by name
* Fixed issue where we were pushing too early before pop was finished.
* Fix ordering
* Fix field location.
* truncating entries to stop memory overflow
* Added Number of Hits.
* Limiting number of hits to uint16_t, as any higher would overflow screen
* Limiting number of hits to uint16_t due to possible screen overflow.
* Stop creating a log every time app starts. Cluttering log folder.
* Cleanup of BLE Rx naming and added switching between the two.
Fixed bug in packet count not resetting when opening new file in BLE Tx
* Bug fix and color change.
* Changed some buttons name and fixed blank output if typed
* code format
---------
Co-authored-by: Gull Ra Driel <gull@NiloreaDevLaptop.home>
Co-authored-by: gullradriel <gull@nomail.net>
* 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
* Disabling frequency stepping.
* removing unused label
* Fixing something that got messed up in merge?
* removing file that got added.
* editing labels.
* Added sort functionality.
* removed unused code.
---------
Co-authored-by: jLynx <admin@jlynx.net>
* 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
* Add files via upload
* Added trim icon
* Added trim icon
* Added Trim button to FileMan
* Added Trim button to FileMan
* Added Trim button to FileMan
* Added Trim button to FileMan
* Activating TX Low Pass Filter in Second IF IC
* solving PR conversation revisions
* Final TX LPF decision for ADSB_TX
* Small comments correction.
* Added set TX LPF also in APRS, BurgerPgr,Jammer
* 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.
* Support for displaying stack on screen after a fault
* Update debug.cpp
* Highlight possible addresses on stack & support Up key
* Add small background white style
* Add small background white style
* Update debug.cpp
* Highlight fault PC in yellow
* Add bg_yellow_small style
* Add bg_yellow_small style
* Clang - trailing space
* 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>
* Use new settings in recon
* Trim on string value read, remove dupe entry
* Check update_range flag when setting values
* Add a few saved settings to scanner
* Add copywrite note
* Fixed behavior of auto update m-ranges, added min and max to sd load and save if option not used
* changing xor swap by std::swap
* Fixed consecutive green color
* Non-empty directory check
* Non-empty directory check
* Display error when attempting to delete non-empty directory
* Clang
Delete white-space that the friggin editor added
* is_empty_directory
* is_empty_directory
* is_empty_directory
* Now need to check if it's a directory first
* 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>
* 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>
* 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)
* reducing memory imprint before launching a nav
* added remove from loaded list in Recon / delete from output file in Scanner functionality
* fix initial color for filename