* sunnylink: add statsd process and related telemetry logging infrastructure
- Introduced `statsd_sp` process for handling Sunnylink-specific stats.
- Enhanced metrics logging with improved directory structure and data handling.
* sunnylink: re-enable and refine stat_handler for telemetry processing
- Reactivated `stat_handler` thread with improved path handling.
- Made `stat_handler` more flexible by allowing directory injection.
* statsd: fix formatting issue in telemetry string generation
- Corrected missing comma between `sunnylink_dongle_id` and `comma_dongle_id`.
* update statsd_sp process configuration for enhanced readiness logic
- Modified `statsd_sp` initialization to include `always_run` alongside `sunnylink_ready_shim`.
- Ensures robust process activation conditions.
* refactor(statsd): enhance and unify StatLogSP implementation
- Replaced custom `StatLogSP` in sunnylink with centralized implementation from `system.statsd`.
- Ensures consistent logic for StatLogSP handling across modules.
* fix
* refactor(statsd): add intercept parameter to StatLogSP for configurable logging
- Introduced optional `intercept` parameter to `StatLogSP` to manage `comma_statlog` initialization.
- Updated usage in `sunnylink` to disable interception where unnecessary.
* Dont complain
* feat(statsd): add raw metric type and SunnyPilot-specific stats collection
- Introduced `METRIC_TYPE.RAW` for base64-encoded raw data metrics.
- Added `sp_stats` thread to export SunnyPilot params as raw metrics.
- Enhanced telemetry handling with decoding and serialization updates.
* refactor(statsd): improve `sp_stats` error handling and param processing
- Enhanced exception handling for `params.get` to prevent crashes.
- Added support for nested dict values to be included in stats.
* refactor(statsd): adjust imports and minor code formatting updates
- Updated `Ratekeeper` import path for consistency with the `openpilot` module structure.
- Fixed minor formatting for improved readability.
* refactor(statsd): update typings and remove unused NoReturn annotation
- Removed unnecessary `NoReturn` typing for `stats_main` to simplify function definition.
- Adjusted `get_influxdb_line_raw` to refine typing for `value` parameter.
* cleanup
* init
* init
* slightly more
* staticmethod
* handle them all
* get them models
* log with route
* more
* car
* Revert "car"
This reverts commit fe1c90cf4d.
* handle capnp
* Revert "handle capnp"
This reverts commit c5aea68803.
* 1 more time
* Revert "1 more time"
This reverts commit a364474fa5.
* Cleaning to expose wider
* feat(interfaces, statsd): log car params to stats system
- Added `STATSLOGSP` import and logging to capture `carFingerprint` in metrics.
- Improved error handling in `get_influxdb_line_raw` for robust metric generation.
* refactor(interfaces): streamline car params logging to stats
- Simplified logging by directly converting `CP` to a dictionary.
- Removed legacy stats aggregation for clarity.
* feat(sunnylink): enable compression for stats in SunnyLink
- Added optional compression for stats payload to support large data.
- Updated `stat_handler` to handle compression and base64 encoding.
* fix(statsd): filter complex types in `get_influxdb_line_raw`
- Skips unsupported types (dict, list, bytes) to prevent formatting errors.
- Simplifies type annotation for `value` parameter.
* fix(statsd): use `json.dumps` for string conversion in `get_influxdb_line_raw`
- Ensures proper handling of special characters in values.
- Prevents potential formatting issues with raw `str()` conversion.
* refactor(interfaces, statsd): update parameter keys for stats logging
- Renamed logged keys for better clarity (`sunnypilot_params` → `sunnypilot.car_params`, `device_params`).
- Ensures consistency across data logs.
* bet
---------
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
* auto attempt
* gpt5
* Revert "gpt5"
This reverts commit 556d6d9ee4d53aca0f4612023db6cfb2bed7ce29.
* clean up
* fixes
* use raylib
* fixes
* debug
* test update
* more
* rm
* add value to button like qt
* bump
* bump
* fixes
* bump
* fix
* bump
* clean up
* time ago like qt
rm
* bump
* clean up
* updated can fail to respond on boot leading to stuck state
* fix color
fix
* bump
* bump
* add back
* test update
* no unknown just ''
* ffix
* init
* desc
* llk welcome back
* more
* new param to write
* update mapd
* no migration
* no refactor for now
* exec
* rename
* bearing
* fix test
* lint
* Rewrite ubloxd in Python
* lil more
* rm from third_party/
* cleanup
* ubx replay
* try this
* back to kaitai
* Revert "ubx replay"
This reverts commit 570bd3d25fbabc590379ce0a9f98d30de55cf1b3.
* feat: add support for copyparty-sfx
* feat: add toggle for Copyparty service in developer panel
* feat: enhance Copyparty configuration with additional volume mounts and options
* Update system/manager/process_config.py
* remove f string
* lint
* ci: github runner auto off when voltage is above 9.0v .
This ensures that a runner in vehicle doesn't accidentally break everything lol.
* suggestion for clarity.
* refactor: rename and update handling of `GithubRunnerVoltage` parameter
- Improve clarity by renaming to `GithubRunnerSufficientVoltage`.
- Changed attribute to `CLEAR_ON_MANAGER_START` for improved runtime state management.
- No need for this value to be backed up!
* refactor: streamline voltage check for GithubRunnerSufficientVoltage
---------
Co-authored-by: DevTekVE <devtekve@gmail.com>
* add raylib ui
* test
* this is better for now
* rm
rm
* finalize it
* need this?
* ?
* shite
shite
* try
* ?
* huh
* simp
* ?
* wtf is going on
* ???????????????
* lock
* stash
* no 2 packages
* Revert "stash"
This reverts commit 9efb0d9bda6a6309e7a567634d1921bf1cd0fb59.
* debug
* noo
* debug
* ?
* and
* yeah yeah
* init one
* 2
* i wonder
* oooh
* make sure
* fix dat
* try this
* see if wifiman
* forgot
* ?
* ???
* fuck this we can rewrite it later
* record feedback with LKAS button
* fix alert test
* slightly simplify feedbackd
* "Audio Feedback Saved" upon time expiration or early stop
* earlySend --> earlyStop
* userFlag --> userBookmark
* RecordAudioFeedback param/toggle
* add audioFeedback test
* simplify feedbackd
* send bookmark regardless of toggle, show feedback event with higher priority
* add userBookmark to selfdrived sm
* fix mispelled param name
* default off and move to main
* segmentNum --> blockNum, earlyStop --> lastBlock
* preserve audioFeedback
* get rid of lastBlock and just send bookmark saved at the end
* update raylib side
* update toggle description and add raylib toggle
---------
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* fix mapd folder
* not needed
* unnecessary
* Remove unused import from mapd_installer.py
Deleted the unused import of Paths from openpilot.system.hardware.hw to clean up the code.
* Undo changes
* update: adjust `mapd` process to conditionally start based on readiness
- Added `mapd_ready` function to check `mapd` readiness.
- Modified `mapd` process to use this readiness condition.
* update: bump mapd version to v1.10.0 and add readiness utility
- Updated `VERSION` to v1.10.0 for `mapd_installer.py`.
* update: integrate `MapdInstallManager` versioning into main thread
- Added a call to `MapdInstallManager.update_installed_version` with `VERSION`.
- Ensures version management for `mapd` is synchronized during runtime.
* refactor: centralize `MAPD_PATH` and `MAPD_BIN_DIR` definitions in module init
- Moved constants to `sunnypilot/mapd/__init__.py` for cleaner imports and reuse.
- Updated references in `mapd_manager.py` and `mapd_installer.py`.
* revert back the file permission
* do this
* no longer static
---------
Co-authored-by: DevTekVE <devtekve@gmail.com>
Co-authored-by: rav4kumar <meetkumardesai@gmail.com>
Co-authored-by: James Vecellio-Grant <159560811+Discountchubbs@users.noreply.github.com>
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
* first
* fix
* fix
* this
* real
* time
* time
* more
* more
* fix
* subclass
* fix
* fix
* test
* fix
* ruff
* revert
* default
* json
* more
* test
* test
* d
* better
* better
* test
* one
* test
* space
* add advancedControl bool to SP Controls
* add Advanced Controls toggle in SP Dev Panel
* merge - ui: Init Developer Panel SP#1054
* because @discountchubbs did not want to commit directly to the pr 🤷♂️
* enable onroad too
* hide by default only on staging & release
---------
Co-authored-by: discountchubbs <alexgrant990@gmail.com>
Co-authored-by: James Vecellio-Grant <159560811+Discountchubbs@users.noreply.github.com>
Co-authored-by: DevTekVE <devtekve@gmail.com>
* Fast boot mode
* Unused
* FastBoot -> QuickBoot
* Move down, since name change
* Chronological in manager too
* last one b4 merge
---------
Co-authored-by: Nayan <nayan8teen@gmail.com>
Co-authored-by: DevTekVE <devtekve@gmail.com>