* store/send mic audio with toggle
* script to extract audio from logs
* change description and add translation placeholders
* microphone icon
* apply toggle in loggerd
* add legnth and counter
* startFrameIdx counter
* Revert "change description and add translation placeholders"
This reverts commit 7baa1f6de99c6ebe9f9906193da7e83dad79511a.
* send mic data first and then calc
* restore changed description/icon after revert
* adjust fft samples to keep old time window
* remove extract_audio.py since audio is now stored in qcam isntead of rlog
* qt microphone recording icon
* Revert "remove extract_audio.py since audio is now stored in qcam isntead of rlog"
This reverts commit 7a3a75bd8db5376d1e442a3ba931c67550b5f132.
* move extract_audio script and output file by default
* remove length field
* recording indicator swaps sides based on lhd/rhd
* use record icon from comma body
* Update toggle description
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* update raylib toggle desc cause I did earlier
* microphone --> soundPressure, audioData --> rawAudioData
* cleanup unused var
* update README
* sidebar mic indicator instead of annotated camera
* improve logic readability
* remove startFrameIdx and sequenceNum
* use Q_PROPERTY/setProperty so that update() is actually called on value change
* specify old id for SoundPressure
* fix typo
---------
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* Add Sunnylink integration for improved device communication
This commit introduces Sunnylink support, including modules for API interactions, device registration, logging, and uploader processes. Key changes involve adding Sunnylink-related components, such as sunnylinkd, manage_sunnylinkd, and associated utilities, along with seamless integration into process management.
* Refactor Sunnylink modules and update import paths
Standardize parameter handling in Sunnylink functions by initializing Params within functions as needed. Update imports to use fully-qualified paths for better clarity and consistency. Also, refactor logging messages for improved readability and maintainability.
* Add Sunnylink support and improve log handling
Introduced Sunnylink-specific functionality, including compression for oversized logs and platform-specific socket handling for macOS. Improved logging mechanisms, refactored log queue management, and fixed exception handling in sunnylinkd.
* Refactor and fix minor coding style inconsistencies
Remove unnecessary string concatenation, adjust spacing for better readability, and ensure cleaner code in `athenad.py` and `sunnylink.py`. Added a macOS-specific comment for TCP_KEEPALIVE configuration to improve code clarity.
* Replace platform system check with sys platform in athenad.py
To check for macOS platform, the code in athenad.py has been altered. Originally, the platform.system() function was used. However, the function has been replaced with sys.platform for a more consistent and preferable syntax. Particularly, this has been modified in the context of setting socket options.
* Apply suggestions from code review
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* Simplify imports and reformat API function.
Removed unused `platform` import for cleanup in `athenad.py`. Improved readability of `api_get` in `__init__.py` by reformatting the long return statement into multiple lines.
* Adjust backoff logic and refactor API call formatting.
Introduce randomness to backoff calculation in Sunnylink API to reduce synchronization issues. Minor code refactoring improves readability in the API call logic.
* Refactor Sunnylink network check logic.
Removed hardware-based network check due to performance concerns and replaced it with a real-time device state monitoring loop. This improves efficiency and ensures accurate online status before proceeding with Sunnylink registration.
* Apply suggestions from code review
* `Refactor saveParams error handling and simplify logic`
Removed redundant try-except block wrapping the entire method for clarity. Moved error logging directly inside the loop to handle individual parameter exceptions more effectively. Simplified dictionary construction and improved error logging format.
* Add BACKUP flag to select persistent parameters
This commit introduces a new BACKUP flag and applies it to specific persistent parameters in `params.cc` and `params.h`. The BACKUP flag enhances data retention by designating parameters for inclusion in backups, ensuring crucial information is preserved across sessions.
* Simplify Sunnypilot params formatting
Removed unnecessary blank lines and adjusted the Sunnypilot comment format for better readability and consistency. No functional changes were made.
* SP: Move Sunnypilot-related code to sunnypilot/sunnylink (#504)
* Refactor and relocate sunnylink-related modules
sunnylink components have been reorganized for better modularity and clarity, with files moved under `sunnypilot/sunnylink`. Unused code was removed, and reusable utilities were separated for easier maintenance. Adjusted references across the project to reflect these changes.
* Permissions
* adding init py
* Add sunnylink toggle to developer panel and translations
This commit introduces a new toggle for enabling or disabling sunnylink in the developer panel. Corresponding translation entries have been added for all supported languages to ensure compatibility across the UI.
* Add SunnyLink integration and multi-language support updates
Enhanced SidebarSP with SunnyLink connection status and temperature display. Extended translations for multiple languages, including new strings. Updated build scripts and added utility functions for SunnyPilot-specific features.
* Need it this way as it's intentionally shortened. Sorry
* format
* only block drawing
* format
* format
* fix path
* cleanup translations
* sunnylink panel
* offroad transition
* remove stretch
* add panel to ui preview
* Translating to spanish
* just reorder params
* Refactor sidebar drawing method names and remove unused code.
Renamed `paintSidebar` to `drawSidebar` for better clarity across both `Sidebar` and `SidebarSP` classes. Removed unused utility functions `drawRoundedRect` and `interpColor` to streamline the codebase and improve maintainability.
* Updating translations
---------
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
* add sp flag
* return if sp macro
* controls
* drive stats
* some more
* more
* skip the whole thing
* missed
* more
* more main
* not ready to push yet but sure
* get them icons
* later
* own icons
* Revert "own icons"
This reverts commit e07bd8e670.
* blank icon
* render differently on mac
* static
* set toggle and title space properly
* format
* remove prior objects
* good spacing for ButtonParamControlSP
* more space formatting
* on device fix
* update home wifi prompt
* handle AbstractControlSP_SELECTOR hide events properly
* use sp
* ignore name
* more
* keep spacing
* better flag
* settings button moved
* small cleanup
* move files to sp dir
* remove for now
* developer different icon
* add scrolling to ui test
* Revert "add scrolling to ui test"
This reverts commit c8d1c65d89.
* format
* make them virtual
* do we still need this?
* Apply suggestions from code review
Co-authored-by: DevTekVE <devtekve@gmail.com>
* revert for now
* shorter license
---------
Co-authored-by: DevTekVE <devtekve@gmail.com>
* draft
* draft
* before qpushbutton
* icon, clean up button, clicked goes to toggles
* fix icon
* add imgs
* img
* make square
* works with layouts!
* fix gradient
* this looks good
* clean up
* clean up
* remove padding around couch
* use scene's experimental_model, new onroad design
* rename widget
* def want 3
* update translations
* add img
* add 25px of padding!
* make 300px (no change)
* clean up old images
* 5 px smaller
* add white img
* fix from merge
* no style sheets
* see how this looks on device
* aliased vertical line (clean up)
* clean up
* imgs
* couch
* delete
* bye bye
* expand toggle support
* clean up
* fix dynamic icon
* make exp icon dynamic
* order
* move to offroad
old-commit-hash: 58b84fb401
* Add Chinese translations
* wrap these
* add to languages.json
* fix tests
* use tmp dir for tests (doesn't change translation files in git repo)
* defaultdict not used
* update main_zh.ts (test outdated QM file)
* test outdated QM file (prev commit tests missing)
* update qm file
* add sidebar translations
* no need for function
old-commit-hash: bd2ea15897