IQ.Pilot Release Commit @ 9fe0487

This commit is contained in:
IQ.Lvbs CI [bot]
2026-07-27 01:04:28 -05:00
parent 6edfe55a1e
commit 541e76a873
210 changed files with 992 additions and 504 deletions
@@ -16,27 +16,27 @@
},
"python/iqpilot_private/konn3kt/backups/archive_codec.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "5ca5099e9b33d6b06a7b09992a444f97605914e96f8a9f1bdd7de278f5574c82",
"sha256": "dfc76d7b791879501396d4de4891718d0052d23b1e6cb217b0be01f3e3e6d857",
"size": 135536
},
"python/iqpilot_private/konn3kt/backups/backup_keys.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "b682b580cf7a1e068120a4591b2c61fa8e0b92201779d79566c4d03248c939b1",
"sha256": "d1a7fd4e222b08c1e574ed1188943acddecc8d3f5ac02a1983bf90bde5e00a2c",
"size": 67664
},
"python/iqpilot_private/konn3kt/backups/backup_orchestrator.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "0b1801c7790aefc4a0c7fd44cb94cebd6bd6c4647913987847d6432d2c856ac7",
"sha256": "5393274eb99f50917fef30f994b1ad5fab66860bd535b7d270a86d144d4e25b7",
"size": 204624
},
"python/iqpilot_private/konn3kt/backups/cbc_vault.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "b729bdb775de9f3bb5362649aa94445bf7f8a102048468e88d1967a2545f7927",
"sha256": "9c08c3f6e3dc3b73f1a28d50d5aa76fa0894e9cd83bf02b7e9cc83bda5e84b4e",
"size": 69752
},
"python/iqpilot_private/konn3kt/backups/imahelper.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "969e8544555c9b463c79541f6a73d852a57bfb9ac5121da8b09a2a8dcfc5e636",
"sha256": "fb417b7fed56353caad6d5a96429952ff0b87ee1bab7d6a8f0856d1ca40e4b4a",
"size": 203072
},
"python/iqpilot_private/konn3kt/flockd/__init__.py": {
@@ -46,12 +46,12 @@
},
"python/iqpilot_private/konn3kt/flockd/flockd.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "359489fee0ceb758a42de988f24922bd5d70025986f69e5c8c630c349281bd0c",
"size": 202104
"sha256": "73164bb5c3eafe0a5409508140c093503ec40c1c58d0a8e79281bac3d22d811c",
"size": 202168
},
"python/iqpilot_private/konn3kt/flockd/signatures.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "6af9a71b99ac11bda37e32896e660edbe82bef3e6bcbc61ef3710b9c774a6a2e",
"sha256": "fb6d56fbec20965d988f936c46e7a70f31def71a2fba27a6506567b3c13574cf",
"size": 68080
},
"python/iqpilot_private/konn3kt/hephaestus/__init__.py": {
@@ -61,67 +61,67 @@
},
"python/iqpilot_private/konn3kt/hephaestus/_vendor/localapi_runtime.zip": {
"mode": 420,
"sha256": "59fcfd20cb32cb06e579d72129ca6c5d3b7b63add4d43b8d464e0411afe89ce2",
"sha256": "52026a3b96c4e7eee5cb33d70a323896ab0de02557196980653afb99498af84d",
"size": 2100238
},
"python/iqpilot_private/konn3kt/hephaestus/ble_auth.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "ac635ec8e236104ce10942fda1c4dae7b1eb747ad8e4e6c2855c37f1dd98ebe8",
"sha256": "aa3530a7f7a44ba1de0d8c1b5de3d26405bf0ee0b9599190bfbbea55d2ed2071",
"size": 268064
},
"python/iqpilot_private/konn3kt/hephaestus/ble_gatt.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "12e381f1292c44b5eeee603865b4b5fd7da9b5fb7a0a6294d888e71de4988819",
"sha256": "5a6bf50d4f8e3ec43603c2b3d9743dd650b37c6dd2075ec19266d0f1368b8cff",
"size": 340584
},
"python/iqpilot_private/konn3kt/hephaestus/ble_rpc_dispatch.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "3324404c9a66f90bd2d48b8a43e583abea98ee4b68a7fd0023d0313b1695fd57",
"sha256": "ff36bfb143294790a6ab0e2fe3d14852f3b04374185ef19a614231ca56a40999",
"size": 68048
},
"python/iqpilot_private/konn3kt/hephaestus/ble_transportd.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "a84efbd54a57455a8124aa9b1e54b7e6e8061905b5f76e019d85a30adcfeac3d",
"sha256": "ea54bc8d8a2ba2d803ce782898a6987457d248945da81cb9ab08bc32f6763fe1",
"size": 335728
},
"python/iqpilot_private/konn3kt/hephaestus/bt_gamepad.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "91f7b9ec65404dbd2e0b0fffdf46b1607103ce38202df9d0d02f50582278685c",
"sha256": "f7706a6cabf49660c48609ca4a85c840c1e22e5e4b17d250114e25b56a7b9c34",
"size": 271680
},
"python/iqpilot_private/konn3kt/hephaestus/cloud_routes.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "560814088a2e424399aa456ce1886b763cd5a8c8a879a5b10b6049dcab3e127d",
"sha256": "5fc96f8ac2c67f3ff660b8c060d14b0e526cba7eaa5ce64fae94f3d0e784d417",
"size": 134408
},
"python/iqpilot_private/konn3kt/hephaestus/hephaestusd.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "2c14688dc0b066226c8b0899c35f7237726182e9973aab5ceb6817ff559fa564",
"sha256": "85ecde61b3fcc0d18dc260855a94eb8d30ab2e02adbfea67e209b3fe320608b1",
"size": 3514416
},
"python/iqpilot_private/konn3kt/hephaestus/kwp2000.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "f32dbf481d03d9867ca768781eae8eb33db0ef24d2303993fb38e9806fb5cdc0",
"sha256": "c7b1b7a441f9c4ad395efb3de26d972379d9927f9c7ea9c121d1d06b8170139b",
"size": 136448
},
"python/iqpilot_private/konn3kt/hephaestus/manage_hephaestusd.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "ce0944eea1c056bb646c28149428aa5c48086e41910ce1dbdf442588db714a77",
"sha256": "a7fddf4e77d804f255ae4821fe64eada65ee6f2cc41cfb5c995acd497a0caca4",
"size": 68136
},
"python/iqpilot_private/konn3kt/hephaestus/motd.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "d7ed7b723757a1e674baa060847232f460f68d685b6ae000e2aac5141fa9541f",
"sha256": "2ff9ebdb8887bb71a971a4d06fd362c51f5a4446595a073a45edc8bb630a642a",
"size": 67840
},
"python/iqpilot_private/konn3kt/hephaestus/tp20.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "13f24976bb967d69585d9b5e6c975de827ca82a749177a40e61661684ed808b2",
"sha256": "789481c2f41a6a38492f4f6e62d90c18c59276ff7a9b60fd8a5063b1754efe82",
"size": 135648
},
"python/iqpilot_private/konn3kt/hephaestus/vw_pq_flasher.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "da5517566850d263cbc19779e5306b651ec910e89c3ffe997c160daa07406878",
"sha256": "280bee6ecfcde50d1856835a319aaa3354ecfdc4c9d552243493ae7070f9f169",
"size": 269568
},
"python/iqpilot_private/konn3kt/uploaderd/__init__.py": {
@@ -131,11 +131,19 @@
},
"python/iqpilot_private/konn3kt/uploaderd/iquploaderd.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "ede763389fe1b7aaf60bb9049b146e56bfab4c58b20beba8f21c15d8e8c7e78a",
"sha256": "b1df9786798beaf80ae110b20b79c2e88b7bbdf38c576fa249fc896e360f9ad1",
"size": 204184
},
"runtime": {
"entries": {
"iqpilot_private.konn3kt.backups.backup_orchestrator": {
"path": "python/iqpilot_private/konn3kt/backups/backup_orchestrator.cpython-312-aarch64-linux-gnu.so",
"type": "python-module"
},
"iqpilot_private.konn3kt.flockd.flockd": {
"path": "python/iqpilot_private/konn3kt/flockd/flockd.cpython-312-aarch64-linux-gnu.so",
"type": "python-module"
},
"iqpilot_private.konn3kt.hephaestus.ble_transportd": {
"path": "python/iqpilot_private/konn3kt/hephaestus/ble_transportd.cpython-312-aarch64-linux-gnu.so",
"type": "python-module"
@@ -163,25 +171,25 @@
}
},
"signatures": {
"python/iqpilot_private/konn3kt/backups/archive_codec.cpython-312-aarch64-linux-gnu.so": "q5X7Qd9gy6n/SJj3F4VmjSBgekh6+w9PcBNpsn9CzdgDLsb5ede7fNoL18rNXnoFjCi1AgZ5KocGo92cQPdqCw==",
"python/iqpilot_private/konn3kt/backups/backup_keys.cpython-312-aarch64-linux-gnu.so": "KVfZCbChNuMZijXH087FjDVGs4jXshfIj4lahpezUmg04DkR5qkrio7jGvPvJVz8rGsseK28eupI90Do2Xt+Dw==",
"python/iqpilot_private/konn3kt/backups/backup_orchestrator.cpython-312-aarch64-linux-gnu.so": "XqUu52yTF3NgY9kSuDnHhaWXb1MuaLtSJuz3Aff+h60iTtcPzjSrPw+wLRncf87BHekB/czViEYikTgqVyrgDg==",
"python/iqpilot_private/konn3kt/backups/cbc_vault.cpython-312-aarch64-linux-gnu.so": "2OwIYW90eoo7Ym34CbeFREjETgP3EvlijyWxL3vNYwU4c1hCp9QPJ/17pG7r5w9FjdK/hZzgTo2Xxyxz3GMyCg==",
"python/iqpilot_private/konn3kt/backups/imahelper.cpython-312-aarch64-linux-gnu.so": "YbF2/FHGNB90lTUSQO7lx4MyThoaSJXZ/sXkTeKOc3DJrv/22hoNq/VlXqhFg/IZ1In5DcyRgEyMNp6GK6zjAw==",
"python/iqpilot_private/konn3kt/flockd/flockd.cpython-312-aarch64-linux-gnu.so": "NXKmudsdaPlY+yXjafjLizXHnVtmspQoxTRUZ+k+am0HLE8pSAjXiussX+HsHZ1OUhN1KgYs2TeMiXRcIr0qAg==",
"python/iqpilot_private/konn3kt/flockd/signatures.cpython-312-aarch64-linux-gnu.so": "Ch2bR2MPyeyrZYYe/2qcOZe84iDgtFIt4zRl1O+xDZXJrcUmZ8Q9327n0MO91Fw1nkNLjtT5s40/eB8y+IngCA==",
"python/iqpilot_private/konn3kt/hephaestus/ble_auth.cpython-312-aarch64-linux-gnu.so": "ffxwqf1uWlPbAt/aBlmcTwcr1BAOJTBmfbOFWfZnzrCSxrsv+muX8JXp2VI9uZHQ4YtgzqXbOdF4mdzJslQ1Cg==",
"python/iqpilot_private/konn3kt/hephaestus/ble_gatt.cpython-312-aarch64-linux-gnu.so": "TcewpD48/oO4f+JhAmN5boXabdScpA6pLr1KcI8MB4NeLurFocISNmmJx66KczRRkVKhyTB8KTXN1qVUCAP5BA==",
"python/iqpilot_private/konn3kt/hephaestus/ble_rpc_dispatch.cpython-312-aarch64-linux-gnu.so": "GektayZTWTUawXwr3dobxYniNfsb6TK574UmQSQnUBNKskOsS4id+4H1xz6oAWb3SrXsG8RgvdBRTrKUtzXuBg==",
"python/iqpilot_private/konn3kt/hephaestus/ble_transportd.cpython-312-aarch64-linux-gnu.so": "YoeFaTgAWR8Hoqpvb0prieEoRq1rNQq1LgpFN/uGoPSQY9J+pihTYMJ375RcO552G9UImtosAzKnlg45KSahAA==",
"python/iqpilot_private/konn3kt/hephaestus/bt_gamepad.cpython-312-aarch64-linux-gnu.so": "LBEeciHykYL/oUDY44PbfepASHC+Ye9w19JdxN5KTBt2HdXH5rxqYqcuZdKIX4LuDtMfnOxvWzKEfGAzr+iNDw==",
"python/iqpilot_private/konn3kt/hephaestus/cloud_routes.cpython-312-aarch64-linux-gnu.so": "TvFMKPdVpOMOpTZex6enVpZN4KIAenz9LpLrwj55WY2ba4zn0SlUXvAdQVlr4QLV8R8HaGvI+8BDwdSAa9irCA==",
"python/iqpilot_private/konn3kt/hephaestus/hephaestusd.cpython-312-aarch64-linux-gnu.so": "5BTV95k52NKkop6eNkl3DQKqiiQD1TIysjP7+nzrYlWuf6/w6OLvu/0J4ZplojCdXKvrVOLBQo/c/n9p5qF9Dg==",
"python/iqpilot_private/konn3kt/hephaestus/kwp2000.cpython-312-aarch64-linux-gnu.so": "Deepl4pPInDReIdeTeujBmxc73wzzMGqjhNNwZoumQ/pUuRtG27QCpMKTYgf7dDI6HwNtxbfvapDlzezeKRsDQ==",
"python/iqpilot_private/konn3kt/hephaestus/manage_hephaestusd.cpython-312-aarch64-linux-gnu.so": "umqH+MbkA6WGHdOMrA5Le8lyC1j8KF+JrbwnRFI7OaOOUiY+ENBg2gHjgdNRM6Q9373GjrVvdNB5MK4zLJLuAA==",
"python/iqpilot_private/konn3kt/hephaestus/motd.cpython-312-aarch64-linux-gnu.so": "p1EIJ28bitg0sci8UfXLAGxiIhi08CkMNy9J5FpJ5S9GSlSBJBAi9H8Wb818mwdset638UaDv3Dk3SRB7qUlDA==",
"python/iqpilot_private/konn3kt/hephaestus/tp20.cpython-312-aarch64-linux-gnu.so": "RMBckUaRqo9QzIIUvJT3JrWu1iZ1HtTO4e6REiiFLvyo2I9d8tBGSVaBmjKRoYR+Sv47ml9ER2t2AsD5XkicDg==",
"python/iqpilot_private/konn3kt/hephaestus/vw_pq_flasher.cpython-312-aarch64-linux-gnu.so": "PGUQnKQcPz6vPNJ3trFJ1GZPWiNRxfYZXsYDDgvUN99Z+m74aCUkXJ9ACmzUT/wFKcuqfgga9GJEOWvAfHGMDw==",
"python/iqpilot_private/konn3kt/uploaderd/iquploaderd.cpython-312-aarch64-linux-gnu.so": "LmTDMoU6duKAOJWS7bw1d52z4ByPHbpxWbOaEGk1wmM70FNzmWB4Cf73AtqgliXKkNCmknYdnxjhx3ynLre8BQ=="
"python/iqpilot_private/konn3kt/backups/archive_codec.cpython-312-aarch64-linux-gnu.so": "/YL6W76Q7ejmJvQraTclgzsGxYGpYbSBF3qql0E8Z40MZBQcm8wy+9mrMm1en5W9xGebuaT5xN2+Rji5MUCrDQ==",
"python/iqpilot_private/konn3kt/backups/backup_keys.cpython-312-aarch64-linux-gnu.so": "0/MsPs9cfZy51uqtyCEK8/U8paw+eQXgqVnglRdUM3Xx6WaPTku3DXfx7MquCTXl+ia9XlM1xdaH/ax6zxhdAw==",
"python/iqpilot_private/konn3kt/backups/backup_orchestrator.cpython-312-aarch64-linux-gnu.so": "1i1wEWih2NTsQ9jgK/cpb8V/B0y5prTk/OHG1wu4qoaMx4Qm1gVm6KAWU7rkvaQHMqC5eZG5lgL7O6tGflgOBA==",
"python/iqpilot_private/konn3kt/backups/cbc_vault.cpython-312-aarch64-linux-gnu.so": "Q0TBxMRrSRv99t5NIpcYgwRcj26IycOSUSX+Yh4f4S82hY3dXwME3XSqWFLaL2wNF+uG7dMZr0pZkZnHBHmaDg==",
"python/iqpilot_private/konn3kt/backups/imahelper.cpython-312-aarch64-linux-gnu.so": "wFMRv5A2/dCAjlBC/x5uN876dq/kMrgMg5F7nmOKjDlrC5lZ014MbZXU0BKzI49CSch9uU3TLbvUR1p9gWPcBA==",
"python/iqpilot_private/konn3kt/flockd/flockd.cpython-312-aarch64-linux-gnu.so": "de2W5b0SVEEAhjf9r1Ht9tg6W4RWldp7Tc/IzUQdphK4XBOzqouXIYCItN5xgEbc1tFTmGgKu2pfMXAoXkgYDw==",
"python/iqpilot_private/konn3kt/flockd/signatures.cpython-312-aarch64-linux-gnu.so": "yEkA8O096lTrh5YTvZgmuGpyuZ0vTnZDvLnLGR7dhBfypiNPsF4dxp2bcgDpz14GRKPHKa3v8O2v/G/06lk4CQ==",
"python/iqpilot_private/konn3kt/hephaestus/ble_auth.cpython-312-aarch64-linux-gnu.so": "fpzjKBczfi9su9/BzPINkMJ8+Qx2KljBmYg/lhpaCRZDQX9kIT2qgcgbu5CqahfEQAjWDH2YKDwRhAGzkx1LBw==",
"python/iqpilot_private/konn3kt/hephaestus/ble_gatt.cpython-312-aarch64-linux-gnu.so": "mUUGiu3/nIkcp9McjoX+qOTzBwuJlFzxxZdbW3uU2C4ppAlQ+bYMz9p33qnmkUiJUGfjcBwFnJebL8AXo/kXBQ==",
"python/iqpilot_private/konn3kt/hephaestus/ble_rpc_dispatch.cpython-312-aarch64-linux-gnu.so": "Nge3RnzUjW2gPUjEyBRxh+D6frwx9dJ/N9W0e0vzFWLLvbo+cT5zjrNAT7buA7XAKGfHSy14ssOxL8Jz+uZBBw==",
"python/iqpilot_private/konn3kt/hephaestus/ble_transportd.cpython-312-aarch64-linux-gnu.so": "KXjqWoG0lsVWqK8uRhOOChREx/ThGtcdKoFxaDD2WpGtEoFBTz2fDsNP8lgyLcrH+9ETT6ggnXqHMf2SnEabBw==",
"python/iqpilot_private/konn3kt/hephaestus/bt_gamepad.cpython-312-aarch64-linux-gnu.so": "+0ZLw/tXrJtcempSJZFTKz9vlzs7q13YrnzSkuSpHzaGUm4Z2l4H3Syy0rPj3iJ8OLbkMAE9LegxScVq9mb1Bg==",
"python/iqpilot_private/konn3kt/hephaestus/cloud_routes.cpython-312-aarch64-linux-gnu.so": "Q44rxaPzw1QoSLoHyoaCMtW9N45YeYUNhtgPETz6Z1zLJ5o9NPec6yP06673sX9xdOnRXr0maeLfI2ji7iFiBg==",
"python/iqpilot_private/konn3kt/hephaestus/hephaestusd.cpython-312-aarch64-linux-gnu.so": "MUg6v8qvb7Rhhk5LPoU7krD0CKb39e8wsoh5ER+VvzWYJZ2fnra7Od14xSGfhFZoHIItPwtOlASUbqlbPKReCg==",
"python/iqpilot_private/konn3kt/hephaestus/kwp2000.cpython-312-aarch64-linux-gnu.so": "ERRMJ3hrOhetsuiNyWrsXH6hwtKzw5CAjg8kB/025JkDyA4OR3yLGMnqXqryygc4r4onUUF0Q55SzTbxxHWzDA==",
"python/iqpilot_private/konn3kt/hephaestus/manage_hephaestusd.cpython-312-aarch64-linux-gnu.so": "+gyiBvn9Uz56mpHovmDtUsNxvlnPYLH8/v5J+f0o8nr/E26f1xvSk2yQbYwYrCeZZ8AOxgY6GmdGRnkly4WCCg==",
"python/iqpilot_private/konn3kt/hephaestus/motd.cpython-312-aarch64-linux-gnu.so": "Y/cinSdkb/kWX44T/w4woXX/Ex9+Q1KPtUC318dtygZeTiHDjCM+0IUjfS/BXwbdKETQPEpyIoKLsJaP2Gk1Cw==",
"python/iqpilot_private/konn3kt/hephaestus/tp20.cpython-312-aarch64-linux-gnu.so": "N+JrGIiTUzESxzH9fdgub5y01psxzlmEw75Y1AuxQqFx7mG4Z+Tx20UeeyQtAw27UuOctiKpGPHq9trtijJwBA==",
"python/iqpilot_private/konn3kt/hephaestus/vw_pq_flasher.cpython-312-aarch64-linux-gnu.so": "1MxRuPAWgjtsNORklvPZBml0OOVqIu8vMluY0QlK/pqE3S8EoC28/Gn39Bhb6hMjk8yTAUaTnTn4HlwkENpvBA==",
"python/iqpilot_private/konn3kt/uploaderd/iquploaderd.cpython-312-aarch64-linux-gnu.so": "Uxa3OMIwXvFEYz1LP+UDWB1sVhi4z8yC9bP+Xypzw26LNRAMkJZta2r+drXGPEe1TFg4zgVWrb9Q1+Y3pA9HAQ=="
}
}
+31 -31
View File
@@ -6,7 +6,7 @@
},
"python/iqpilot_private/navd/__init__.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "8b6114f67eb7a83d47e90113a0e75801ffd55d6c732d1db9a6af620f3cfba1d8",
"sha256": "449495db52a85f8d0b0e2bb3128ee480598f8bdb5a44ec13153877fe8b372a91",
"size": 67616
},
"python/iqpilot_private/navd/__init__.py": {
@@ -16,72 +16,72 @@
},
"python/iqpilot_private/navd/event_builder.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "4ebabfe3b85a380441cb22730ea3779c3c477e7ec40a88d0ba4d8130a2827877",
"sha256": "ae2b25f52f7c7b02f3c977bbf46f5e9e938bfeda78bdb60f2f897eb04d698e43",
"size": 136944
},
"python/iqpilot_private/navd/helpers.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "7506530560907e8a39e54c05c988c5be3b86bbdaa5279059ada9d847d1e2889c",
"sha256": "f6ad0590f2a0bdbed56e7126203df2f6cdad86074f76ab9dded38b9e1600c8af",
"size": 135936
},
"python/iqpilot_private/navd/iqmapd.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "905391fcf31991b315abe6126797bc870066352596cd2e9574b289a9c0f386be",
"sha256": "b4ed48cada1dfb3383ff8ee106a7d93967bf65115d4c528b60dc3d73112a2f0e",
"size": 135608
},
"python/iqpilot_private/navd/long_decel.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "33f91bfad8894347729d4fd072e8a81af766240e5ec8921de0f92230e3d5faf1",
"sha256": "e68aca6829cb00c5eda5330e1dfedd6269381ea5831abaca1055adf6df1f53ff",
"size": 69728
},
"python/iqpilot_private/navd/mapbox_client.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "4572bb1d704de4b9919d4e81e7c28d64197dadbdd8d84f4f1a203ad924d000f6",
"sha256": "ebd30c5c34fbbe82d7d24343a2e791919e526997d192fd1441df749b15526704",
"size": 68088
},
"python/iqpilot_private/navd/nav_cameras.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "5087cd98a1bf042e0f3d19021af43a0d12ae0ce3f502158a0f4d3a0ace2bbabe",
"sha256": "6e69c5fcac3c302e401b3ed3735b42f3de4af4e0d188d15a7add7aa02920f4c5",
"size": 135440
},
"python/iqpilot_private/navd/navd.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "f26cb01eaad63b14c686932496a62a3ec5aef1ebb4f36fb46680c124c77e0e16",
"size": 664448
"sha256": "55c88f8c5996dd7094c0feaf454fe0f1aec97276aed8926d7e8f6d1597de5a83",
"size": 664480
},
"python/iqpilot_private/navd/navrenderd.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "3e4a79640333390203e50fb226b00b72aa97a78637544e0f616ed54547c40489",
"sha256": "b971e1093f5713a633636d6ee74891206a2d5abfb492406c7ae5df7a66bdc0d9",
"size": 135560
},
"python/iqpilot_private/navd/osm_cameras.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "cc7040441e8ce97be6ba7bdb371761e7f14c3caf99ab15bf343635a69f4e0fb1",
"sha256": "882ccc23c3de2e4e34c685a7abb00075f6c5be634eaf7e81cab86461c624449d",
"size": 136368
},
"python/iqpilot_private/navd/reroute.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "2b9357dd886231d18e4a9b180b91ea2747f5fa23d91d2d349e032286ea330db2",
"sha256": "df0bf89d492dba3b6c3792dde1bcb30a60e692f62519be7c62a517ef514ec276",
"size": 136072
},
"python/iqpilot_private/navd/route_manager.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "3a85759d30234271a83a9473d6d18af74d672c892f686b5d082e9b6df1b70159",
"sha256": "0311a1fbde1510b31055606db21a7c5f74e6872f9f1aabd6fb4a0a501395eaef",
"size": 600528
},
"python/iqpilot_private/navd/runtime_common.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "2423bca9e7637997d1b6a86365cbc9e9a7d47c89f96aa21be4de32a898ad795c",
"sha256": "1f08c7c462b4cb08a8de9140d968ef5dc74b31afffe16c9f8fad4e0271bec6cc",
"size": 135752
},
"python/iqpilot_private/navd/turn_desire.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "12b333b4c8904483cae4bae1346016b24b9bee0866d332b2b61dc9fbc30a14b7",
"sha256": "aea71be79c99884a0aeaaf8e5c0f70e37bb4f0c0123025cd07df830189774ba9",
"size": 69832
},
"python/iqpilot_private/navd/web_server.cpython-312-aarch64-linux-gnu.so": {
"mode": 493,
"sha256": "3954330e8004abad9dd31f3a02b57306dc7e83e73ee0ba4072b1b4ecc7f88dfc",
"sha256": "5c7dd6ef7dafb9a35662ee3d22c08b17b02807df736bf146af88cb260f5bbf09",
"size": 201384
},
"runtime": {
@@ -105,20 +105,20 @@
}
},
"signatures": {
"python/iqpilot_private/navd/__init__.cpython-312-aarch64-linux-gnu.so": "j3fNuxY5XzC219Okj5DV4kId8oUAKcwTcZhwLpp8S/kWXpFv4gHo43Van3A+OkWPFa50ZvKqWH7WhoQc8IgPBw==",
"python/iqpilot_private/navd/event_builder.cpython-312-aarch64-linux-gnu.so": "+Pj9wj6MC4cZ8YxZvvT4XlrzS/N6gVDf5LGZ6kkWiJhVuolBW4ey5KSjbggp4NSIiZWi9aARMZfGsWabQi+nDA==",
"python/iqpilot_private/navd/helpers.cpython-312-aarch64-linux-gnu.so": "KYCV1qnZ8+mrne7n0H7x+kTu8x/U9H71SXYZt3URy/yIgdtTTXkSS6IQs1UvusfMHzRdBGcT58ado3UcLpsNAg==",
"python/iqpilot_private/navd/iqmapd.cpython-312-aarch64-linux-gnu.so": "qC8oELP8nBJSvaDsCMo7/JqoiqCZBJa/LeUE0b36DdkT7kzHSLQ+MuGP5Vc8ms8VowBh447LaLq2WWURGB/fAQ==",
"python/iqpilot_private/navd/long_decel.cpython-312-aarch64-linux-gnu.so": "6kFnnmSPQPXe1HuiBL14HrPx5cr2XmOYzTcESKHvt7DAL7M5tMKy0BWufo34F/LH4MYXQu1/k5TyzHt4wQ7jBw==",
"python/iqpilot_private/navd/mapbox_client.cpython-312-aarch64-linux-gnu.so": "F0JFe9uN7YtdFvtSwHXPch4l6Cz7yWTOtKPHOdBxqk9CkHh0vfO2d4EAeGTpvHINFS5Kf2KcF99qyEhWfr31Ag==",
"python/iqpilot_private/navd/nav_cameras.cpython-312-aarch64-linux-gnu.so": "7sQ0zXNASjEVBknO94P5wnMifC+8cVAKaBBbQjfbbaV1lsg18mm/rtTOGlFX7NJD23kJFxyLJmJ+wKjRAZXkBg==",
"python/iqpilot_private/navd/navd.cpython-312-aarch64-linux-gnu.so": "VTg/Ojx4I8+JJz+vf9gDwUSBY9MCUvIg9wGnNJiQwIKDJr/VkSRoaiM4nMoazauhLEgYpmlfX7C8OEAWswKhBQ==",
"python/iqpilot_private/navd/navrenderd.cpython-312-aarch64-linux-gnu.so": "4i882AjYz/zCgoGlr1LGNcVGfzyybHPMOL0aKva8VNsHBEtMbnnetecRBurtAzlU6O8+p89gY1GNDaJfyi7OAQ==",
"python/iqpilot_private/navd/osm_cameras.cpython-312-aarch64-linux-gnu.so": "hO9yDTiAaidM3yQCfh4J8vP54R2z42ejhkqU8E6l+wWUXhRrfS4Z6qLyxeQqQGJSPSAMfsWl/yODWogqoH+MDQ==",
"python/iqpilot_private/navd/reroute.cpython-312-aarch64-linux-gnu.so": "xPCGbuG+pQUqCjBx3NijbInbyo/rRteGLCbhVun2odrw1lGMx4JwzSyNUUsEU7xFPEZ+oZwPUaZcVOHRPnknAw==",
"python/iqpilot_private/navd/route_manager.cpython-312-aarch64-linux-gnu.so": "ZDojmbuEkZUbZ7a56pPvO8hFcYHM5zB9OvGs+r90swvPzU0GRm4SkEiDRLhG6zSyP+vHhJnrsTs+dvyaBkzvCQ==",
"python/iqpilot_private/navd/runtime_common.cpython-312-aarch64-linux-gnu.so": "888SP/NpbJtdv2BKbsW7WzuD0pKh2rM50YvS4GlD8brL2xq7a7GPPeKM/b5F+pTzVvS7CbUmELqh3HmeAtOKCw==",
"python/iqpilot_private/navd/turn_desire.cpython-312-aarch64-linux-gnu.so": "cmYohrfIfttybS+9x+b9DFzgxyaDGNtgr+olaMWUZ7ytgenB+EvwKAXJHmicFtvBTsKOxYzywKR2zLb71DDFDg==",
"python/iqpilot_private/navd/web_server.cpython-312-aarch64-linux-gnu.so": "laxlmUb7INupC/eu6k/eok3bXW4c5H7Lui5MDJXLCoSFCiutla374A6rN8Dh+g3AcSY2NfLBzrnyqQDqQH0KBw=="
"python/iqpilot_private/navd/__init__.cpython-312-aarch64-linux-gnu.so": "E3+Gd+btNi+4qFqM+nFMfWgCLJhP21ZgIwZrE/CJjqafB1htd/qOhh9QtrulS46HW5geZ/nwW3jlxPbFeNubBw==",
"python/iqpilot_private/navd/event_builder.cpython-312-aarch64-linux-gnu.so": "hHQQCCPcxRXdO9vko9476AYbgbfNwhi9bVYpoOzQQStPC8DbIO0QN/RRzaJVGr2kgJGZlXDmnGl85m7EHgC1BA==",
"python/iqpilot_private/navd/helpers.cpython-312-aarch64-linux-gnu.so": "Wz5yfWlMeoASj274KqrCWwEJD/wtm5WyxLenceYu7MkXaMlN1QyztvJhq8Y8K8Jfis7R5fQ/aAnlsQgWTIVEBg==",
"python/iqpilot_private/navd/iqmapd.cpython-312-aarch64-linux-gnu.so": "6WFWUXmkyy21rh/9xa7s7S7CTiCRnywOahU859T6iP0447NkVxHRYmXAVCH1/vRDPXASHRNPyUk8oSDLIGK1Ag==",
"python/iqpilot_private/navd/long_decel.cpython-312-aarch64-linux-gnu.so": "ZUsjQ/AGPa5pVKAv3IkycDPIVBWh+4jBNor/xrUi7BBPHki8G6T1grv3exeHhr2WF2JiqN727ge3JaqvlU1KDQ==",
"python/iqpilot_private/navd/mapbox_client.cpython-312-aarch64-linux-gnu.so": "t+VHmWhxf7oKcR5e+tJe6hPKy6xz0bMY84WEhujwcwBlWgIXscfc9aNSP6e4N7GITW7cOn+RlDRTTfwQsA6PDA==",
"python/iqpilot_private/navd/nav_cameras.cpython-312-aarch64-linux-gnu.so": "qOrpSi2I+aFLKN4WjBljfzbk2U1rvOgDuyV+p7IvshugeUOoqTKiYYSG9xwyi2/eB/syyfiVFoqAg+ETFXXPDA==",
"python/iqpilot_private/navd/navd.cpython-312-aarch64-linux-gnu.so": "PcFJWRYrb52pJCbTdsAPm3IC0OR9zt/7P0uc1GlQr4CVGvzfXukbnt/7sSeL8T29w7drf9MfGkpRe4BjbWwtDw==",
"python/iqpilot_private/navd/navrenderd.cpython-312-aarch64-linux-gnu.so": "gp1noPJ35MRVcQL3t4wKbsEH0L0+n9Yf8Zty+VCY7uy9EsK8211kW2YIw7Lcyw879VLLbVntHIWz/BMankSeAw==",
"python/iqpilot_private/navd/osm_cameras.cpython-312-aarch64-linux-gnu.so": "N6yH0R8V/Cw1J3hYPfFeZXByolRwtACwNe2wHMzPEQ69UTWnSNFRXWjOLCEvtwB8Z+iglAqFx8uztZ6wXZKUCQ==",
"python/iqpilot_private/navd/reroute.cpython-312-aarch64-linux-gnu.so": "oQQU70Yp8wzkqB9Ktm2KDEHNVZfB3otqIoG2mkqQNh6QdtVKXraIv6cAbt2Zjob5914C06El2z+NPZQE5NjODQ==",
"python/iqpilot_private/navd/route_manager.cpython-312-aarch64-linux-gnu.so": "ayPdxCUGA/o+AavLMd9mGDY6zYnZk54gAEVaMQXFYlztjXiREC+IEmV1iETOYcsEFAxr8qtUFfcwZ3p7rXljCw==",
"python/iqpilot_private/navd/runtime_common.cpython-312-aarch64-linux-gnu.so": "Rh0wUjYjRabedjFSnsE9BAjILjA1+RHMdfuCqTye1AlhFlXVUQMRo6Ier6Z71kyiOYw+CXCOrHUF9fP69cP4DQ==",
"python/iqpilot_private/navd/turn_desire.cpython-312-aarch64-linux-gnu.so": "13bqig90oceup9ovo8weu9UpdQN/l/pq7REFm8dwwgqquuh8jJFkzNz7dvIhDlaxIGAQwzWJe4+QzIQfhg0jAA==",
"python/iqpilot_private/navd/web_server.cpython-312-aarch64-linux-gnu.so": "Vm1Inx4XY0BOmLuNizOCRNAl4tPDcvJ/4A+TwVSr1cZuMg7pg1jeFg613e6cFM6t08hYvPsysXc2+gD69zkcBA=="
}
}
+2 -2
View File
@@ -242,8 +242,8 @@ struct IQPlan @0xda401323ae805f2b {
}
struct E2eAlerts {
greenLightAlert @0 :Bool;
leadDepartAlert @1 :Bool;
pathOpen @0 :Bool;
leadPullaway @1 :Bool;
}
}
+2 -2
View File
@@ -171,12 +171,12 @@ inline static std::unordered_map<std::string, ParamKeyAttributes> keys = {
{"DeviceBootMode", {PERSISTENT, INT, "0"}},
{"IQDevUIInfo", {PERSISTENT, INT, "0"}},
{"EnableEsimProvisioning", {PERSISTENT, BOOL, "1"}},
{"GreenLightAlert", {PERSISTENT, BOOL, "0"}},
{"EndToEndAlert", {PERSISTENT, BOOL, "0"}},
{"InteractivityTimeout", {PERSISTENT, INT, "0"}},
{"IsDevelopmentBranch", {CLEAR_ON_MANAGER_START, BOOL}},
{"IsReleaseIqBranch", {CLEAR_ON_MANAGER_START, BOOL}},
{"LastGPSPositionIQLoc", {PERSISTENT, STRING}},
{"LeadDepartAlert", {PERSISTENT, BOOL, "0"}},
{"EndToEndLeadAlert", {PERSISTENT, BOOL, "0"}},
{"LongIncrementsEnabled", {PERSISTENT, BOOL, "0"}},
{"LongIncrementTapStep", {PERSISTENT, INT, "1"}},
{"LongIncrementHoldStep", {PERSISTENT, INT, "5"}},
+55
View File
@@ -4,6 +4,61 @@ collect_ignore_glob = [
"iqdbc/safety/tests/misra/cppcheck/",
]
# --- host test harness -------------------------------------------------------
# tesla/volkswagen carstate+carcontroller import the closed-source ALC / odometer
# runtime via import_verified_module(), which gates on a rootfs integrity manifest
# that only exists on-device. Off-device (host CI / dev), install minimal stubs so
# the whole car interface set is importable and test_car_interfaces can collect and
# run. On-device the manifest is present and these stubs are never installed, so the
# real verified modules are used.
import os as _os
if not _os.path.exists("/usr/libexec/iqpilot/runtime_integrity.json"):
import sys as _sys
import types as _types
def _stub_module(name, attrs):
mod = _types.ModuleType(name)
for key, value in attrs.items():
setattr(mod, key, value)
_sys.modules[name] = mod
_noop = lambda *args, **kwargs: None # noqa: E731
class _VehicleOdometerStoreStub:
def __init__(self, *args, **kwargs):
pass
def record(self, km):
return km
_stub_module("iqpilot_private.konn3kt.iqlvbs.vehicle_state",
{"VehicleOdometerStore": _VehicleOdometerStoreStub})
_stub_module("iqpilot_private.konn3kt.iqlvbs.alc", {
"angle_lateral_control_enabled": lambda *a, **k: False,
"update_vw_alc": _noop,
"append_private_apd": _noop,
"update_mqb_carstate_alc_state": _noop,
"update_mlb_carstate_alc_state": _noop,
"update_pq_carstate_alc_state": _noop,
})
_stub_module("iqpilot_private.konn3kt.iqlvbs.iqlvbs_commander", {
"update_turn_signals": _noop,
})
_stub_module("iqpilot_private.konn3kt.hephaestus.vw_pq_flasher", {})
try:
from openpilot.system.proprietary_runtime import _verified_import as _vi
_real_import_verified_module = _vi.import_verified_module
def _import_verified_module(bundle, module):
return _sys.modules.get(module) or _real_import_verified_module(bundle, module)
_vi.import_verified_module = _import_verified_module
except Exception:
pass
# --- end host test harness ---------------------------------------------------
_ABSTRACT_BASES = frozenset(("CarSafetyTest", "AolSafetyTestBase", "SafetyTest", "SafetyTestBase"))
def _method_from_base(cls, method_name):
+1 -1
View File
@@ -11,7 +11,7 @@ from iqdbc.car.mock.values import CAR as MOCK
from iqdbc.car.values import BRANDS
from iqdbc.car.vin import get_vin, is_valid_vin, VIN_UNKNOWN
from iqdbc.iqpilot.car.interfaces import setup_interfaces as iqpilot_interfaces
from iqdbc.lvbs.car.interfaces import apply_iq_car_config as iqpilot_interfaces
FRAME_FINGERPRINT = 100 # 1s
@@ -5,9 +5,9 @@ from iqdbc.car.chrysler import chryslercan
from iqdbc.car.chrysler.values import RAM_CARS, CarControllerParams, ChryslerFlags, RAM_DT
from iqdbc.car.interfaces import CarControllerBase
from iqdbc.iqpilot.car.chrysler.carcontroller_ext import CarControllerExt
from iqdbc.iqpilot.car.chrysler.aol import AolCarController
from iqdbc.iqpilot.car.chrysler.values_ext import ChryslerFlagsIQ
from iqdbc.lvbs.car.chrysler.carcontroller_ext import CarControllerExt
from iqdbc.lvbs.car.chrysler.aol import AolCarController
from iqdbc.lvbs.car.chrysler.values_ext import ChryslerFlagsIQ
class CarController(CarControllerBase, AolCarController, CarControllerExt):
+2 -2
View File
@@ -4,8 +4,8 @@ from iqdbc.car.chrysler.values import DBC, STEER_THRESHOLD, RAM_CARS
from iqdbc.car.common.conversions import Conversions as CV
from iqdbc.car.interfaces import CarStateBase
from iqdbc.iqpilot.car.chrysler.carstate_ext import CarStateExt
from iqdbc.iqpilot.car.chrysler.aol import AolCarState
from iqdbc.lvbs.car.chrysler.carstate_ext import CarStateExt
from iqdbc.lvbs.car.chrysler.aol import AolCarState
ButtonType = structs.CarState.ButtonEvent.Type
@@ -2,8 +2,8 @@
from iqdbc.car.structs import CarParams
from iqdbc.car.chrysler.values import CAR
from iqdbc.iqpilot.car.fingerprints_ext import merge_fw_versions
from iqdbc.iqpilot.car.chrysler.fingerprints_ext import FW_VERSIONS_EXT
from iqdbc.lvbs.car.fingerprints_ext import extend_fw_versions
from iqdbc.lvbs.car.chrysler.fingerprints_ext import FW_VERSIONS_EXT
Ecu = CarParams.Ecu
@@ -789,4 +789,4 @@ FW_VERSIONS = {
},
}
FW_VERSIONS = merge_fw_versions(FW_VERSIONS, FW_VERSIONS_EXT)
FW_VERSIONS = extend_fw_versions(FW_VERSIONS, FW_VERSIONS_EXT)
+1 -1
View File
@@ -5,7 +5,7 @@ from iqdbc.car.chrysler.carstate import CarState
from iqdbc.car.chrysler.radar_interface import RadarInterface
from iqdbc.car.chrysler.values import CAR, RAM_HD, RAM_DT, RAM_CARS, ChryslerFlags, ChryslerSafetyFlags
from iqdbc.car.interfaces import CarInterfaceBase
from iqdbc.iqpilot.car.chrysler.values_ext import ChryslerFlagsIQ
from iqdbc.lvbs.car.chrysler.values_ext import ChryslerFlagsIQ
class CarInterface(CarInterfaceBase):
+1 -1
View File
@@ -5,7 +5,7 @@ from iqdbc.car.ford.fordcan import CanBus
from iqdbc.car.ford.values import DBC, CarControllerParams, FordFlags
from iqdbc.car.interfaces import CarStateBase
from iqdbc.iqpilot.car.ford.aol import AolCarState
from iqdbc.lvbs.car.ford.aol import AolCarState
ButtonType = structs.CarState.ButtonEvent.Type
GearShifter = structs.CarState.GearShifter
+2 -2
View File
@@ -5,8 +5,8 @@ from iqdbc.car.common.conversions import Conversions as CV
from iqdbc.car.interfaces import CarStateBase
from iqdbc.car.gm.values import DBC, AccState, CruiseButtons, STEER_THRESHOLD, SDGM_CAR, ALT_ACCS
from iqdbc.iqpilot.car.gm.carstate_ext import CarStateExt
from iqdbc.iqpilot.car.gm.values_ext import GMFlagsIQ
from iqdbc.lvbs.car.gm.carstate_ext import CarStateExt
from iqdbc.lvbs.car.gm.values_ext import GMFlagsIQ
ButtonType = structs.CarState.ButtonEvent.Type
TransmissionType = structs.CarParams.TransmissionType
+3 -3
View File
@@ -2,8 +2,8 @@
""" AUTO-FORMATTED USING iqdbc/car/debug/format_fingerprints.py, EDIT STRUCTURE THERE."""
from iqdbc.car.gm.values import CAR
from iqdbc.iqpilot.car.fingerprints_ext import merge_fingerprints
from iqdbc.iqpilot.car.gm.fingerprints_ext import FINGERPRINTS_EXT
from iqdbc.lvbs.car.fingerprints_ext import extend_fingerprints
from iqdbc.lvbs.car.gm.fingerprints_ext import FINGERPRINTS_EXT
# Trailblazer also matches as a SILVERADO, TODO: split with fw versions
# FIXME: There are Equinox users with different message lengths, specifically 304 and 320
@@ -78,4 +78,4 @@ FINGERPRINTS = {
FW_VERSIONS: dict[str, dict[tuple, list[bytes]]] = {
}
FINGERPRINTS = merge_fingerprints(FINGERPRINTS, FINGERPRINTS_EXT)
FINGERPRINTS = extend_fingerprints(FINGERPRINTS, FINGERPRINTS_EXT)
+2 -2
View File
@@ -10,8 +10,8 @@ from iqdbc.car.gm.radar_interface import RadarInterface, RADAR_HEADER_MSG, CAMER
from iqdbc.car.gm.values import CAR, CarControllerParams, EV_CAR, CAMERA_ACC_CAR, SDGM_CAR, ALT_ACCS, CanBus, GMSafetyFlags
from iqdbc.car.interfaces import CarInterfaceBase, TorqueFromLateralAccelCallbackType, LateralAccelFromTorqueCallbackType
from iqdbc.iqpilot.car.gm.interface_ext import CarInterfaceExt
from iqdbc.iqpilot.car.gm.values_ext import GMFlagsIQ, GMSafetyFlagsIQ
from iqdbc.lvbs.car.gm.interface_ext import CarInterfaceExt
from iqdbc.lvbs.car.gm.values_ext import GMFlagsIQ, GMSafetyFlagsIQ
TransmissionType = structs.CarParams.TransmissionType
NetworkLocation = structs.CarParams.NetworkLocation
+1 -1
View File
@@ -6,7 +6,7 @@ from iqdbc.car.structs import CarParams
from iqdbc.car.docs_definitions import CarDocs, CarFootnote, CarHarness, CarParts, Column, SupportType
from iqdbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries
from iqdbc.iqpilot.car.gm.values_ext import GMFlagsIQ
from iqdbc.lvbs.car.gm.values_ext import GMFlagsIQ
Ecu = CarParams.Ecu
+2 -2
View File
@@ -8,8 +8,8 @@ from iqdbc.car.honda.values import CAR, CruiseButtons, HONDA_BOSCH, HONDA_BOSCH_
HONDA_BOSCH_TJA_CONTROL, HONDA_NIDEC_ALT_PCM_ACCEL, CarControllerParams
from iqdbc.car.interfaces import CarControllerBase
from iqdbc.iqpilot.car.honda.aol import AolCarController
from iqdbc.iqpilot.car.honda.gas_interceptor import GasInterceptorCarController
from iqdbc.lvbs.car.honda.aol import AolCarController
from iqdbc.lvbs.car.honda.gas_interceptor import GasInterceptorCarController
VisualAlert = structs.CarControl.HUDControl.VisualAlert
LongCtrlState = structs.CarControl.Actuators.LongControlState
+1 -1
View File
@@ -10,7 +10,7 @@ from iqdbc.car.honda.values import CAR, DBC, STEER_THRESHOLD, HONDA_BOSCH, HONDA
HondaFlags, CruiseButtons, CruiseSettings, GearShifter, CarControllerParams
from iqdbc.car.interfaces import CarStateBase
from iqdbc.iqpilot.car.honda.carstate_ext import CarStateExt
from iqdbc.lvbs.car.honda.carstate_ext import CarStateExt
TransmissionType = structs.CarParams.TransmissionType
ButtonType = structs.CarState.ButtonEvent.Type
+3 -3
View File
@@ -2,8 +2,8 @@
from iqdbc.car.structs import CarParams
from iqdbc.car.honda.values import CAR
from iqdbc.iqpilot.car.fingerprints_ext import merge_fw_versions
from iqdbc.iqpilot.car.honda.fingerprints_ext import FW_VERSIONS_EXT
from iqdbc.lvbs.car.fingerprints_ext import extend_fw_versions
from iqdbc.lvbs.car.honda.fingerprints_ext import FW_VERSIONS_EXT
Ecu = CarParams.Ecu
@@ -1098,4 +1098,4 @@ FW_VERSIONS = {
},
}
FW_VERSIONS = merge_fw_versions(FW_VERSIONS, FW_VERSIONS_EXT)
FW_VERSIONS = extend_fw_versions(FW_VERSIONS, FW_VERSIONS_EXT)
+1 -1
View File
@@ -2,7 +2,7 @@ from iqdbc.car import CanBusBase
from iqdbc.car.common.conversions import Conversions as CV
from iqdbc.car.honda.values import (HondaFlags, HONDA_BOSCH, HONDA_BOSCH_ALT_RADAR, HONDA_BOSCH_RADARLESS,
HONDA_BOSCH_CANFD, CarControllerParams)
from iqdbc.iqpilot.car.honda.values_ext import HondaFlagsIQ
from iqdbc.lvbs.car.honda.values_ext import HondaFlagsIQ
# CAN bus layout with relay
# 0 = ACC-CAN - radar side
+1 -1
View File
@@ -11,7 +11,7 @@ from iqdbc.car.honda.carstate import CarState
from iqdbc.car.honda.radar_interface import RadarInterface
from iqdbc.car.interfaces import CarInterfaceBase
from iqdbc.iqpilot.car.honda.values_ext import HondaFlagsIQ, HondaSafetyFlagsIQ
from iqdbc.lvbs.car.honda.values_ext import HondaFlagsIQ, HondaSafetyFlagsIQ
TransmissionType = structs.CarParams.TransmissionType
@@ -8,10 +8,10 @@ from iqdbc.car.hyundai.hyundaicanfd import CanBus
from iqdbc.car.hyundai.values import HyundaiFlags, Buttons, CarControllerParams, CAR
from iqdbc.car.interfaces import CarControllerBase
from iqdbc.iqpilot.car.hyundai.escc import EsccCarController
from iqdbc.iqpilot.car.hyundai.longitudinal.controller import LongitudinalController
from iqdbc.iqpilot.car.hyundai.lead_data_ext import LeadDataCarController
from iqdbc.iqpilot.car.hyundai.aol import AolCarController
from iqdbc.lvbs.car.hyundai.escc import EsccCarController
from iqdbc.lvbs.car.hyundai.longitudinal.controller import LongitudinalController
from iqdbc.lvbs.car.hyundai.lead_data_ext import LeadDataCarController
from iqdbc.lvbs.car.hyundai.aol import AolCarController
VisualAlert = structs.CarControl.HUDControl.VisualAlert
LongCtrlState = structs.CarControl.Actuators.LongControlState
+4 -4
View File
@@ -9,10 +9,10 @@ from iqdbc.car.hyundai.hyundaicanfd import CanBus
from iqdbc.car.hyundai.values import HyundaiFlags, CAR, DBC, Buttons, CarControllerParams
from iqdbc.car.interfaces import CarStateBase
from iqdbc.iqpilot.car.hyundai.carstate_ext import CarStateExt
from iqdbc.iqpilot.car.hyundai.escc import EsccCarStateBase
from iqdbc.iqpilot.car.hyundai.aol import AolCarState
from iqdbc.iqpilot.car.hyundai.values import HyundaiFlagsIQ
from iqdbc.lvbs.car.hyundai.carstate_ext import CarStateExt
from iqdbc.lvbs.car.hyundai.escc import EsccCarStateBase
from iqdbc.lvbs.car.hyundai.aol import AolCarState
from iqdbc.lvbs.car.hyundai.values import HyundaiFlagsIQ
ButtonType = structs.CarState.ButtonEvent.Type
+3 -3
View File
@@ -2,8 +2,8 @@
from iqdbc.car.structs import CarParams
from iqdbc.car.hyundai.values import CAR
from iqdbc.iqpilot.car.fingerprints_ext import merge_fw_versions
from iqdbc.iqpilot.car.hyundai.fingerprints_ext import FW_VERSIONS_EXT
from iqdbc.lvbs.car.fingerprints_ext import extend_fw_versions
from iqdbc.lvbs.car.hyundai.fingerprints_ext import FW_VERSIONS_EXT
Ecu = CarParams.Ecu
@@ -1286,4 +1286,4 @@ FW_VERSIONS = {
},
}
FW_VERSIONS = merge_fw_versions(FW_VERSIONS, FW_VERSIONS_EXT)
FW_VERSIONS = extend_fw_versions(FW_VERSIONS, FW_VERSIONS_EXT)
+2 -2
View File
@@ -1,8 +1,8 @@
import crcmod
from iqdbc.car.hyundai.values import CAR, HyundaiFlags
from iqdbc.iqpilot.car.hyundai.escc import EnhancedSmartCruiseControl
from iqdbc.iqpilot.car.hyundai.lead_data_ext import CanLeadData
from iqdbc.lvbs.car.hyundai.escc import EnhancedSmartCruiseControl
from iqdbc.lvbs.car.hyundai.lead_data_ext import CanLeadData
hyundai_checksum = crcmod.mkCrcFun(0x11D, initCrc=0xFD, rev=False, xorOut=0xdf)
+1 -1
View File
@@ -3,7 +3,7 @@ import numpy as np
from iqdbc.car import CanBusBase
from iqdbc.car.crc import CRC16_XMODEM
from iqdbc.car.hyundai.values import HyundaiFlags
from iqdbc.iqpilot.car.hyundai.lead_data_ext import CanFdLeadData
from iqdbc.lvbs.car.hyundai.lead_data_ext import CanFdLeadData
class CanBus(CanBusBase):
+3 -3
View File
@@ -10,9 +10,9 @@ from iqdbc.car.hyundai.carcontroller import CarController
from iqdbc.car.hyundai.carstate import CarState
from iqdbc.car.hyundai.radar_interface import RadarInterface
from iqdbc.iqpilot.car.hyundai.escc import ESCC_MSG
from iqdbc.iqpilot.car.hyundai.longitudinal.helpers import get_longitudinal_tune
from iqdbc.iqpilot.car.hyundai.values import HyundaiFlagsIQ, HyundaiSafetyFlagsIQ
from iqdbc.lvbs.car.hyundai.escc import ESCC_MSG
from iqdbc.lvbs.car.hyundai.longitudinal.helpers import get_longitudinal_tune
from iqdbc.lvbs.car.hyundai.values import HyundaiFlagsIQ, HyundaiSafetyFlagsIQ
ButtonType = structs.CarState.ButtonEvent.Type
Ecu = structs.CarParams.Ecu
@@ -5,7 +5,7 @@ from iqdbc.car import Bus, structs
from iqdbc.car.interfaces import RadarInterfaceBase
from iqdbc.car.hyundai.values import DBC
from iqdbc.iqpilot.car.hyundai.radar_interface_ext import RadarInterfaceExt
from iqdbc.lvbs.car.hyundai.radar_interface_ext import RadarInterfaceExt
RADAR_START_ADDR = 0x500
RADAR_MSG_COUNT = 32
+1 -1
View File
@@ -8,7 +8,7 @@ from iqdbc.car.structs import CarParams
from iqdbc.car.docs_definitions import CarHarness, CarDocs, CarParts, SupportType
from iqdbc.car.fw_query_definitions import FwQueryConfig, Request, p16
from iqdbc.iqpilot.car.hyundai.values import HyundaiFlagsIQ
from iqdbc.lvbs.car.hyundai.values import HyundaiFlagsIQ
Ecu = CarParams.Ecu
+1 -1
View File
@@ -18,7 +18,7 @@ from iqdbc.car.values import PLATFORMS
from iqdbc.can import CANParser
from iqdbc.car.carlog import carlog
from iqdbc.iqpilot.car.interfaces import CarInterfaceBaseIQ
from iqdbc.lvbs.car.interfaces import CarInterfaceBaseIQ
GearShifter = structs.CarState.GearShifter
ButtonType = structs.CarState.ButtonEvent.Type
+1 -1
View File
@@ -5,7 +5,7 @@ from iqdbc.car import Bus, create_button_events, structs
from iqdbc.car.common.conversions import Conversions as CV
from iqdbc.car.interfaces import CarStateBase
from iqdbc.car.nissan.values import CAR, DBC, CarControllerParams
from iqdbc.iqpilot.car.nissan.carstate_ext import CarStateExt
from iqdbc.lvbs.car.nissan.carstate_ext import CarStateExt
ButtonType = structs.CarState.ButtonEvent.Type
+1 -1
View File
@@ -3,7 +3,7 @@ from iqdbc.car.interfaces import CarInterfaceBase
from iqdbc.car.nissan.carcontroller import CarController
from iqdbc.car.nissan.carstate import CarState
from iqdbc.car.nissan.values import CAR, NissanSafetyFlags
from iqdbc.iqpilot.car.nissan.values import NissanSafetyFlagsIQ
from iqdbc.lvbs.car.nissan.values import NissanSafetyFlagsIQ
class CarInterface(CarInterfaceBase):
CarState = CarState
+1 -1
View File
@@ -6,7 +6,7 @@ from iqdbc.car.interfaces import CarControllerBase
from iqdbc.car.rivian.riviancan import create_lka_steering, create_longitudinal, create_wheel_touch, create_adas_status
from iqdbc.car.rivian.values import CarControllerParams
from iqdbc.iqpilot.car.rivian.aol import AolCarController
from iqdbc.lvbs.car.rivian.aol import AolCarController
class CarController(CarControllerBase, AolCarController):
+1 -1
View File
@@ -4,7 +4,7 @@ from iqdbc.car import Bus, structs
from iqdbc.car.interfaces import CarStateBase
from iqdbc.car.rivian.values import DBC, GEAR_MAP
from iqdbc.car.common.conversions import Conversions as CV
from iqdbc.iqpilot.car.rivian.carstate_ext import CarStateExt
from iqdbc.lvbs.car.rivian.carstate_ext import CarStateExt
GearShifter = structs.CarState.GearShifter
+1 -1
View File
@@ -4,7 +4,7 @@ from iqdbc.car.rivian.carcontroller import CarController
from iqdbc.car.rivian.carstate import CarState
from iqdbc.car.rivian.radar_interface import RadarInterface
from iqdbc.car.rivian.values import RivianSafetyFlags
from iqdbc.iqpilot.car.rivian.values import RivianFlagsIQ
from iqdbc.lvbs.car.rivian.values import RivianFlagsIQ
class CarInterface(CarInterfaceBase):
+4 -4
View File
@@ -6,7 +6,7 @@ from iqdbc.car.interfaces import CarControllerBase
from iqdbc.car.subaru import subarucan
from iqdbc.car.subaru.values import DBC, GLOBAL_ES_ADDR, CanBus, CarControllerParams, SubaruFlags
from iqdbc.iqpilot.car.subaru.stop_and_go import SnGCarController
from iqdbc.lvbs.car.subaru.stop_and_go import IQStopAndGoController
# FIXME: These limits aren't exact. The real limit is more than likely over a larger time period and
# involves the total steering angle change rather than rate, but these limits work well for now
@@ -14,10 +14,10 @@ MAX_STEER_RATE = 25 # deg/s
MAX_STEER_RATE_FRAMES = 7 # tx control frames needed before torque can be cut
class CarController(CarControllerBase, SnGCarController):
class CarController(CarControllerBase, IQStopAndGoController):
def __init__(self, dbc_names, CP, CP_IQ):
CarControllerBase.__init__(self, dbc_names, CP, CP_IQ)
SnGCarController.__init__(self, CP, CP_IQ)
IQStopAndGoController.__init__(self, CP, CP_IQ)
self.apply_torque_last = 0
self.cruise_button_prev = 0
@@ -139,7 +139,7 @@ class CarController(CarControllerBase, SnGCarController):
if self.frame % 2 == 0:
can_sends.append(subarucan.create_es_static_2(self.packer))
can_sends.extend(SnGCarController.create_stop_and_go(self, self.packer, CC, CS, self.frame))
can_sends.extend(IQStopAndGoController.create_stop_and_go(self, self.packer, CC, CS, self.frame))
new_actuators = actuators.as_builder()
new_actuators.torque = self.apply_torque_last / self.p.STEER_MAX
+5 -5
View File
@@ -6,15 +6,15 @@ from iqdbc.car.interfaces import CarStateBase
from iqdbc.car.subaru.values import DBC, CanBus, SubaruFlags
from iqdbc.car import CanSignalRateCalculator
from iqdbc.iqpilot.car.subaru.aol import AolCarState
from iqdbc.iqpilot.car.subaru.stop_and_go import SnGCarState
from iqdbc.lvbs.car.subaru.aol import AolCarState
from iqdbc.lvbs.car.subaru.stop_and_go import IQStopAndGoState
class CarState(CarStateBase, AolCarState, SnGCarState):
class CarState(CarStateBase, AolCarState, IQStopAndGoState):
def __init__(self, CP, CP_IQ):
CarStateBase.__init__(self, CP, CP_IQ)
AolCarState.__init__(self, CP, CP_IQ)
SnGCarState.__init__(self, CP, CP_IQ)
IQStopAndGoState.__init__(self, CP, CP_IQ)
can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt])
self.shifter_values = can_define.dv["Transmission"]["Gear"]
@@ -144,7 +144,7 @@ class CarState(CarStateBase, AolCarState, SnGCarState):
self.es_infotainment_msg = copy.copy(cp_cam.vl["ES_Infotainment"])
AolCarState.update_aol(self, ret, can_parsers)
SnGCarState.update(self, ret, can_parsers)
IQStopAndGoState.update(self, ret, can_parsers)
return ret, ret_iq
+1 -1
View File
@@ -7,7 +7,7 @@ from iqdbc.car.tesla.teslacan import TeslaCAN
from iqdbc.car.tesla.values import CarControllerParams
from iqdbc.car.vehicle_model import VehicleModel
from openpilot.iqpilot.selfdrive.car.enhanced_stock_longitudinal_control import get_set_speed_kph_from_params
from iqdbc.iqpilot.car.tesla.coop_steering import CoopSteeringCarController
from iqdbc.lvbs.car.tesla.coop_steering import CoopSteeringCarController
def get_safety_CP():
+1 -1
View File
@@ -7,7 +7,7 @@ from iqdbc.car.interfaces import CarStateBase
from iqdbc.car.tesla.teslacan import get_steer_ctrl_type
from iqdbc.car.tesla.values import DBC, CANBUS, GEAR_MAP, STEER_THRESHOLD, TeslaFlags
from iqdbc.iqpilot.car.tesla.carstate_ext import CarStateExt
from iqdbc.lvbs.car.tesla.carstate_ext import CarStateExt
ButtonType = structs.CarState.ButtonEvent.Type
+1 -1
View File
@@ -5,7 +5,7 @@ from iqdbc.car.tesla.carstate import CarState
from iqdbc.car.tesla.values import TeslaSafetyFlags, TeslaFlags, CANBUS, CAR, DBC, FSD_14_FW, Ecu
from iqdbc.car.tesla.radar_interface import RadarInterface, RADAR_START_ADDR
from iqdbc.iqpilot.car.tesla.values import TeslaFlagsIQ, TeslaSafetyFlagsIQ
from iqdbc.lvbs.car.tesla.values import TeslaFlagsIQ, TeslaSafetyFlagsIQ
class CarInterface(CarInterfaceBase):
+2 -2
View File
@@ -13,8 +13,8 @@ from iqdbc.car.toyota.values import CAR, NO_STOP_TIMER_CAR, TSS2_CAR, \
UNSUPPORTED_DSU_CAR
from iqdbc.can import CANPacker
from iqdbc.iqpilot.car.toyota.gas_interceptor import GasInterceptorCarController
from iqdbc.iqpilot.car.toyota.values import ToyotaFlagsIQ
from iqdbc.lvbs.car.toyota.gas_interceptor import GasInterceptorCarController
from iqdbc.lvbs.car.toyota.values import ToyotaFlagsIQ
Ecu = structs.CarParams.Ecu
LongCtrlState = structs.CarControl.Actuators.LongControlState
+2 -2
View File
@@ -8,8 +8,8 @@ from iqdbc.car.interfaces import CarStateBase
from iqdbc.car.toyota.values import ToyotaFlags, CAR, DBC, STEER_THRESHOLD, NO_STOP_TIMER_CAR, \
TSS2_CAR, RADAR_ACC_CAR, EPS_SCALE, UNSUPPORTED_DSU_CAR, \
SECOC_CAR
from iqdbc.iqpilot.car.toyota.carstate_ext import CarStateExt
from iqdbc.iqpilot.car.toyota.values import ToyotaFlagsIQ
from iqdbc.lvbs.car.toyota.carstate_ext import CarStateExt
from iqdbc.lvbs.car.toyota.values import ToyotaFlagsIQ
ButtonType = structs.CarState.ButtonEvent.Type
SteerControlType = structs.CarParams.SteerControlType
+3 -3
View File
@@ -2,8 +2,8 @@
from iqdbc.car.structs import CarParams
from iqdbc.car.toyota.values import CAR
from iqdbc.iqpilot.car.fingerprints_ext import merge_fw_versions
from iqdbc.iqpilot.car.toyota.fingerprints_ext import FW_VERSIONS_EXT
from iqdbc.lvbs.car.fingerprints_ext import extend_fw_versions
from iqdbc.lvbs.car.toyota.fingerprints_ext import FW_VERSIONS_EXT
Ecu = CarParams.Ecu
@@ -1889,4 +1889,4 @@ FW_VERSIONS = {
},
}
FW_VERSIONS = merge_fw_versions(FW_VERSIONS, FW_VERSIONS_EXT)
FW_VERSIONS = extend_fw_versions(FW_VERSIONS, FW_VERSIONS_EXT)
+1 -1
View File
@@ -7,7 +7,7 @@ from iqdbc.car.toyota.values import Ecu, CAR, DBC, ToyotaFlags, CarControllerPar
ToyotaSafetyFlags, UNSUPPORTED_DSU_CAR
from iqdbc.car.disable_ecu import disable_ecu
from iqdbc.car.interfaces import CarInterfaceBase
from iqdbc.iqpilot.car.toyota.values import ToyotaFlagsIQ, ToyotaSafetyFlagsIQ
from iqdbc.lvbs.car.toyota.values import ToyotaFlagsIQ, ToyotaSafetyFlagsIQ
SteerControlType = structs.CarParams.SteerControlType
@@ -1,7 +1,7 @@
from iqdbc.car import gen_empty_fingerprint, structs
from iqdbc.car.toyota.interface import CarInterface
from iqdbc.car.toyota.values import CAR, ToyotaFlags
from iqdbc.iqpilot.car.toyota.values import ToyotaFlagsIQ
from iqdbc.lvbs.car.toyota.values import ToyotaFlagsIQ
def test_forced_secoc_toyota_clears_dashcam_mode():
@@ -8,7 +8,7 @@ from collections import namedtuple
from iqdbc.car import Bus, structs
from iqdbc.car.chrysler.values import RAM_CARS
from iqdbc.iqpilot.aol_base import AolCarStateBase
from iqdbc.lvbs.aol_base import AolCarStateBase
from iqdbc.can.parser import CANParser
AolDataIQ = namedtuple("AolDataIQ",
@@ -4,7 +4,7 @@ Copyright © IQ.Lvbs, apart of Project Teal Lvbs, All Rights Reserved, licensed
from iqdbc.car import structs
from iqdbc.car.interfaces import CarStateBase
from iqdbc.car.chrysler.values import RAM_DT
from iqdbc.iqpilot.car.chrysler.values_ext import ChryslerFlagsIQ
from iqdbc.lvbs.car.chrysler.values_ext import ChryslerFlagsIQ
GearShifter = structs.CarState.GearShifter
@@ -8,7 +8,7 @@ from enum import StrEnum
from iqdbc.car import Bus, structs
from iqdbc.can.parser import CANParser
from iqdbc.car.chrysler.values import RAM_HD
from iqdbc.iqpilot.car.chrysler.values_ext import BUTTONS
from iqdbc.lvbs.car.chrysler.values_ext import BUTTONS
class CarStateExt:
@@ -3,7 +3,7 @@ Copyright © IQ.Lvbs, apart of Project Teal Lvbs, All Rights Reserved, licensed
"""
def merge_fw_versions(fw_versions, new_fw_versions):
def extend_fw_versions(fw_versions, new_fw_versions):
"""
Merge firmware versions by extending lists for matching ECUs,
adding all entries regardless of duplicates.
@@ -22,7 +22,7 @@ def merge_fw_versions(fw_versions, new_fw_versions):
return fw_versions
def merge_fingerprints(fingerprints, new_fingerprints):
def extend_fingerprints(fingerprints, new_fingerprints):
"""
Merge fingerprints by extending lists for matching keys,
adding all entries regardless of duplicates.
@@ -6,7 +6,7 @@ from enum import StrEnum
from iqdbc.car import Bus,structs
from iqdbc.iqpilot.aol_base import AolCarStateBase
from iqdbc.lvbs.aol_base import AolCarStateBase
from iqdbc.can.parser import CANParser
@@ -6,7 +6,7 @@ from enum import StrEnum
from iqdbc.car import Bus, structs
from iqdbc.car.common.conversions import Conversions as CV
from iqdbc.can.parser import CANParser
from iqdbc.iqpilot.car.gm.values_ext import GMFlagsIQ
from iqdbc.lvbs.car.gm.values_ext import GMFlagsIQ
class CarStateExt:
@@ -7,7 +7,7 @@ from math import exp
from iqdbc.car import structs
from iqdbc.car.common.basedir import BASEDIR
from iqdbc.car.gm.interface import CAR
from iqdbc.iqpilot.car.interfaces import LatControlInputs, NanoFFModel, TorqueFromLateralAccelCallbackTypeTorqueSpace
from iqdbc.lvbs.car.interfaces import LatControlInputs, NanoFFModel, TorqueFromLateralAccelCallbackTypeTorqueSpace
NON_LINEAR_TORQUE_PARAMS = {
CAR.CHEVROLET_BOLT_EUV: [2.6531724862969748, 1.0, 0.1919764879840985, 0.009054123646805178],

Some files were not shown because too many files have changed in this diff Show More