I have 8 adafruit_hcsr04 range finders wired in the exact same way to a Raspberry Pi 4 but only 4 of them work and I'm at a loss.
I've verified with an ohmmeter the echo and trigger pins are physically connected to the correct GPIO Pins, swapped out the sensor to make sure it was working. The code is very simple and works on other sensors:
sonar_1 = adafruit_hcsr04.HCSR04(trigger_pin=board.D14, echo_pin=board.D15) # ok
sonar_2 = adafruit_hcsr04.HCSR04(trigger_pin=board.D8, echo_pin=board.D0) # ok
sonar_3 = adafruit_hcsr04.HCSR04(trigger_pin=board.D22, echo_pin=board.D13) # pin 15 / pin 33 does not work
sonar_4 = adafruit_hcsr04.HCSR04(trigger_pin=board.D4, echo_pin=board.D11) # ok
BCM Pin 22 and 13 are normal GPIO pins so i don't understand why it wouldn't work while others do.
These are your standard Distance Sensor https://www.adafruit.com/product/4007
Wired just like this but to pin 22 and 13 (physical pin #15 and #33)
I'm about to reformat the SD Card thinking some setting is using these pins but any advice would be appreciated.
Below is my entire /boot.config.txt:
# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details
uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1
uncomment this if your display has a black border of unused pixels visible
and your display can output without overscan
#disable_overscan=1
uncomment the following to adjust overscan. Use positive numbers if console
goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16
uncomment to force a console size. By default it will be display's size minus
overscan.
#framebuffer_width=1280
#framebuffer_height=720
uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1
uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1
uncomment to force a HDMI mode rather than DVI. This can make audio work in
DMT (computer monitor) modes
#hdmi_drive=2
uncomment to increase signal to HDMI, if you have interference, blanking, or
no display
#config_hdmi_boost=4
uncomment for composite PAL
#sdtv_mode=2
#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800
Uncomment some or all of these to enable the optional hardware interfaces
dtparam=i2c_arm=on
dtparam=i2s=on
dtparam=spi=on
dtparam=i2c_arm_baudrate=10000
Uncomment this to enable infrared communication.
#dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18
Additional overlays and parameters are documented /boot/overlays/README
Enable audio (loads snd_bcm2835)
dtparam=audio=on
[pi4]
Enable DRM VC4 V3D driver on top of the dispmanx display stack
dtoverlay=vc4-fkms-v3d
max_framebuffers=2
[all]
#dtoverlay=vc4-fkms-v3d
start_x=1
gpu_mem=128
enable_uart=1
dtoverlay=i2s-mmap
dtparam=i2s=on
