Hi Everyone,
I would appreciate help on an issue I am wasting too much time on my own trying to figure it out. We have a few RPIs that we use i2c 1-wire hats on for reading temperatures with DS18B20+ sensors . Here is one of the hats we use https://www.abelectronics.co.uk/p/60/1-wire-pi-plus
We use OWFS along with Pyownet and this has been working fine with a Docker build that is tied to legacy Resin base image. Stuck in quarantine I have decided to finally try to upgrade these devices to the new Balena base images. In trying to do so I can no longer get OWFS to work. My first suspicion is it might have something to do with OWFS possibly using systemd INITSYSTEM… but I also don’t know too much about the whole INIT world so it could also be something different. I want to start by seeing if there is anyone else using similar i2c 1-wire boards out there and using OWFS that can try to help on this as i think you would actually need the board to make sure it is fully working? Of if there is anyone you can potentially help without having one of the boards that would be great too?
Here is a link to how they suggest programming the setup: https://www.abelectronics.co.uk/kb/article/3/owfs-with-i2c-support-on-raspberry-pi
Below is what I had for a resin docker file that was working fine. When i change the base image to balena it stops working and returns a connerror.
FROM resin/raspberrypi3-python:latest
ENV DEBIAN_FRONTEND=noninteractive
ENV DEBCONF_NOWARNINGS yes
RUN apt-get update -y &&
apt-get upgrade -y &&
apt-get clean all
RUN apt-get update -y &&
apt-get install -qy apt-utils
python3
libtool
python3-dev
libtool
rpi-update
raspi-config
owfs
owserver
ow-shell
python-ow
python3-rpi.gpio
&& apt-get clean && rm -rf /var/lib/apt/lists/*
RUN pip3 install smbus
RUN pip3 install pyownet
RUN sed -i ‘20i\server: device=/dev/i2c-1’ /etc/owfs.conf
RUN sed -i ‘s/^server: FAKE = DS18S20,DS2405/#server: FAKE = DS18S20,DS2405/’ /etc/owfs.conf
RUN sed -i ‘s/^ftp: port = 2120/#ftp: port = 2120/’ /etc/owfs.conf
COPY . ./
ENV INITSYSTEM on
CMD modprobe i2c-dev && owserver -d /dev/i2c-
CMD [“python3”, “TempReader.py”]