Skip to content
This repository was archived by the owner on May 1, 2024. It is now read-only.

Commit e48bf0e

Browse files
authored
Merge pull request #8 from eFiniLan/0813-model
0813 model
2 parents 709ba8a + 75411c7 commit e48bf0e

File tree

103 files changed

+14787
-3515
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

103 files changed

+14787
-3515
lines changed

.gitignore

+5
Original file line numberDiff line numberDiff line change
@@ -96,3 +96,8 @@ selfdrive/hybrid_modeld/models/supercombo.thneed
9696
selfdrive/hybrid_modeld/models/supercombo_badweights.thneed
9797
selfdrive/hybrid_modeld/thneed/compile
9898
selfdrive/loggerd/bootlog
99+
100+
selfdrive/legacy_modeld/_modeld
101+
selfdrive/legacy_modeld/models/supercombo.thneed
102+
selfdrive/legacy_modeld/models/supercombo_badweights.thneed
103+
selfdrive/legacy_modeld/thneed/compile

.python-version

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.11.4
1+
3.8.10

Dockerfile.openpilot_base

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ ENV LANGUAGE en_US:en
1313
ENV LC_ALL en_US.UTF-8
1414

1515
ENV POETRY_VIRTUALENVS_CREATE=false
16-
ENV PYENV_VERSION=3.11.4
16+
ENV PYENV_VERSION=3.8.10
1717
ENV PYENV_ROOT="/root/.pyenv"
1818
ENV PATH="$PYENV_ROOT/bin:$PYENV_ROOT/shims:$PATH"
1919

SConstruct

+3-1
Original file line numberDiff line numberDiff line change
@@ -308,7 +308,6 @@ py_include = sysconfig.get_paths()['include']
308308
envCython = env.Clone()
309309
envCython["CPPPATH"] += [py_include, np.get_include()]
310310
envCython["CCFLAGS"] += ["-Wno-#warnings", "-Wno-shadow", "-Wno-deprecated-declarations"]
311-
envCython["CCFLAGS"].remove("-Werror")
312311

313312
envCython["LIBS"] = []
314313
if arch == "Darwin":
@@ -493,10 +492,13 @@ SConscript(['common/transformations/SConscript'])
493492

494493
SConscript(['selfdrive/boardd/SConscript'])
495494
SConscript(['selfdrive/controls/lib/lateral_mpc_lib/SConscript'])
495+
SConscript(['selfdrive/controls/lib/legacy_lateral_mpc_lib/SConscript'])
496496
SConscript(['selfdrive/controls/lib/longitudinal_mpc_lib/SConscript'])
497+
SConscript(['selfdrive/controls/lib/legacy_longitudinal_mpc_lib/SConscript'])
497498
SConscript(['selfdrive/locationd/SConscript'])
498499
# SConscript(['selfdrive/navd/SConscript'])
499500
SConscript(['selfdrive/hybrid_modeld/SConscript'])
501+
SConscript(['selfdrive/legacy_modeld/SConscript'])
500502
SConscript(['selfdrive/ui/SConscript'])
501503

502504
if (arch in ['x86_64', 'aarch64', 'Darwin'] and Dir('#tools/cabana/').exists()) or GetOption('extras'):

common/params.cc

+1
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,7 @@ std::unordered_map<std::string, uint32_t> keys = {
207207
{"VisionRadarToggle", PERSISTENT},
208208
{"WheeledBody", PERSISTENT},
209209

210+
{"dp_0813", PERSISTENT},
210211
{"dp_no_gps_ctrl", PERSISTENT},
211212
{"dp_no_fan_ctrl", PERSISTENT},
212213
{"dp_logging", PERSISTENT},

launch_env.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export OPENBLAS_NUM_THREADS=1
77
export VECLIB_MAXIMUM_THREADS=1
88

99
if [ -z "$AGNOS_VERSION" ]; then
10-
export AGNOS_VERSION="8.2"
10+
export AGNOS_VERSION="7.1"
1111
fi
1212

1313
if [ -z "$REQUIRED_NEOS_VERSION" ]; then

mypy.ini

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
[mypy]
2+
python_version = 3.8
3+
plugins = numpy.typing.mypy_plugin
4+
files = body, common, docs, scripts, selfdrive, site_scons, system, tools
5+
exclude = ^(cereal/)|(opendbc/)|(panda/)|(laika/)|(laika_repo/)|(rednose/)|(rednose_repo/)|(tinygrad/)|(tinygrad_repo/)|(xx/)
6+
7+
; third-party packages
8+
ignore_missing_imports = True
9+
10+
; helpful warnings
11+
warn_redundant_casts = True
12+
warn_unreachable = True
13+
warn_unused_ignores = True
14+
15+
; restrict dynamic typing
16+
warn_return_any = True

poetry.lock

+8,276-3,307
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pyproject.toml

+160-134
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,3 @@
1-
[tool.pytest.ini_options]
2-
minversion = "6.0"
3-
addopts = "--ignore=panda/ --ignore=rednose_repo/ --ignore=tinygrad_repo/ --ignore=laika_repo/"
4-
python_files = "test_*.py"
5-
timeout = "30" # you get this long by default
6-
7-
[tool.mypy]
8-
python_version = "3.11"
9-
plugins = [
10-
"numpy.typing.mypy_plugin",
11-
]
12-
exclude = [
13-
"body/",
14-
"cereal/",
15-
"opendbc/",
16-
"panda/",
17-
"laika/",
18-
"laika_repo/",
19-
"rednose/",
20-
"rednose_repo/",
21-
"tinygrad/",
22-
"tinygrad_repo/",
23-
"third_party/",
24-
]
25-
26-
# third-party packages
27-
ignore_missing_imports=true
28-
29-
# helpful warnings
30-
warn_redundant_casts=true
31-
warn_unreachable=true
32-
warn_unused_ignores=true
33-
34-
# restrict dynamic typing
35-
warn_return_any=true
36-
37-
381
[tool.poetry]
392
name = "openpilot"
403
version = "0.1.0"
@@ -47,113 +10,176 @@ documentation = "https://docs.comma.ai"
4710

4811

4912
[tool.poetry.dependencies]
50-
python = "~3.11"
51-
atomicwrites = "*"
52-
aiohttp = "*"
53-
aiortc = "*"
13+
python = "~3.8"
14+
atomicwrites = "^1.4.0"
5415
casadi = "==3.6.3"
55-
cffi = "*"
56-
control = "*"
57-
crcmod = "*"
58-
cryptography = "*"
59-
Cython = "*"
60-
future-fstrings = "*" # for acados
16+
cffi = "^1.15.1"
17+
crcmod = "^1.7"
18+
cryptography = "^37.0.4"
19+
Cython = "^0.29.30"
20+
flake8 = "^4.0.1"
21+
Flask = "^2.1.2"
22+
future-fstrings = "^1.2.0" # for acados
23+
gunicorn = "^20.1.0"
6124
hatanaka = "==2.4"
62-
hexdump = "*"
63-
Jinja2 = "*"
64-
json-rpc = "*"
65-
libusb1 = "*"
66-
numpy = "*"
67-
onnx = ">=1.14.0"
68-
onnxruntime-gpu = { version = ">=1.15.1", platform = "linux", markers = "platform_machine == 'x86_64'" }
69-
pillow = "*"
70-
psutil = "*"
71-
pyaudio = "*"
72-
pycapnp = "*"
73-
pycryptodome = "*"
74-
pydub = "*"
75-
PyJWT = "*"
76-
pyopencl = "*"
77-
pyserial = "*"
78-
PyYAML = "*"
79-
pyzmq = "*"
80-
requests = "*"
81-
scons = "*"
82-
sentry-sdk = "==1.28.1" # needs to be updated with AGNOS
83-
setproctitle = "*"
84-
smbus2 = "*"
85-
sounddevice = "*"
86-
spidev = { version = "*", platform = "linux" }
87-
spidev2 = { version = "*", platform = "linux" }
88-
sympy = "*"
89-
timezonefinder = "*"
90-
tqdm = "*"
91-
urllib3 = "*"
92-
websocket_client = "*"
93-
polyline = "*"
25+
hexdump = "^3.3"
26+
Jinja2 = "^3.1.2"
27+
json-rpc = "^1.13.0"
28+
libusb1 = "^3.0.0"
29+
nose = "^1.3.7"
30+
numpy = "^1.23.0"
31+
onnx = "^1.14.0"
32+
onnxruntime-gpu = { version = "^1.15.1", platform = "linux", markers = "platform_machine == 'x86_64'" }
33+
pillow = "^9.2.0"
34+
poetry = "==1.2.2"
35+
protobuf = "==3.20.3"
36+
psutil = "^5.9.1"
37+
pycapnp = "==1.1.0"
38+
pycryptodome = "^3.15.0"
39+
PyJWT = "^2.5.0"
40+
pyopencl = "^2022.2.4"
41+
pyserial = "^3.5"
42+
python-dateutil = "^2.8.2"
43+
PyYAML = "^6.0"
44+
pyzmq = "^23.2.0"
45+
requests = "^2.28.1"
46+
scons = "^4.3.0"
47+
sentry-sdk = "^1.6.0"
48+
setproctitle = "^1.2.3"
49+
six = "^1.16.0"
50+
smbus2 = "^0.4.2"
51+
sounddevice = "^0.4.5"
52+
spidev = { version = "^3.6", platform = "linux" }
53+
spidev2 = { version = "^0.9.0", platform = "linux" }
54+
sympy = "^1.10.1"
55+
timezonefinder = "^6.0.1"
56+
tqdm = "^4.64.0"
57+
urllib3 = "^1.26.10"
58+
utm = "^0.7.0"
59+
websocket_client = "^1.3.3"
60+
polyline = "^1.4.0"
9461
sconscontrib = {git = "https://github.com/SCons/scons-contrib.git"}
9562

9663

9764
[tool.poetry.group.dev.dependencies]
98-
av = "*"
65+
av = "^9.2.0"
9966
azure-storage-blob = "~2.1"
100-
breathe = "*"
101-
carla = { url = "https://github.com/commaai/carla/releases/download/3.11.4/carla-0.9.14-cp311-cp311-linux_x86_64.whl", platform = "linux", markers = "platform_machine == 'x86_64'" }
102-
coverage = "*"
103-
dictdiffer = "*"
104-
ft4222 = "*"
67+
breathe = "^4.34.0"
68+
carla = { version = "==0.9.13", platform = "linux", markers = "platform_machine == 'x86_64'" }
69+
control = "^0.9.2"
70+
coverage = "^6.4.1"
71+
dictdiffer = "^0.9.0"
72+
fastcluster = "^1.2.6"
73+
ft4222 = "^1.4.1"
74+
hexdump = "^3.3"
10575
hypothesis = "==6.46.7"
106-
inputs = "*"
107-
lru-dict = "*"
108-
markdown-it-py = "*"
109-
matplotlib = "*"
110-
mpld3 = "*"
111-
mypy = "*"
112-
myst-parser = "*"
113-
natsort = "*"
114-
opencv-python-headless = "*"
115-
pandas = "*"
116-
parameterized = "^0.8"
117-
pprofile = "*"
118-
pre-commit = "*"
119-
pycurl = "*"
120-
pygame = "*"
121-
pyprof2calltree = "*"
122-
pytest = "*"
123-
pytest-cov = "*"
124-
pytest-subtests = "*"
125-
pytest-xdist = "*"
126-
scipy = "*"
127-
sphinx = "*"
128-
sphinx-rtd-theme = "*"
129-
sphinx-sitemap = "*"
130-
tabulate = "*"
131-
tenacity = "*"
132-
types-atomicwrites = "*"
133-
types-certifi = "*"
134-
types-pycurl = "*"
135-
types-PyYAML = "*"
136-
types-requests = "*"
137-
types-tabulate = "*"
138-
pyqt5 = { version = "*", markers = "platform_machine == 'x86_64'" } # no aarch64 wheels for macOS/linux
76+
inputs = "^0.5"
77+
lru-dict = "^1.1.7"
78+
lxml = "^4.9.1"
79+
markdown-it-py = "^2.1.0"
80+
matplotlib = "^3.5.2"
81+
mpld3 = "^0.5.8"
82+
mypy = "^0.961"
83+
myst-parser = "^0.18.0"
84+
natsort = "^8.1.0"
85+
numpy = "^1.23.0"
86+
opencv-python-headless = { url = "https://github.com/commaai/opencv-python-builder/releases/download/4.5.5.64%2Bcu118/opencv_python_headless-4.5.5.64-cp38-cp38-manylinux_2_31_x86_64.whl", platform = "linux" }
87+
pandas = "^1.4.3"
88+
parameterized = "^0.8.1"
89+
paramiko = "^2.11.0"
90+
pprofile = "^2.1.0"
91+
pre-commit = "^2.19.0"
92+
pycurl = "^7.45.1"
93+
pygame = "^2.1.2"
94+
pylint = "^2.17.4"
95+
pyprof2calltree = "^1.4.5"
96+
pytest = "^7.1.2"
97+
pytest-xdist = "^2.5.0"
98+
reverse_geocoder = "^1.5.1"
99+
scipy = "^1.8.1"
100+
sphinx = "^5.0.2"
101+
sphinx-rtd-theme = "^1.0.0"
102+
sphinx-sitemap = "^2.2.0"
103+
tabulate = "^0.8.10"
104+
tenacity = "^8.0.1"
105+
types-atomicwrites = "^1.4.5"
106+
types-certifi = "^2021.10.8"
107+
types-pycurl = "^7.45.1"
108+
types-python-dateutil = "^2.8.19.13"
109+
types-PyYAML = "^6.0"
110+
types-requests = "^2.28.11"
111+
types-tabulate = "^0.8.10"
112+
113+
114+
[tool.poetry.group.xx]
115+
optional = true
116+
117+
[tool.poetry.group.xx.dependencies]
118+
aenum = "^3.1.11"
119+
aiohttp = "^3.8.1"
120+
albumentations = "^1.2.1"
121+
apex = { url = "https://github.com/commaai/apex/releases/download/pytorch2.0.0%2Bcu11.8/apex-0.1-cp38-cp38-linux_x86_64.whl" }
122+
azure-cli-core = "^2.38.0"
123+
azure-common = "^1.1.28"
124+
azure-core = "^1.24.2"
125+
azure-nspkg = "~3.0"
126+
azure-storage-common = "~2.1"
127+
azure-storage-nspkg = "~3.1"
128+
blosc = "==1.9.2"
129+
cloudpickle = "^2.1.0"
130+
configargparse = "^1.5.3"
131+
cupy-cuda11x = "^11.6.0"
132+
datadog = "^0.44.0"
133+
dotmap = "^1.3.30"
134+
einops = "^0.5.0"
135+
elasticsearch = "^8.3.1"
136+
Flask-Cors = "^3.0.10"
137+
Flask-SocketIO = "^5.2.0"
138+
GeoAlchemy2 = "^0.12.1"
139+
imageio = "^2.19.5"
140+
influxdb-client = "^1.30.0"
141+
ipykernel = "^6.15.1"
142+
ipython = "^8.4.0"
143+
joblib = "^1.1.0"
144+
json-logging-py = "^0.2"
145+
jupyter = "^1.0.0"
146+
jupyterlab = "^3.4.4"
147+
jupyterlab-vim = "^0.15.1"
148+
Markdown = "^3.4.1"
149+
msgpack-python = "^0.5.6"
150+
networkx = "~2.8"
151+
nvidia-ml-py3 = "^7.352.0"
152+
onnx2torch = "^1.5.4"
153+
onnxoptimizer = "^0.3.1"
154+
osmium = "^3.3.0"
155+
pillow-avif-plugin = "^1.2.2"
156+
pipenv = "==2022.10.12"
157+
plotly = "^5.9.0"
158+
pycuda = "^2022.1"
159+
Pygments = "^2.12.0"
160+
PyMySQL = "~0.9"
161+
pyproj = "^3.3.1"
162+
python-logstash = "^0.4.8"
163+
redis = "^4.3.4"
164+
s2sphere = "^0.2.5"
165+
scikit-image = "^0.19.3"
166+
scikit-learn = "^1.1.1"
167+
segmentation-models-pytorch = "==0.3.2"
168+
simplejson = "^3.17.6"
169+
SQLAlchemy = "^1.4.39"
170+
torch = { url = "https://download.pytorch.org/whl/cu118/torch-2.0.0%2Bcu118-cp38-cp38-linux_x86_64.whl" }
171+
torchsummary = "^1.5.1"
172+
torchvision = { url = "https://download.pytorch.org/whl/cu118/torchvision-0.15.1%2Bcu118-cp38-cp38-linux_x86_64.whl" }
173+
triton = "^2.0.0"
174+
Werkzeug = "^2.1.2"
175+
zerorpc = { git = "https://github.com/commaai/zerorpc-python.git", branch = "master" }
176+
omegaconf = "^2.3.0"
177+
osmnx = "==1.2.2"
178+
tritonclient = {version = "2.28.0", extras = ["http"]}
179+
tensorrt = "^8.6.0"
180+
transformers = "^4.29.2"
139181

140182

141183
[build-system]
142184
requires = ["poetry-core"]
143185
build-backend = "poetry.core.masonry.api"
144-
145-
# https://beta.ruff.rs/docs/configuration/#using-pyprojecttoml
146-
[tool.ruff]
147-
select = ["E", "F", "W", "PIE", "C4", "ISC", "RUF100", "A", "B"]
148-
ignore = ["W292", "E741", "E402", "C408", "ISC003", "B027", "B024"]
149-
line-length = 160
150-
target-version="py311"
151-
exclude = [
152-
"panda",
153-
"opendbc",
154-
"laika_repo",
155-
"rednose_repo",
156-
"tinygrad_repo",
157-
"third_party",
158-
]
159-
flake8-implicit-str-concat.allow-multiline=false

selfdrive/assets/offroad/icon_ai.png

21.8 KB
Loading

0 commit comments

Comments
 (0)