I hope this message finds you well. I’m currently working on a project that involves classifying socks using a Raspberry Pi, Edge Impulse, and Balena. I’ve been following the instructions provided in this blog post: How to classify socks using a Raspberry Pi, Edge Impulse, and balena.
So far, I’ve managed to set up the project as per the instructions, and the edge-impulse microservice is working perfectly on my Raspberry Pi. However, I encountered an issue with the balena-cam microservice during the release phase. It seems that it’s no longer supported for the Raspberry Pi 4’s 64-bit OS, and piwheels no longer supports the aarch64 architecture.
After some research and experimentation, I made some edits to the Dockerfile, and I was able to successfully build it. However, when I launch the application, it hangs and doesn’t function as expected.
I would be extremely grateful if someone could kindly assist me in overcoming these issues so that I can run this project successfully for my Uni project. Below, you’ll find the edited Dockerfile that I’ve been using:
FROM balenalib/raspberrypi4-64-debian:latest
Install dependencies
RUN apt-get update &&
apt-get install -yq
python3
python3-dev
python3-pip
python3-setuptools
gstreamer-1.0
v4l-utils
libopus-dev
libvpx-dev
libvpx6
libopus0
libsrtp2-dev
libopencv-dev
libatlas3-base
libatlas3-base libgfortran5
libatlas-base-dev
libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev \
python3-dev python3-numpy ffmpeg cmake-qt-gui libopenblas-dev
tesseract-ocr libtesseract-dev libprotobuf-dev libleveldb-dev
libhdf5-serial-dev protobuf-compiler libatlas-base-dev
gfortran libgstreamer1.0-dev libatlas-base-dev libxvidcore-dev
libpng-dev libopenexr-dev libtiff-dev libwebp-dev
libmp3lame-dev libtheora-dev libvorbis-dev
libqt5widgets5 libqt5gui5 libqt5dbus5 libqt5network5 libqt5core5a
libavformat-dev
libswscale-dev
libavdevice-dev
libavfilter-dev
libavcodec-dev
libavdevice-dev libavfilter-dev libopus-dev libvpx-dev pkg-config
&& apt-get clean && rm -rf /var/lib/apt/lists/*
Enable the v4l2 driver for the Raspberry Pi camera
#RUN printf “bcm2835-v4l2\n” >> /etc/modules
RUN pip3 install --upgrade pip
RUN pip3 install async-timeout av==10.0.0
RUN pip install multidict
RUN pip install aiohttp
RUN pip3 install websocket-client==1.5.2 aiohttp-basicauth==1.0.0 aioice==0.9.0 --index-url piwheels - Simple index
RUN pip3 install numpy
RUN pip3 install aiortc