autorope / donkeycar

Open source hardware and software platform to build a small scale self driving car.
http://www.donkeycar.com
MIT License
3.13k stars 1.29k forks source link

[solved] [tf_2_9] Unable to open CSICamera. #1123

Closed BrianHenryIE closed 1 year ago

BrianHenryIE commented 1 year ago

$ python ~/mycar/manage.py drive

________             ______                   _________              
___  __ \_______________  /___________  __    __  ____/_____ ________
__  / / /  __ \_  __ \_  //_/  _ \_  / / /    _  /    _  __ `/_  ___/
_  /_/ // /_/ /  / / /  ,<  /  __/  /_/ /     / /___  / /_/ /_  /    
/_____/ \____//_/ /_//_/|_| \___/_\__, /      \____/  \__,_/ /_/     
                                 /____/                              

using donkey v5.0.dev1 ...
INFO:donkeycar.config:loading config file: /home/brian/mycar/config.py
INFO:donkeycar.config:loading personal config over-rides from myconfig.py
INFO:__main__:PID: 8161
WARNING:donkeycar.parts.pins:pigpio was not imported.
cfg.CAMERA_TYPE CSIC
INFO:__main__:cfg.CAMERA_TYPE CSIC
Traceback (most recent call last):
  File "/home/brian/mycar/manage.py", line 1142, in <module>
    drive(cfg, model_path=args['--model'], use_joystick=args['--js'],
  File "/home/brian/mycar/manage.py", line 104, in drive
    add_camera(V, cfg, camera_type)
  File "/home/brian/mycar/manage.py", line 880, in add_camera
    cam = get_camera(cfg)
  File "/home/brian/mycar/manage.py", line 808, in get_camera
    cam = CSICamera(image_w=cfg.IMAGE_W, image_h=cfg.IMAGE_H, image_d=cfg.IMAGE_DEPTH,
  File "/home/brian/projects/donkeycar/donkeycar/parts/camera.py", line 218, in __init__
    self.init_camera()
  File "/home/brian/projects/donkeycar/donkeycar/parts/camera.py", line 246, in init_camera
    raise RuntimeError("Unable to open CSICamera.")
RuntimeError: Unable to open CSICamera.

I'm using a newer Jetson Nano, i.e. with two camera inputs, and the TF2.9 branch.

I was able to get past the error by adding to donkeycar/parts/camera.py:237, CSICamera::init_camera():

if self.camera:
    self.camera.open(0)

I'm having another problem now so I'm not 100% sure this is fixed.

TCIII commented 1 year ago

@BrianHenryIE,

Try running the following commands to ensure that GStreamer is installed on your Nano:

python
>>>import cv2
>>>print(cv2.getBuildInformation())   // Check for the GStreamer installed version which should be 1.14.5.

TCIII

TCIII commented 1 year ago

@BrianHenryIE, Here is the CSIC camera output from running manage.py drive on my Nano 4GB running the tf_2_9 branch:

cfg.CAMERA_TYPE CSIC
INFO:__main__:cfg.CAMERA_TYPE CSIC
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected...
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 3264 x 2464 FR = 21.000000 fps Duration = 47619048 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 3264 x 1848 FR = 28.000001 fps Duration = 35714284 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1920 x 1080 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1640 x 1232 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1280 x 720 FR = 59.999999 fps Duration = 16666667 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1280 x 720 FR = 120.000005 fps Duration = 8333333 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: Running with following settings:
   Camera index = 0
   Camera mode  = 5
   Output Stream W = 1280 H = 720
   seconds to Run    = 0
   Frame Rate = 120.000005
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
[ WARN:0@3.619] global /home/thomas/opencv/modules/videoio/src/cap_gstreamer.cpp (1405) open OpenCV | GStreamer warning: Cannot query video position: status=0, value=-1, duration=-1
INFO:donkeycar.parts.camera:CSICamera opened...
INFO:donkeycar.parts.camera:...warming camera
INFO:donkeycar.parts.camera:CSICamera ready.
INFO:donkeycar.vehicle:Adding part CSICamera.

I would hazard a guess that either the CSIC camera ribbon cable is not connected to your Nano correctly or that GStreamer is not installed. TCIII

BrianHenryIE commented 1 year ago
python
>>>import cv2
>>>print(cv2.getBuildInformation())
GStreamer:                   NO

Full output:

General configuration for OpenCV 4.7.0 =====================================
  Version control:               4.7.0

  Platform:
    Timestamp:                   2023-02-22T13:23:24Z
    Host:                        Linux 5.3.0-28-generic aarch64
    CMake:                       3.25.2
    CMake generator:             Unix Makefiles
    CMake build tool:            /bin/gmake
    Configuration:               Release

  CPU/HW features:
    Baseline:                    NEON FP16

  C/C++:
    Built as dynamic libs?:      NO
    C++ standard:                11
    C++ Compiler:                /opt/rh/devtoolset-10/root/usr/bin/c++  (ver 10.2.1)
    C++ flags (Release):         -Wl,-strip-all   -fsigned-char -W -Wall -Wreturn-type -Wnon-virtual-dtor -Waddress -Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -fvisibility-inlines-hidden -O3 -DNDEBUG  -DNDEBUG
    C++ flags (Debug):           -Wl,-strip-all   -fsigned-char -W -Wall -Wreturn-type -Wnon-virtual-dtor -Waddress -Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -fvisibility-inlines-hidden -g  -O0 -DDEBUG -D_DEBUG
    C Compiler:                  /opt/rh/devtoolset-10/root/usr/bin/cc
    C flags (Release):           -Wl,-strip-all   -fsigned-char -W -Wall -Wreturn-type -Waddress -Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wuninitialized -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -O3 -DNDEBUG  -DNDEBUG
    C flags (Debug):             -Wl,-strip-all   -fsigned-char -W -Wall -Wreturn-type -Waddress -Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wuninitialized -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -g  -O0 -DDEBUG -D_DEBUG
    Linker flags (Release):      -L/ffmpeg_build/lib  -Wl,--gc-sections -Wl,--as-needed -Wl,--no-undefined  
    Linker flags (Debug):        -L/ffmpeg_build/lib  -Wl,--gc-sections -Wl,--as-needed -Wl,--no-undefined  
    ccache:                      YES
    Precompiled headers:         NO
    Extra dependencies:          /lib64/libopenblas.so /usr/local/lib/libpng.so /lib64/libz.so dl m pthread rt
    3rdparty dependencies:       libprotobuf ade ittnotify libjpeg-turbo libwebp libtiff libopenjp2 IlmImf quirc tegra_hal

  OpenCV modules:
    To be built:                 calib3d core dnn features2d flann gapi highgui imgcodecs imgproc ml objdetect photo python3 stitching video videoio
    Disabled:                    world
    Disabled by dependency:      -
    Unavailable:                 java python2 ts
    Applications:                -
    Documentation:               NO
    Non-free algorithms:         NO

  GUI:                           NONE
    VTK support:                 NO

  Media I/O: 
    ZLib:                        /lib64/libz.so (ver 1.2.7)
    JPEG:                        libjpeg-turbo (ver 2.1.3-62)
    WEBP:                        build (ver encoder: 0x020f)
    PNG:                         /usr/local/lib/libpng.so (ver 1.6.37)
    TIFF:                        build (ver 42 - 4.2.0)
    JPEG 2000:                   build (ver 2.4.0)
    OpenEXR:                     build (ver 2.3.0)
    HDR:                         YES
    SUNRASTER:                   YES
    PXM:                         YES
    PFM:                         YES

  Video I/O:
    DC1394:                      NO
    FFMPEG:                      YES
      avcodec:                   YES (59.37.100)
      avformat:                  YES (59.27.100)
      avutil:                    YES (57.28.100)
      swscale:                   YES (6.7.100)
      avresample:                NO
    GStreamer:                   NO
    v4l/v4l2:                    YES (linux/videodev2.h)

  Parallel framework:            pthreads

  Trace:                         YES (with Intel ITT)

  Other third-party libraries:
    Lapack:                      YES (/lib64/libopenblas.so)
    Eigen:                       NO
    Custom HAL:                  YES (carotene (ver 0.0.1))
    Protobuf:                    build (3.19.1)

  OpenCL:                        YES (no extra features)
    Include path:                /io/opencv/3rdparty/include/opencl/1.2
    Link libraries:              Dynamic load

  Python 3:
    Interpreter:                 /opt/python/cp37-cp37m/bin/python3.7 (ver 3.7.16)
    Libraries:                   libpython3.7m.a (ver 3.7.16)
    numpy:                       /home/ci/.local/lib/python3.7/site-packages/numpy/core/include (ver 1.19.3)
    install path:                python/cv2/python-3

  Python (for build):            /bin/python2.7

  Java:                          
    ant:                         NO
    JNI:                         NO
    Java wrappers:               NO
    Java tests:                  NO

  Install to:                    /io/_skbuild/linux-aarch64-3.7/cmake-install
-----------------------------------------------------------------

I'm 99% sure I used -D WITH_GSTREAMER=ON when I installed OpenCV with CMake (I still have the text file open where I modified the command and copied it from).

I don't get the sensor modes as I start to drive the car:

using donkey v5.0.dev1 ...
INFO:donkeycar.config:loading config file: /home/brian/mycar/config.py
INFO:donkeycar.config:loading personal config over-rides from myconfig.py
INFO:__main__:PID: 8135
WARNING:donkeycar.parts.pins:pigpio was not imported.
cfg.CAMERA_TYPE CSIC
INFO:__main__:cfg.CAMERA_TYPE CSIC
INFO:donkeycar.parts.camera:CSICamera opened...
INFO:donkeycar.parts.camera:...warming camera
INFO:donkeycar.parts.camera:CSICamera ready.
INFO:donkeycar.vehicle:Adding part CSICamera.
INFO:donkeycar.parts.web_controller.web:Starting Donkey Server...

And the images that are recorded are just solid green.

0_cam_image_array_

And I tried the ribbon cable in both Jetson Nano connections.

I guess the best thing is to reinstall from scratch and ensure the CMake command is correct.

TCIII commented 1 year ago

@BrianHenryIE,

From your Full Output: You built opencv4.7 instead of opencv4.6, per the install instructions, and you are using Python 3.7 instead of Python 3.9: tf_2_9 jetson46.yml.

I have built opencv4.6 + GStreamer using the Q-Engineering manual install instructions and the accompanying modified CMake arguments four times for two Nano 4GBs and two Xavier NX 8GBs without issue once the CMake arguments were correctly determined.

Regards, TCIII

BrianHenryIE commented 1 year ago

Thanks. I think I know what happened. The traditional Donkey setup docs add a line to ~/.bashrc to activate the virtual environment on every boot/login. The newer TF29 branch ones don't. I already opened a PR to address this. I presume I rebooted during setup and continued setup under a Python 3.7 command prompt.

TCIII commented 1 year ago

@BrianHenryIE,

You must have missed this line, source ~/.bashrc, in the Nano JP4.6.1/2 instructions:

Step 3b: Setup Python Environment
The installation on JP 4.6.X is more tricky, because we need to use a newer version of tensorflow than what is packaged by NVidia for this OS version. Also, we need a compatible OpenCV version which needs to be built on the nano.

Step 1: Install mamba-forge
Download and install mambaforge. When you are asked to run conda init in the script, type yes.

wget https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Linux-aarch64.sh
chmod u+x ./Mambaforge-Linux-aarch64.sh
bash ./Mambaforge-Linux-aarch64.sh
source ~/.bashrc            // I believe that this is the line you are referring to?

Additionally, I don't know how you installed Python 3.7 if you were not in the virtual env as JP4.6.1/2 comes with Python 3.6.9?

TCIII

BrianHenryIE commented 1 year ago

I reinstalled everything, confirmed GStreamer was present, then ran pip install -e .[nano] --user pip because donkey wasn't working, and it seems to have disabled GStreamer.

I presume as I ran pip install it found opencv 3.7 as an available update and installed it.

Is there a conda and/or pip command to lock currently installed packages? I could edit donkeycar/setup.py to specify opencv 3.6 before I run it, but I know I'll be running pip install elsewhere so it'd be better to have a global lock.

And is there a way to reinstall 3.6 without rebuilding it? I presume the make clean command near the end of the Q-Engineering script means that's not possible!

I'm starting a fresh install on a faster SD card (U3 vs U1) now because my SSH shell wasn't always responding.

Python 3.9.16 | packaged by conda-forge | (main, Feb  1 2023, 22:05:40) 
[GCC 11.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> print(cv2.getBuildInformation()) 

General configuration for OpenCV 4.6.0 =====================================
  Version control:               unknown

  Extra modules:
    Location (extra):            /home/brian/opencv_contrib/modules
    Version control (extra):     unknown

  Platform:
    Timestamp:                   2023-04-20T04:50:47Z
    Host:                        Linux 4.9.299-tegra aarch64
    CMake:                       3.10.2
    CMake generator:             Unix Makefiles
    CMake build tool:            /usr/bin/make
    Configuration:               RELEASE

  CPU/HW features:
    Baseline:                    NEON FP16
      required:                  NEON

  C/C++:
    Built as dynamic libs?:      YES
    C++ standard:                11
    C++ Compiler:                /usr/bin/c++  (ver 7.5.0)
    C++ flags (Release):         -fsigned-char -ffast-math -W -Wall -Wreturn-type -Wnon-virtual-dtor -Waddress -Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -fvisibility-inlines-hidden -fopenmp -O3 -DNDEBUG  -DNDEBUG
    C++ flags (Debug):           -fsigned-char -ffast-math -W -Wall -Wreturn-type -Wnon-virtual-dtor -Waddress -Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -fvisibility-inlines-hidden -fopenmp -g  -O0 -DDEBUG -D_DEBUG
    C Compiler:                  /usr/bin/cc
    C flags (Release):           -fsigned-char -ffast-math -W -Wall -Wreturn-type -Waddress -Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wuninitialized -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -fopenmp -O3 -DNDEBUG  -DNDEBUG
    C flags (Debug):             -fsigned-char -ffast-math -W -Wall -Wreturn-type -Waddress -Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wuninitialized -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -fopenmp -g  -O0 -DDEBUG -D_DEBUG
    Linker flags (Release):      -Wl,--gc-sections -Wl,--as-needed -Wl,--no-undefined  
    Linker flags (Debug):        -Wl,--gc-sections -Wl,--as-needed -Wl,--no-undefined  
    ccache:                      NO
    Precompiled headers:         NO
    Extra dependencies:          m pthread cudart_static dl rt nppc nppial nppicc nppicom nppidei nppif nppig nppim nppist nppisu nppitc npps cublas cudnn cufft -L/usr/local/cuda/lib64 -L/usr/lib/aarch64-linux-gnu
    3rdparty dependencies:

  OpenCV modules:
    To be built:                 alphamat aruco barcode bgsegm bioinspired calib3d ccalib core cudaarithm cudabgsegm cudacodec cudafeatures2d cudafilters cudaimgproc cudalegacy cudaobjdetect cudaoptflow cudastereo cudawarping cudev datasets dnn dnn_objdetect dnn_superres dpm face features2d flann freetype fuzzy gapi hdf hfs highgui img_hash imgcodecs imgproc intensity_transform line_descriptor mcc ml objdetect optflow phase_unwrapping photo plot python3 quality rapid reg rgbd saliency sfm shape stereo stitching structured_light superres surface_matching text tracking ts video videoio videostab wechat_qrcode xfeatures2d ximgproc xobjdetect xphoto
    Disabled:                    python2 world
    Disabled by dependency:      -
    Unavailable:                 cvv java julia matlab ovis viz
    Applications:                perf_tests apps
    Documentation:               NO
    Non-free algorithms:         YES

  GUI:                           GTK3
    GTK+:                        YES (ver 3.22.30)
      GThread :                  YES (ver 2.56.4)
      GtkGlExt:                  NO
    VTK support:                 NO

  Media I/O: 
    ZLib:                        /usr/lib/aarch64-linux-gnu/libz.so (ver 1.2.11)
    JPEG:                        /usr/lib/aarch64-linux-gnu/libjpeg.so (ver 80)
    WEBP:                        /home/brian/mambaforge/envs/donkey/lib/libwebp.so (ver encoder: 0x020f)
    PNG:                         /usr/lib/aarch64-linux-gnu/libpng.so (ver 1.6.34)
    TIFF:                        build (ver 42 - 4.2.0)
    JPEG 2000:                   build (ver 2.4.0)
    OpenEXR:                     build (ver 2.3.0)
    HDR:                         YES
    SUNRASTER:                   YES
    PXM:                         YES
    PFM:                         YES

  Video I/O:
    DC1394:                      YES (2.2.5)
    FFMPEG:                      YES
      avcodec:                   YES (57.107.100)
      avformat:                  YES (57.83.100)
      avutil:                    YES (55.78.100)
      swscale:                   YES (4.8.100)
      avresample:                YES (3.7.0)
    GStreamer:                   YES (1.14.5)
    v4l/v4l2:                    YES (linux/videodev2.h)

  Parallel framework:            TBB (ver 2020.2 interface 11102)

  Trace:                         YES (with Intel ITT)

  Other third-party libraries:
    Lapack:                      YES (/usr/lib/aarch64-linux-gnu/liblapack.so /usr/lib/aarch64-linux-gnu/libcblas.so /usr/lib/aarch64-linux-gnu/libatlas.so)
    Eigen:                       YES (ver 3.3.4)
    Custom HAL:                  YES (carotene (ver 0.0.1))
    Protobuf:                    build (3.19.1)

  NVIDIA CUDA:                   YES (ver 10.2, CUFFT CUBLAS FAST_MATH)
    NVIDIA GPU arch:             53
    NVIDIA PTX archs:

  cuDNN:                         YES (ver 8.2.1)

  Python 3:
    Interpreter:                 /home/brian/mambaforge/envs/donkey/bin/python3 (ver 3.9.16)
    Libraries:                   /home/brian/mambaforge/envs/donkey/lib/libpython3.9.so (ver 3.9.16)
    numpy:                       /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages/numpy/core/include (ver 1.23.5)
    install path:                /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages/cv2/python-3.9

  Python (for build):            /usr/bin/python2.7

  Java:                          
    ant:                         NO
    JNI:                         NO
    Java wrappers:               NO
    Java tests:                  NO

  Install to:                    /home/brian/mambaforge/envs/donkey
-----------------------------------------------------------------

$ donkey calibrate --pwm-pin=PCA9685.1:40.1

-bash: donkey: command not found

$ conda list

# packages in environment at /home/brian/mambaforge/envs/donkey:
#
# Name                    Version                   Build  Channel
_openmp_mutex             4.5                  2_kmp_llvm    conda-forge
absl-py                   1.4.0                    pypi_0    pypi
aom                       3.5.0                headf329_0    conda-forge
astroid                   2.15.3           py39h4420490_0    conda-forge
astunparse                1.6.3                    pypi_0    pypi
attrs                     22.2.0             pyh71513ae_0    conda-forge
backports                 1.0                pyhd8ed1ab_3    conda-forge
backports.functools_lru_cache 1.6.4              pyhd8ed1ab_0    conda-forge
blas                      2.116                  openblas    conda-forge
blas-devel                3.9.0           16_linuxaarch64_openblas    conda-forge
bottleneck                1.3.7            py39hc7cda1a_0    conda-forge
brotli                    1.0.9                h4e544f5_8    conda-forge
brotli-bin                1.0.9                h4e544f5_8    conda-forge
brotlipy                  0.7.0           py39h0fd3b05_1005    conda-forge
bzip2                     1.0.8                hf897c2e_4    conda-forge
ca-certificates           2022.12.7            h4fd8a4c_0    conda-forge
cachetools                5.3.0                    pypi_0    pypi
catalogue                 2.0.8            py39h4420490_1    conda-forge
certifi                   2022.12.7          pyhd8ed1ab_0    conda-forge
cffi                      1.15.1           py39hb26bf21_3    conda-forge
charset-normalizer        3.1.0              pyhd8ed1ab_0    conda-forge
click                     8.0.4            py39ha65689a_0    conda-forge
codecov                   2.1.11             pyhd3eb1b0_0  
colorama                  0.4.6              pyhd8ed1ab_0    conda-forge
contourpy                 1.0.7            py39hd9a2fea_0    conda-forge
coverage                  7.2.3            py39h599bc27_0    conda-forge
cryptography              40.0.2           py39h8a84b6a_0    conda-forge
cycler                    0.11.0             pyhd8ed1ab_0    conda-forge
cymem                     2.0.7            py39h3d8bfb9_1    conda-forge
cython-blis               0.7.9            py39hc870d11_1    conda-forge
dataclasses               0.8                pyhc8e2a94_3    conda-forge
decorator                 5.1.1              pyhd8ed1ab_0    conda-forge
dill                      0.3.6              pyhd8ed1ab_1    conda-forge
docopt                    0.6.2            py39hd43f75c_1  
expat                     2.5.0                hd600fc2_1    conda-forge
fastai                    2.7.11             pyhd8ed1ab_0    conda-forge
fastcore                  1.5.29             pyhd8ed1ab_0    conda-forge
fastdownload              0.0.7              pyhd8ed1ab_0    conda-forge
fastprogress              1.0.3              pyhd8ed1ab_0    conda-forge
ffmpeg                    5.1.2           gpl_h8bd3c30_106    conda-forge
flatbuffers               1.12                     pypi_0    pypi
font-ttf-dejavu-sans-mono 2.37                 hab24e00_0    conda-forge
font-ttf-inconsolata      3.000                h77eed37_0    conda-forge
font-ttf-source-code-pro  2.038                h77eed37_0    conda-forge
font-ttf-ubuntu           0.83                 hab24e00_0    conda-forge
fontconfig                2.14.2               ha9a116f_0    conda-forge
fonts-conda-ecosystem     1                             0    conda-forge
fonts-conda-forge         1                             0    conda-forge
fonttools                 4.39.3           py39h24fc6b6_0    conda-forge
freetype                  2.12.1               hbbbf32d_1    conda-forge
gast                      0.4.0                    pypi_0    pypi
gettext                   0.21.1               ha18d298_0    conda-forge
giflib                    5.2.1                hb4cce97_3    conda-forge
gmp                       6.2.1                h7fd3ca4_0    conda-forge
gnutls                    3.7.8                h5e100cc_0    conda-forge
google-auth               2.17.3                   pypi_0    pypi
google-auth-oauthlib      0.4.6                    pypi_0    pypi
google-pasta              0.2.0                    pypi_0    pypi
grpcio                    1.54.0                   pypi_0    pypi
h5py                      3.7.0            py39hd2b9c60_0  
hdf5                      1.10.6               h8b20701_1  
icu                       72.1                 hcf00150_0    conda-forge
idna                      3.4                pyhd8ed1ab_0    conda-forge
imageio                   2.27.0             pyh24c5eb1_0    conda-forge
imageio-ffmpeg            0.4.8              pyhd8ed1ab_0    conda-forge
importlib-metadata        6.5.0                    pypi_0    pypi
importlib-resources       5.12.0             pyhd8ed1ab_0    conda-forge
importlib_resources       5.12.0             pyhd8ed1ab_0    conda-forge
iniconfig                 2.0.0              pyhd8ed1ab_0    conda-forge
isort                     5.12.0             pyhd8ed1ab_1    conda-forge
jinja2                    3.1.2              pyhd8ed1ab_1    conda-forge
joblib                    1.2.0              pyhd8ed1ab_0    conda-forge
jpeg                      9e                   h2a766a3_3    conda-forge
keras                     2.9.0                    pypi_0    pypi
keras-preprocessing       1.1.2                    pypi_0    pypi
keras-vis                 0.5.0                    pypi_0    pypi
kiwisolver                1.4.4            py39h110580c_1    conda-forge
lame                      3.100             h4e544f5_1003    conda-forge
langcodes                 3.3.0              pyhd8ed1ab_0    conda-forge
lazy-loader               0.2                      pypi_0    pypi
lazy-object-proxy         1.9.0            py39h24fc6b6_0    conda-forge
lcms2                     2.15                 h7576be9_0    conda-forge
ld_impl_linux-aarch64     2.40                 h2d8c526_0    conda-forge
lerc                      4.0.0                h4de3ea5_0    conda-forge
libblas                   3.9.0           16_linuxaarch64_openblas    conda-forge
libbrotlicommon           1.0.9                h4e544f5_8    conda-forge
libbrotlidec              1.0.9                h4e544f5_8    conda-forge
libbrotlienc              1.0.9                h4e544f5_8    conda-forge
libcblas                  3.9.0           16_linuxaarch64_openblas    conda-forge
libclang                  16.0.0                   pypi_0    pypi
libdeflate                1.17                 hb4cce97_0    conda-forge
libexpat                  2.5.0                hd600fc2_1    conda-forge
libffi                    3.4.2                h3557bc0_5    conda-forge
libgcc-ng                 12.2.0              h607ecd0_19    conda-forge
libgfortran-ng            12.2.0              he9431aa_19    conda-forge
libgfortran5              12.2.0              hf695500_19    conda-forge
libiconv                  1.17                 h9cdd2b7_0    conda-forge
libidn2                   2.3.4                h4e544f5_0    conda-forge
liblapack                 3.9.0           16_linuxaarch64_openblas    conda-forge
liblapacke                3.9.0           16_linuxaarch64_openblas    conda-forge
libnsl                    2.0.0                hf897c2e_0    conda-forge
libopenblas               0.3.21          pthreads_h6cb6f83_3    conda-forge
libopus                   1.3.1                hf897c2e_1    conda-forge
libpng                    1.6.39               hf9034f9_0    conda-forge
libprotobuf               3.21.12              h7fe2111_0    conda-forge
libsqlite                 3.40.0               hf9034f9_0    conda-forge
libstdcxx-ng              12.2.0              hc13a102_19    conda-forge
libtasn1                  4.19.0               h4e544f5_0    conda-forge
libtiff                   4.5.0                h4c1066a_2    conda-forge
libunistring              0.9.10               hf897c2e_0    conda-forge
libuuid                   2.38.1               hb4cce97_0    conda-forge
libvpx                    1.11.0               h01db608_3    conda-forge
libwebp                   1.2.4                h7bdf6e5_1    conda-forge
libwebp-base              1.2.4                h998d150_1  
libxml2                   2.10.4               h430b14f_0    conda-forge
libzlib                   1.2.13               h4e544f5_4    conda-forge
llvm-openmp               16.0.1               h45eaed7_0    conda-forge
markdown                  3.4.3                    pypi_0    pypi
markupsafe                2.1.2            py39h599bc27_0    conda-forge
matplotlib                3.7.1            py39hd43f75c_1  
matplotlib-base           3.7.1            py39h2983639_0    conda-forge
mccabe                    0.7.0              pyhd8ed1ab_0    conda-forge
moviepy                   1.0.3              pyhd8ed1ab_1    conda-forge
munkres                   1.1.4              pyh9f0ad1d_0    conda-forge
murmurhash                1.0.9            py39h3d8bfb9_1    conda-forge
mypy                      0.981            py39hd43f75c_0  
mypy_extensions           1.0.0              pyha770c72_0    conda-forge
ncurses                   6.3                  headf329_1    conda-forge
nettle                    3.8.1                hcc5b78b_1    conda-forge
networkx                  3.1                      pypi_0    pypi
numexpr                   2.8.4            py39h22534ca_0    conda-forge
numpy                     1.23.5           py39h8708280_0  
numpy-base                1.23.5           py39h4a83355_0  
oauthlib                  3.2.2                    pypi_0    pypi
openblas                  0.3.21          pthreads_h2d9dd7e_3    conda-forge
openh264                  2.3.1                hd600fc2_2    conda-forge
openssl                   3.1.0                hb4cce97_0    conda-forge
opt-einsum                3.3.0                    pypi_0    pypi
p11-kit                   0.24.1               h9f2702f_0    conda-forge
packaging                 23.1               pyhd8ed1ab_0    conda-forge
paho-mqtt                 1.6.1              pyhd8ed1ab_0    conda-forge
pandas                    1.5.3            py39he2e48ef_0  
pathy                     0.10.1             pyhd8ed1ab_0    conda-forge
pillow                    9.4.0            py39h419075a_0  
pip                       23.1               pyhd8ed1ab_0    conda-forge
platformdirs              3.2.0              pyhd8ed1ab_0    conda-forge
plotly                    5.9.0            py39hd43f75c_0  
pluggy                    1.0.0              pyhd8ed1ab_5    conda-forge
pooch                     1.7.0              pyha770c72_3    conda-forge
preshed                   3.0.8            py39h3d8bfb9_1    conda-forge
prettytable               3.5.0            py39hd43f75c_0  
proglog                   0.1.9                      py_0    conda-forge
progress                  1.5              py39hd43f75c_0  
protobuf                  3.19.6                   pypi_0    pypi
psutil                    5.9.0            py39h998d150_0  
py                        1.11.0             pyh6c4a22f_0    conda-forge
pyasn1                    0.5.0                    pypi_0    pypi
pyasn1-modules            0.3.0                    pypi_0    pypi
pycparser                 2.21               pyhd8ed1ab_0    conda-forge
pydantic                  1.10.7           py39h24fc6b6_0    conda-forge
pyfiglet                  0.8.post1                  py_0    conda-forge
pylint                    2.16.2           py39hd43f75c_0  
pynmea2                   1.19.0             pyhd8ed1ab_0    conda-forge
pyopenssl                 23.1.1             pyhd8ed1ab_0    conda-forge
pyparsing                 3.0.9              pyhd8ed1ab_0    conda-forge
pyserial                  3.4                        py_2  
pysocks                   1.7.1              pyha2e5f31_6    conda-forge
pytest                    7.1.2            py39hd43f75c_0  
pytest-cov                4.0.0            py39hd43f75c_0  
python                    3.9.16          hb363c5e_0_cpython    conda-forge
python-dateutil           2.8.2              pyhd8ed1ab_0    conda-forge
python_abi                3.9                      3_cp39    conda-forge
pytorch                   1.13.1          cpu_py39h29ba9e4_1    conda-forge
pytz                      2023.3             pyhd8ed1ab_0    conda-forge
pywavelets                1.4.1                    pypi_0    pypi
pyyaml                    6.0              py39h998d150_1  
readline                  8.2                  h8fc344f_1    conda-forge
requests                  2.28.2             pyhd8ed1ab_1    conda-forge
requests-oauthlib         1.3.1                    pypi_0    pypi
rsa                       4.9                      pypi_0    pypi
scikit-image              0.20.0                   pypi_0    pypi
scikit-learn              1.2.2            py39h7035649_1    conda-forge
scipy                     1.9.1                    pypi_0    pypi
setuptools                67.6.1             pyhd8ed1ab_0    conda-forge
shellingham               1.5.1              pyhd8ed1ab_0    conda-forge
six                       1.16.0             pyh6c4a22f_0    conda-forge
sleef                     3.5.1                h4f30969_2    conda-forge
smart_open                5.2.1              pyhd8ed1ab_0    conda-forge
spacy                     3.3.1            py39hb8f82bc_0  
spacy-legacy              3.0.12             pyhd8ed1ab_0    conda-forge
spacy-loggers             1.0.4              pyhd8ed1ab_0    conda-forge
srsly                     2.4.6            py39hdcdd789_0    conda-forge
svt-av1                   1.4.1                hd600fc2_0    conda-forge
tenacity                  8.2.2              pyhd8ed1ab_0    conda-forge
tensorboard               2.9.1                    pypi_0    pypi
tensorboard-data-server   0.6.1                    pypi_0    pypi
tensorboard-plugin-wit    1.8.1                    pypi_0    pypi
tensorflow                2.9.3                    pypi_0    pypi
tensorflow-estimator      2.9.0                    pypi_0    pypi
tensorflow-io-gcs-filesystem 0.32.0                   pypi_0    pypi
termcolor                 2.2.0                    pypi_0    pypi
thinc                     8.0.15           py39h120ed44_0  
threadpoolctl             3.1.0              pyh8a188c0_0    conda-forge
tifffile                  2023.4.12                pypi_0    pypi
tk                        8.6.12               hd8af866_0    conda-forge
toml                      0.10.2             pyhd8ed1ab_0    conda-forge
tomli                     2.0.1              pyhd8ed1ab_0    conda-forge
tomlkit                   0.11.7             pyha770c72_0    conda-forge
torchvision               0.14.1          cpu_py39h562ba5f_0    conda-forge
tornado                   6.2              py39h998d150_0  
tqdm                      4.65.0             pyhd8ed1ab_1    conda-forge
typer                     0.4.2              pyhd8ed1ab_0    conda-forge
typing                    3.10.0.0           pyhd8ed1ab_0    conda-forge
typing-extensions         4.5.0                hd8ed1ab_0    conda-forge
typing_extensions         4.5.0              pyha770c72_0    conda-forge
tzdata                    2023c                h71feb2d_0    conda-forge
unicodedata2              15.0.0           py39h0fd3b05_0    conda-forge
urllib3                   1.26.15            pyhd8ed1ab_0    conda-forge
utm                       0.7.0              pyhd8ed1ab_0    conda-forge
wasabi                    0.10.1             pyhd8ed1ab_1    conda-forge
wcwidth                   0.2.6              pyhd8ed1ab_0    conda-forge
werkzeug                  2.2.3                    pypi_0    pypi
wheel                     0.40.0             pyhd8ed1ab_0    conda-forge
wrapt                     1.15.0           py39h24fc6b6_0    conda-forge
x264                      1!164.3095           h4e544f5_2    conda-forge
x265                      3.5                  hdd96247_3    conda-forge
xz                        5.2.6                h9cdd2b7_0    conda-forge
yaml                      0.2.5                hf897c2e_2    conda-forge
zipp                      3.15.0             pyhd8ed1ab_0    conda-forge
zlib                      1.2.13               h4e544f5_4    conda-forge
zstd                      1.5.2                h44f6412_6    conda-forge

$ pip install -e .[nano]

Obtaining file:///home/brian/projects/donkeycar
  Preparing metadata (setup.py) ... done
Requirement already satisfied: numpy in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (1.23.5)
Requirement already satisfied: pillow in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (9.4.0)
Requirement already satisfied: docopt in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (0.6.2)
Requirement already satisfied: tornado in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (6.2)
Requirement already satisfied: requests in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (2.28.2)
Requirement already satisfied: h5py in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (3.7.0)
Requirement already satisfied: PrettyTable in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (3.5.0)
Requirement already satisfied: paho-mqtt in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (1.6.1)
Collecting simple_pid (from donkeycar==5.0.dev1)
  Downloading simple_pid-1.0.1-py2.py3-none-any.whl (8.1 kB)
Requirement already satisfied: progress in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (1.5)
Requirement already satisfied: typing_extensions in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (4.5.0)
Requirement already satisfied: pyfiglet in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (0.8.post1)
Requirement already satisfied: psutil in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (5.9.0)
Requirement already satisfied: pynmea2 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (1.19.0)
Requirement already satisfied: pyserial in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (3.4)
Requirement already satisfied: utm in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (0.7.0)
Requirement already satisfied: pandas in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (1.5.3)
Collecting Adafruit_PCA9685 (from donkeycar==5.0.dev1)
  Downloading Adafruit_PCA9685-1.0.1.tar.gz (3.0 kB)
  Preparing metadata (setup.py) ... done
Collecting adafruit-circuitpython-ssd1306 (from donkeycar==5.0.dev1)
  Downloading adafruit_circuitpython_ssd1306-2.12.12-py3-none-any.whl (7.6 kB)
Collecting adafruit-circuitpython-rplidar (from donkeycar==5.0.dev1)
  Downloading adafruit_circuitpython_rplidar-1.2.10-py3-none-any.whl (9.3 kB)
Collecting Jetson.GPIO (from donkeycar==5.0.dev1)
  Downloading Jetson.GPIO-2.1.1.tar.gz (28 kB)
  Preparing metadata (setup.py) ... done
Collecting albumentations (from donkeycar==5.0.dev1)
  Downloading albumentations-1.3.0-py3-none-any.whl (123 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 123.5/123.5 kB 3.5 MB/s eta 0:00:00
Requirement already satisfied: matplotlib in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (3.7.1)
Collecting kivy (from donkeycar==5.0.dev1)
  Downloading Kivy-2.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (30.5 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 30.5/30.5 MB 4.2 MB/s eta 0:00:00
Requirement already satisfied: pyyaml in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (6.0)
Requirement already satisfied: plotly in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (5.9.0)
Collecting Adafruit-Blinka (from adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Downloading Adafruit_Blinka-8.18.1-py3-none-any.whl (289 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 289.2/289.2 kB 4.1 MB/s eta 0:00:00
Collecting adafruit-circuitpython-register (from adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Downloading adafruit_circuitpython_register-1.9.15-py3-none-any.whl (14 kB)
Collecting adafruit-circuitpython-busdevice (from adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Downloading adafruit_circuitpython_busdevice-5.2.4-py3-none-any.whl (7.5 kB)
Collecting adafruit-circuitpython-framebuf (from adafruit-circuitpython-ssd1306->donkeycar==5.0.dev1)
  Downloading adafruit_circuitpython_framebuf-1.6.0-py3-none-any.whl (9.2 kB)
Collecting Adafruit-GPIO>=0.6.5 (from Adafruit_PCA9685->donkeycar==5.0.dev1)
  Downloading Adafruit_GPIO-1.0.3.tar.gz (24 kB)
  Preparing metadata (setup.py) ... done
Requirement already satisfied: scipy in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from albumentations->donkeycar==5.0.dev1) (1.9.1)
Requirement already satisfied: scikit-image>=0.16.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from albumentations->donkeycar==5.0.dev1) (0.20.0)
Collecting qudida>=0.0.4 (from albumentations->donkeycar==5.0.dev1)
  Downloading qudida-0.0.4-py3-none-any.whl (3.5 kB)
Collecting opencv-python-headless>=4.1.1 (from albumentations->donkeycar==5.0.dev1)
  Downloading opencv_python_headless-4.7.0.72-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (28.1 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 28.1/28.1 MB 3.7 MB/s eta 0:00:00
Collecting Kivy-Garden>=0.1.4 (from kivy->donkeycar==5.0.dev1)
  Downloading Kivy_Garden-0.1.5-py3-none-any.whl (4.6 kB)
Collecting docutils (from kivy->donkeycar==5.0.dev1)
  Downloading docutils-0.19-py3-none-any.whl (570 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 570.5/570.5 kB 8.6 MB/s eta 0:00:00
Collecting pygments (from kivy->donkeycar==5.0.dev1)
  Downloading Pygments-2.15.1-py3-none-any.whl (1.1 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 7.0 MB/s eta 0:00:00
Requirement already satisfied: contourpy>=1.0.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (1.0.7)
Requirement already satisfied: cycler>=0.10 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (0.11.0)
Requirement already satisfied: fonttools>=4.22.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (4.39.3)
Requirement already satisfied: kiwisolver>=1.0.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (1.4.4)
Requirement already satisfied: packaging>=20.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (23.1)
Requirement already satisfied: pyparsing>=2.3.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (3.0.9)
Requirement already satisfied: python-dateutil>=2.7 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (2.8.2)
Requirement already satisfied: importlib-resources>=3.2.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (5.12.0)
Requirement already satisfied: pytz>=2020.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from pandas->donkeycar==5.0.dev1) (2023.3)
Requirement already satisfied: tenacity>=6.2.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from plotly->donkeycar==5.0.dev1) (8.2.2)
Requirement already satisfied: wcwidth in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from PrettyTable->donkeycar==5.0.dev1) (0.2.6)
Requirement already satisfied: charset-normalizer<4,>=2 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from requests->donkeycar==5.0.dev1) (3.1.0)
Requirement already satisfied: idna<4,>=2.5 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from requests->donkeycar==5.0.dev1) (3.4)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from requests->donkeycar==5.0.dev1) (1.26.15)
Requirement already satisfied: certifi>=2017.4.17 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from requests->donkeycar==5.0.dev1) (2022.12.7)
Collecting adafruit-pureio (from Adafruit-GPIO>=0.6.5->Adafruit_PCA9685->donkeycar==5.0.dev1)
  Downloading Adafruit_PureIO-1.1.10.tar.gz (28 kB)
  Preparing metadata (setup.py) ... done
Collecting spidev (from Adafruit-GPIO>=0.6.5->Adafruit_PCA9685->donkeycar==5.0.dev1)
  Downloading spidev-3.6.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: zipp>=3.1.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from importlib-resources>=3.2.0->matplotlib->donkeycar==5.0.dev1) (3.15.0)
Requirement already satisfied: six>=1.5 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from python-dateutil>=2.7->matplotlib->donkeycar==5.0.dev1) (1.16.0)
Requirement already satisfied: scikit-learn>=0.19.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from qudida>=0.0.4->albumentations->donkeycar==5.0.dev1) (1.2.2)
Requirement already satisfied: networkx>=2.8 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-image>=0.16.1->albumentations->donkeycar==5.0.dev1) (3.1)
Requirement already satisfied: imageio>=2.4.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-image>=0.16.1->albumentations->donkeycar==5.0.dev1) (2.27.0)
Requirement already satisfied: tifffile>=2019.7.26 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-image>=0.16.1->albumentations->donkeycar==5.0.dev1) (2023.4.12)
Requirement already satisfied: PyWavelets>=1.1.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-image>=0.16.1->albumentations->donkeycar==5.0.dev1) (1.4.1)
Requirement already satisfied: lazy_loader>=0.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-image>=0.16.1->albumentations->donkeycar==5.0.dev1) (0.2)
Collecting Adafruit-PlatformDetect>=3.13.0 (from Adafruit-Blinka->adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Downloading Adafruit_PlatformDetect-3.45.1-py3-none-any.whl (20 kB)
Collecting pyftdi>=0.40.0 (from Adafruit-Blinka->adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Downloading pyftdi-0.54.0-py3-none-any.whl (144 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 144.8/144.8 kB 2.2 MB/s eta 0:00:00
Collecting adafruit-circuitpython-typing (from Adafruit-Blinka->adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Downloading adafruit_circuitpython_typing-1.9.1-py3-none-any.whl (10 kB)
Collecting adafruit-circuitpython-requests (from adafruit-circuitpython-typing->Adafruit-Blinka->adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Downloading adafruit_circuitpython_requests-1.13.1-py3-none-any.whl (11 kB)
Collecting pyusb!=1.2.0,>=1.0.0 (from pyftdi>=0.40.0->Adafruit-Blinka->adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Downloading pyusb-1.2.1-py3-none-any.whl (58 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 58.4/58.4 kB 909.6 kB/s eta 0:00:00
Requirement already satisfied: joblib>=1.1.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-learn>=0.19.1->qudida>=0.0.4->albumentations->donkeycar==5.0.dev1) (1.2.0)
Requirement already satisfied: threadpoolctl>=2.0.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-learn>=0.19.1->qudida>=0.0.4->albumentations->donkeycar==5.0.dev1) (3.1.0)
Building wheels for collected packages: Adafruit_PCA9685, Jetson.GPIO, Adafruit-GPIO, adafruit-pureio, spidev
  Building wheel for Adafruit_PCA9685 (setup.py) ... done
  Created wheel for Adafruit_PCA9685: filename=Adafruit_PCA9685-1.0.1-py3-none-any.whl size=3755 sha256=af8e4304beeac0cd8f64aa5c23f3f1a9faffcbbb9184b0117b2feefff90a494b
  Stored in directory: /home/brian/.cache/pip/wheels/b9/ba/7f/5dd556aef128ef45d31cdbc71e8a93793ff088ef322c462ed8
  Building wheel for Jetson.GPIO (setup.py) ... done
  Created wheel for Jetson.GPIO: filename=Jetson.GPIO-2.1.1-py3-none-any.whl size=26985 sha256=af9b45417e031ae1ccd6fb1092d0bcb664bed0d0edb5c6e780bbd143410d645b
  Stored in directory: /home/brian/.cache/pip/wheels/5b/63/e7/bedadbc9255cf2107175a536a58d3dd5ff881659df0d8d6591
  Building wheel for Adafruit-GPIO (setup.py) ... done
  Created wheel for Adafruit-GPIO: filename=Adafruit_GPIO-1.0.3-py3-none-any.whl size=38123 sha256=09c2e6d187ae765d2c5c2bdfc11fcf7a1406d90525327cf11266945eff585c12
  Stored in directory: /home/brian/.cache/pip/wheels/1f/2c/60/26260e128683f31e0f314e246a825f50e7e6c8ac0cc2e9ce79
  Building wheel for adafruit-pureio (setup.py) ... done
  Created wheel for adafruit-pureio: filename=Adafruit_PureIO-1.1.10-py3-none-any.whl size=11641 sha256=b87d44d46d2748a4310d45a6ce5989738d546bea6600d9e614e7c5d9c8b20f49
  Stored in directory: /home/brian/.cache/pip/wheels/b9/df/5b/f278004e51ae037bd906d33d80917daf11e70b15f9015083f9
  Building wheel for spidev (pyproject.toml) ... done
  Created wheel for spidev: filename=spidev-3.6-cp39-cp39-linux_aarch64.whl size=15480 sha256=5bce6438a15aa7b0c87ed997f8b7a99ea4179adac7cd289c85720e8dce9b253c
  Stored in directory: /home/brian/.cache/pip/wheels/ee/38/fe/10920a2099285b1be0d6565f5b75039b39923102014a7ba34c
Successfully built Adafruit_PCA9685 Jetson.GPIO Adafruit-GPIO adafruit-pureio spidev
Installing collected packages: spidev, simple_pid, Jetson.GPIO, Adafruit-PlatformDetect, pyusb, pygments, opencv-python-headless, docutils, adafruit-pureio, pyftdi, Kivy-Garden, Adafruit-GPIO, qudida, kivy, donkeycar, Adafruit_PCA9685, albumentations, adafruit-circuitpython-requests, Adafruit-Blinka, adafruit-circuitpython-typing, adafruit-circuitpython-busdevice, adafruit-circuitpython-register, adafruit-circuitpython-framebuf, adafruit-circuitpython-ssd1306, adafruit-circuitpython-rplidar
ERROR: Could not install packages due to an OSError: [Errno 13] Permission denied: '/home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages/cv2/load_config_py3.py'
Consider using the `--user` option or check the permissions.

$ pip install -e .[nano] --user pip

Obtaining file:///home/brian/projects/donkeycar
  Preparing metadata (setup.py) ... done
Requirement already satisfied: pip in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (23.1)
Requirement already satisfied: numpy in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (1.23.5)
Requirement already satisfied: pillow in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (9.4.0)
Requirement already satisfied: docopt in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (0.6.2)
Requirement already satisfied: tornado in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (6.2)
Requirement already satisfied: requests in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (2.28.2)
Requirement already satisfied: h5py in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (3.7.0)
Requirement already satisfied: PrettyTable in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (3.5.0)
Requirement already satisfied: paho-mqtt in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (1.6.1)
Requirement already satisfied: simple_pid in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (1.0.1)
Requirement already satisfied: progress in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (1.5)
Requirement already satisfied: typing_extensions in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (4.5.0)
Requirement already satisfied: pyfiglet in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (0.8.post1)
Requirement already satisfied: psutil in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (5.9.0)
Requirement already satisfied: pynmea2 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (1.19.0)
Requirement already satisfied: pyserial in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (3.4)
Requirement already satisfied: utm in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (0.7.0)
Requirement already satisfied: pandas in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (1.5.3)
Collecting Adafruit_PCA9685 (from donkeycar==5.0.dev1)
  Using cached Adafruit_PCA9685-1.0.1-py3-none-any.whl
Collecting adafruit-circuitpython-ssd1306 (from donkeycar==5.0.dev1)
  Using cached adafruit_circuitpython_ssd1306-2.12.12-py3-none-any.whl (7.6 kB)
Collecting adafruit-circuitpython-rplidar (from donkeycar==5.0.dev1)
  Using cached adafruit_circuitpython_rplidar-1.2.10-py3-none-any.whl (9.3 kB)
Requirement already satisfied: Jetson.GPIO in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (2.1.1)
Collecting albumentations (from donkeycar==5.0.dev1)
  Using cached albumentations-1.3.0-py3-none-any.whl (123 kB)
Requirement already satisfied: matplotlib in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (3.7.1)
Collecting kivy (from donkeycar==5.0.dev1)
  Using cached Kivy-2.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (30.5 MB)
Requirement already satisfied: pyyaml in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (6.0)
Requirement already satisfied: plotly in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from donkeycar==5.0.dev1) (5.9.0)
Collecting Adafruit-Blinka (from adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Using cached Adafruit_Blinka-8.18.1-py3-none-any.whl (289 kB)
Collecting adafruit-circuitpython-register (from adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Using cached adafruit_circuitpython_register-1.9.15-py3-none-any.whl (14 kB)
Collecting adafruit-circuitpython-busdevice (from adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Using cached adafruit_circuitpython_busdevice-5.2.4-py3-none-any.whl (7.5 kB)
Collecting adafruit-circuitpython-framebuf (from adafruit-circuitpython-ssd1306->donkeycar==5.0.dev1)
  Using cached adafruit_circuitpython_framebuf-1.6.0-py3-none-any.whl (9.2 kB)
Collecting Adafruit-GPIO>=0.6.5 (from Adafruit_PCA9685->donkeycar==5.0.dev1)
  Using cached Adafruit_GPIO-1.0.3-py3-none-any.whl
Requirement already satisfied: scipy in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from albumentations->donkeycar==5.0.dev1) (1.9.1)
Requirement already satisfied: scikit-image>=0.16.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from albumentations->donkeycar==5.0.dev1) (0.20.0)
Collecting qudida>=0.0.4 (from albumentations->donkeycar==5.0.dev1)
  Using cached qudida-0.0.4-py3-none-any.whl (3.5 kB)
Collecting opencv-python-headless>=4.1.1 (from albumentations->donkeycar==5.0.dev1)
  Using cached opencv_python_headless-4.7.0.72-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (28.1 MB)
Collecting Kivy-Garden>=0.1.4 (from kivy->donkeycar==5.0.dev1)
  Using cached Kivy_Garden-0.1.5-py3-none-any.whl (4.6 kB)
Collecting docutils (from kivy->donkeycar==5.0.dev1)
  Using cached docutils-0.19-py3-none-any.whl (570 kB)
Requirement already satisfied: pygments in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from kivy->donkeycar==5.0.dev1) (2.15.1)
Requirement already satisfied: contourpy>=1.0.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (1.0.7)
Requirement already satisfied: cycler>=0.10 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (0.11.0)
Requirement already satisfied: fonttools>=4.22.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (4.39.3)
Requirement already satisfied: kiwisolver>=1.0.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (1.4.4)
Requirement already satisfied: packaging>=20.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (23.1)
Requirement already satisfied: pyparsing>=2.3.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (3.0.9)
Requirement already satisfied: python-dateutil>=2.7 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (2.8.2)
Requirement already satisfied: importlib-resources>=3.2.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from matplotlib->donkeycar==5.0.dev1) (5.12.0)
Requirement already satisfied: pytz>=2020.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from pandas->donkeycar==5.0.dev1) (2023.3)
Requirement already satisfied: tenacity>=6.2.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from plotly->donkeycar==5.0.dev1) (8.2.2)
Requirement already satisfied: wcwidth in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from PrettyTable->donkeycar==5.0.dev1) (0.2.6)
Requirement already satisfied: charset-normalizer<4,>=2 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from requests->donkeycar==5.0.dev1) (3.1.0)
Requirement already satisfied: idna<4,>=2.5 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from requests->donkeycar==5.0.dev1) (3.4)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from requests->donkeycar==5.0.dev1) (1.26.15)
Requirement already satisfied: certifi>=2017.4.17 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from requests->donkeycar==5.0.dev1) (2022.12.7)
Collecting adafruit-pureio (from Adafruit-GPIO>=0.6.5->Adafruit_PCA9685->donkeycar==5.0.dev1)
  Using cached Adafruit_PureIO-1.1.10-py3-none-any.whl
Requirement already satisfied: spidev in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from Adafruit-GPIO>=0.6.5->Adafruit_PCA9685->donkeycar==5.0.dev1) (3.6)
Requirement already satisfied: zipp>=3.1.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from importlib-resources>=3.2.0->matplotlib->donkeycar==5.0.dev1) (3.15.0)
Requirement already satisfied: six>=1.5 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from python-dateutil>=2.7->matplotlib->donkeycar==5.0.dev1) (1.16.0)
Requirement already satisfied: scikit-learn>=0.19.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from qudida>=0.0.4->albumentations->donkeycar==5.0.dev1) (1.2.2)
Requirement already satisfied: networkx>=2.8 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-image>=0.16.1->albumentations->donkeycar==5.0.dev1) (3.1)
Requirement already satisfied: imageio>=2.4.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-image>=0.16.1->albumentations->donkeycar==5.0.dev1) (2.27.0)
Requirement already satisfied: tifffile>=2019.7.26 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-image>=0.16.1->albumentations->donkeycar==5.0.dev1) (2023.4.12)
Requirement already satisfied: PyWavelets>=1.1.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-image>=0.16.1->albumentations->donkeycar==5.0.dev1) (1.4.1)
Requirement already satisfied: lazy_loader>=0.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-image>=0.16.1->albumentations->donkeycar==5.0.dev1) (0.2)
Requirement already satisfied: Adafruit-PlatformDetect>=3.13.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from Adafruit-Blinka->adafruit-circuitpython-rplidar->donkeycar==5.0.dev1) (3.45.1)
Collecting pyftdi>=0.40.0 (from Adafruit-Blinka->adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Using cached pyftdi-0.54.0-py3-none-any.whl (144 kB)
Collecting adafruit-circuitpython-typing (from Adafruit-Blinka->adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Using cached adafruit_circuitpython_typing-1.9.1-py3-none-any.whl (10 kB)
Collecting adafruit-circuitpython-requests (from adafruit-circuitpython-typing->Adafruit-Blinka->adafruit-circuitpython-rplidar->donkeycar==5.0.dev1)
  Using cached adafruit_circuitpython_requests-1.13.1-py3-none-any.whl (11 kB)
Requirement already satisfied: pyusb!=1.2.0,>=1.0.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from pyftdi>=0.40.0->Adafruit-Blinka->adafruit-circuitpython-rplidar->donkeycar==5.0.dev1) (1.2.1)
Requirement already satisfied: joblib>=1.1.1 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-learn>=0.19.1->qudida>=0.0.4->albumentations->donkeycar==5.0.dev1) (1.2.0)
Requirement already satisfied: threadpoolctl>=2.0.0 in /home/brian/mambaforge/envs/donkey/lib/python3.9/site-packages (from scikit-learn>=0.19.1->qudida>=0.0.4->albumentations->donkeycar==5.0.dev1) (3.1.0)
Installing collected packages: pyftdi, opencv-python-headless, docutils, adafruit-pureio, Kivy-Garden, Adafruit-GPIO, qudida, kivy, donkeycar, Adafruit_PCA9685, albumentations, adafruit-circuitpython-requests, Adafruit-Blinka, adafruit-circuitpython-typing, adafruit-circuitpython-busdevice, adafruit-circuitpython-register, adafruit-circuitpython-framebuf, adafruit-circuitpython-ssd1306, adafruit-circuitpython-rplidar
  WARNING: The script docutils is installed in '/home/brian/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
  Running setup.py develop for donkeycar
Successfully installed Adafruit-Blinka-8.18.1 Adafruit-GPIO-1.0.3 Adafruit_PCA9685-1.0.1 Kivy-Garden-0.1.5 adafruit-circuitpython-busdevice-5.2.4 adafruit-circuitpython-framebuf-1.6.0 adafruit-circuitpython-register-1.9.15 adafruit-circuitpython-requests-1.13.1 adafruit-circuitpython-rplidar-1.2.10 adafruit-circuitpython-ssd1306-2.12.12 adafruit-circuitpython-typing-1.9.1 adafruit-pureio-1.1.10 albumentations-1.3.0 docutils-0.19 donkeycar kivy-2.1.0 opencv-python-headless-4.7.0.72 pyftdi-0.54.0 qudida-0.0.4

$donkey

-bash: donkey: command not found

$ sudo reboot

donkey calibrate --pwm-pin=PCA9685.1:40.1 $

________             ______                   _________              
___  __ \_______________  /___________  __    __  ____/_____ ________
__  / / /  __ \_  __ \_  //_/  _ \_  / / /    _  /    _  __ `/_  ___/
_  /_/ // /_/ /  / / /  ,<  /  __/  /_/ /     / /___  / /_/ /_  /    
/_____/ \____//_/ /_//_/|_| \___/_\__, /      \____/  \__,_/ /_/     
                                 /____/                              
Python 3.9.16 | packaged by conda-forge | (main, Feb  1 2023, 22:05:40) 
[GCC 11.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 
>>> 
>>> import cv2
>>> print(cv2.getBuildInformation())

General configuration for OpenCV 4.7.0 =====================================
  Version control:               4.7.0

  Platform:
    Timestamp:                   2023-02-22T13:23:24Z
    Host:                        Linux 5.3.0-28-generic aarch64
    CMake:                       3.25.2
    CMake generator:             Unix Makefiles
    CMake build tool:            /bin/gmake
    Configuration:               Release

  CPU/HW features:
    Baseline:                    NEON FP16

  C/C++:
    Built as dynamic libs?:      NO
    C++ standard:                11
    C++ Compiler:                /opt/rh/devtoolset-10/root/usr/bin/c++  (ver 10.2.1)
    C++ flags (Release):         -Wl,-strip-all   -fsigned-char -W -Wall -Wreturn-type -Wnon-virtual-dtor -Waddress -Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -fvisibility-inlines-hidden -O3 -DNDEBUG  -DNDEBUG
    C++ flags (Debug):           -Wl,-strip-all   -fsigned-char -W -Wall -Wreturn-type -Wnon-virtual-dtor -Waddress -Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -fvisibility-inlines-hidden -g  -O0 -DDEBUG -D_DEBUG
    C Compiler:                  /opt/rh/devtoolset-10/root/usr/bin/cc
    C flags (Release):           -Wl,-strip-all   -fsigned-char -W -Wall -Wreturn-type -Waddress -Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wuninitialized -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -O3 -DNDEBUG  -DNDEBUG
    C flags (Debug):             -Wl,-strip-all   -fsigned-char -W -Wall -Wreturn-type -Waddress -Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wuninitialized -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -g  -O0 -DDEBUG -D_DEBUG
    Linker flags (Release):      -L/ffmpeg_build/lib  -Wl,--gc-sections -Wl,--as-needed -Wl,--no-undefined  
    Linker flags (Debug):        -L/ffmpeg_build/lib  -Wl,--gc-sections -Wl,--as-needed -Wl,--no-undefined  
    ccache:                      YES
    Precompiled headers:         NO
    Extra dependencies:          /lib64/libopenblas.so /usr/local/lib/libpng.so /lib64/libz.so dl m pthread rt
    3rdparty dependencies:       libprotobuf ade ittnotify libjpeg-turbo libwebp libtiff libopenjp2 IlmImf quirc tegra_hal

  OpenCV modules:
    To be built:                 calib3d core dnn features2d flann gapi highgui imgcodecs imgproc ml objdetect photo python3 stitching video videoio
    Disabled:                    world
    Disabled by dependency:      -
    Unavailable:                 java python2 ts
    Applications:                -
    Documentation:               NO
    Non-free algorithms:         NO

  GUI:                           NONE
    VTK support:                 NO

  Media I/O: 
    ZLib:                        /lib64/libz.so (ver 1.2.7)
    JPEG:                        libjpeg-turbo (ver 2.1.3-62)
    WEBP:                        build (ver encoder: 0x020f)
    PNG:                         /usr/local/lib/libpng.so (ver 1.6.37)
    TIFF:                        build (ver 42 - 4.2.0)
    JPEG 2000:                   build (ver 2.4.0)
    OpenEXR:                     build (ver 2.3.0)
    HDR:                         YES
    SUNRASTER:                   YES
    PXM:                         YES
    PFM:                         YES

  Video I/O:
    DC1394:                      NO
    FFMPEG:                      YES
      avcodec:                   YES (59.37.100)
      avformat:                  YES (59.27.100)
      avutil:                    YES (57.28.100)
      swscale:                   YES (6.7.100)
      avresample:                NO
    GStreamer:                   NO
    v4l/v4l2:                    YES (linux/videodev2.h)

  Parallel framework:            pthreads

  Trace:                         YES (with Intel ITT)

  Other third-party libraries:
    Lapack:                      YES (/lib64/libopenblas.so)
    Eigen:                       NO
    Custom HAL:                  YES (carotene (ver 0.0.1))
    Protobuf:                    build (3.19.1)

  OpenCL:                        YES (no extra features)
    Include path:                /io/opencv/3rdparty/include/opencl/1.2
    Link libraries:              Dynamic load

  Python 3:
    Interpreter:                 /opt/python/cp37-cp37m/bin/python3.7 (ver 3.7.16)
    Libraries:                   libpython3.7m.a (ver 3.7.16)
    numpy:                       /home/ci/.local/lib/python3.7/site-packages/numpy/core/include (ver 1.19.3)
    install path:                python/cv2/python-3

  Python (for build):            /bin/python2.7

  Java:                          
    ant:                         NO
    JNI:                         NO
    Java wrappers:               NO
    Java tests:                  NO

  Install to:                    /io/_skbuild/linux-aarch64-3.7/cmake-install
-----------------------------------------------------------------
TCIII commented 1 year ago

@BrianHenryIE,

For donkey calibrate --pwm-pin=PCA9685.1:40.1 to run, you need to be in the mycar folder.

TCIII

BrianHenryIE commented 1 year ago

After a fresh install, the camera is working and recording on throttle! Thanks for the help.

The install order is important. If pip install -e .[nano] is run after opencv 4.6 is built, it will remove it as it installs opencv-python-headless-4.7.0.72 as a dependency of albumentations.

Somehow I managed to mess up the install order again yesterday! So I commented out albumentations in setup.py, then ran pip install albumentations --dry-run to learn what its dependencies were:

Would install albumentations-1.3.0 opencv-python-headless-4.7.0.72 qudida-0.0.4

and ran pip install qudida==0.0.4 --no-deps and pip install albumentations --no-deps. I'm not sure what, if any, problems this might cause. I'm curious if the install steps are followed correctly, is opencv-python-headless-4.7.0.72 installed, and opencv 4.6? I notice opencv 4.6 is NOT in my conda list but shows correctly in cv2.getBuildInformation().

I also commented out make clean from the CMake build script. But I don't know how to reinstall opencv from that build if I did need to.

BrianHenryIE commented 1 year ago

I was able to drive but got an error when trying to run autopilot:

TensorFlow was not built with CUDA kernel binaries compatible with compute capability 5.3. CUDA kernels will be jit-compiled from PTX, which could take 30 minutes or longer.

With both a .tflite and a .h5 model. I trained the model on MacOS M1, with TF 2.9 and the tf_2_9 branch, but maybe it's a little different still: https://github.com/autorope/donkeycar/pull/1121#issuecomment-1501344076

I ran pip install ../jetson/tensorflow-2.9.3-cp39-cp39-linux_aarch64.whl --force-reinstall and in the output was:

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
albumentations 1.3.0 requires opencv-python-headless>=4.1.1, which is not installed.
qudida 0.0.4 requires opencv-python-headless>=4.0.1, which is not installed.
spacy 3.3.1 requires pydantic!=1.8,!=1.8.1,<1.9.0,>=1.7.4, but you have pydantic 1.10.7 which is incompatible.
thinc 8.0.15 requires pydantic!=1.8,!=1.8.1,<1.9.0,>=1.7.4, but you have pydantic 1.10.7 which is incompatible.

I'm reinstalling from scratch again now.

TCIII commented 1 year ago

@BrianHenryIE,

Possible solution:

Remove albumentations from setup.py and run pip install -U albumentations --no-binary qudida,albumentations separately after running pip install -e .[nano]

From the Albumentations website:

Note on OpenCV dependencies¶ By default, pip downloads a wheel distribution of Albumentations. This distribution has opencv-python-headless as its dependency.

If you already have some OpenCV distribution (such as opencv-python-headless, opencv-python, opencv-contrib-python or opencv-contrib-python-headless) installed in your Python environment, you can force Albumentations to use it by providing the --no-binary qudida,albumentations argument to pip, e.g.

pip install -U albumentations --no-binary qudida,albumentations

TCIII

Ezward commented 1 year ago

@DocGarbanzo When you update the nano install to address the albumentations installation issue can you close this issue?

Ezward commented 1 year ago

Marked as solved.