# PCP heating not detected in single pioreactor

**URL:** <https://forum.pioreactor.com/t/pcp-heating-not-detected-in-single-pioreactor/1070>\
**Category:** Hardware, PWM, and Optics\
**Created:** [March 9, 2026, 12:43pm UTC](https://forum.pioreactor.com/t/pcp-heating-not-detected-in-single-pioreactor/1070 "2026-03-09T12:43:54Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![ucl\_star](https://forum.pioreactor.com/letter_avatar_proxy/v4/letter/u/5fc32e/32.png) [@ucl\_star](https://forum.pioreactor.com/u/ucl_star)\
**Post date:** [March 9, 2026, 12:43pm UTC](https://forum.pioreactor.com/t/pcp-heating-not-detected-in-single-pioreactor/1070/1 "2026-03-09T12:43:54Z")

</div>

Happy Monday!

I’ve been having an issue with a single pioreactor in my array, with it being unable to proceed with calibrations due to the PCB heating not being detected. I replaced the PCB with a new unit, but the problem remains, which leads me to believe its a HAT issue.

I ran pio version -v on the command line and this is the output:  
pioreactor@pio08:~ $ pio version -v  
Pioreactor app: 26.2.26  
Pioreactor HAT: 1.2  
Pioreactor firmware:  
Bioreactor model name: Pioreactor 40ml, v1.5  
HAT serial number: 5db46022-156c-42c6-885a-92691184ff9d  
Operating system: Linux-6.12.47+rpt-rpi-v8-aarch64-with-glibc2.41  
Raspberry Pi: Raspberry Pi 4 Model B Rev 1.5  
Image version: e990902c466a30253b3abeb6b8b7f706f1c3fa61

I thought it could be rp2040 being wonky, so then I ran sudo systemctl status load\_rp2040 and got this output:  
pioreactor@pio08:~ $ sudo systemctl status load\_rp2040  
○ load\_rp2040.service - Load program into RP2040  
Loaded: loaded (/etc/systemd/system/load\_rp2040.service; disabled; preset: enabled)  
Active: inactive (dead) since Mon 2026-03-09 12:36:37 GMT; 13s ago  
Invocation: 46ca0802f72f4284b41697d0ea39e1d6  
Process: 1198 ExecStart=/bin/bash /usr/local/bin/load\_rp2040.sh (code=exited, status=0/SUCCESS)  
Process: 1201 ExecStartPost=/opt/pioreactor/venv/bin/pio log -m load\_rp2040.service successful -n systemd --local-only (code=exited, status=0/SUCCESS)  
Main PID: 1198 (code=exited, status=0/SUCCESS)  
CPU: 867ms

Mar 09 12:36:37 pio08 bash[1200]: xPSR: 0xf1000000 pc: 0x000000ea msp: 0x20041f00  
Mar 09 12:36:37 pio08 bash[1200]: 10632 bytes written at address 0x20000000  
Mar 09 12:36:37 pio08 bash[1200]: downloaded 10632 bytes in 0.303226s (34.241 KiB/s)  
Mar 09 12:36:37 pio08 bash[1198]: + success=1  
Mar 09 12:36:37 pio08 bash[1198]: + break

Finally, I tried updating the firmware, but it failed with this error below:  
pioreactor@pio08:~ $ pio update firmware  
Traceback (most recent call last):  
File “/opt/pioreactor/venv/lib/python3.13/site-packages/pioreactor/mureq.py”, line 188, in yield\_response  
conn.request(method, path, headers=dict(headers), body=body)  
~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File “/usr/lib/python3.13/http/client.py”, line 1338, in request  
self.\_send\_request(method, url, body, headers, encode\_chunked)  
~~~~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File “/usr/lib/python3.13/http/client.py”, line 1384, in \_send\_request  
self.endheaders(body, encode\_chunked=encode\_chunked)  
~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File “/usr/lib/python3.13/http/client.py”, line 1333, in endheaders  
self.\_send\_output(message\_body, encode\_chunked=encode\_chunked)  
~~~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File “/usr/lib/python3.13/http/client.py”, line 1093, in \_send\_output  
self.send(msg)  
~~~~~~~~~ ^^^^^  
File “/usr/lib/python3.13/http/client.py”, line 1037, in send  
self.connect()  
~~~~~~~~~~~~ ^^  
File “/usr/lib/python3.13/http/client.py”, line 1472, in connect  
super().connect()  
~~~~~~~~~~~~~~~ ^^  
File “/usr/lib/python3.13/http/client.py”, line 1003, in connect  
self.sock = self.\_create\_connection(  
~~~~~~~~~~~~~~~~~~~~~~~ ^  
(self.host,self.port), self.timeout, self.source\_address)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File “/usr/lib/python3.13/socket.py”, line 840, in create\_connection  
for res in getaddrinfo(host, port, 0, SOCK\_STREAM):  
~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File “/usr/lib/python3.13/socket.py”, line 977, in getaddrinfo  
for res in \_socket.getaddrinfo(host, port, family, type, proto, flags):  
~~~~~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
socket.gaierror: [Errno -3] Temporary failure in name resolution

The above exception was the direct cause of the following exception:

Traceback (most recent call last):  
File “/opt/pioreactor/venv/bin/pio”, line 6, in   
sys.exit(pio())  
~~~^^  
File “/opt/pioreactor/venv/lib/python3.13/site-packages/click/core.py”, line 1157, in **call**  
return self.main(\*args, \*\*kwargs)  
~~~~~~~~~ ^^^^^^^^^^^^^^^^^  
File “/opt/pioreactor/venv/lib/python3.13/site-packages/click/core.py”, line 1078, in main  
rv = self.invoke(ctx)  
File “/opt/pioreactor/venv/lib/python3.13/site-packages/click/core.py”, line 1688, in invoke  
return \_process\_result(sub\_ctx.command.invoke(sub\_ctx))  
~~~~~~~~~~~~~~~~~~~~~~ ^^^^^^^^^  
File “/opt/pioreactor/venv/lib/python3.13/site-packages/click/core.py”, line 1688, in invoke  
return \_process\_result(sub\_ctx.command.invoke(sub\_ctx))  
~~~~~~~~~~~~~~~~~~~~~~ ^^^^^^^^^  
File “/opt/pioreactor/venv/lib/python3.13/site-packages/click/core.py”, line 1434, in invoke  
return ctx.invoke(self.callback, \*\*ctx.params)  
~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File “/opt/pioreactor/venv/lib/python3.13/site-packages/click/core.py”, line 783, in invoke  
return \_\_callback(\*args, \*\*kwargs)  
File “/opt/pioreactor/venv/lib/python3.13/site-packages/pioreactor/cli/pio.py”, line 1232, in update\_firmware  
get(f"[https://api.github.com/repos/pioreactor/pico-build/releases/{version}](https://api.github.com/repos/pioreactor/pico-build/releases/%7Bversion%7D)").body  
~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File “/opt/pioreactor/venv/lib/python3.13/site-packages/pioreactor/mureq.py”, line 77, in get  
return request(“GET”, url=url, \*\*kwargs)  
File “/opt/pioreactor/venv/lib/python3.13/site-packages/pioreactor/mureq.py”, line 60, in request  
with yield\_response(method, url, \*\*kwargs) as response:  
~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^  
File “/usr/lib/python3.13/contextlib.py”, line 141, in **enter**  
return next(self.gen)  
File “/opt/pioreactor/venv/lib/python3.13/site-packages/pioreactor/mureq.py”, line 195, in yield\_response  
raise HTTPException(str(e)) from e  
http.client.HTTPException: [Errno -3] Temporary failure in name resolution

Any ideas on how to proceed? Thank you!

---

<div class="post-metadata">

**Author:** ![CamDavidsonPilon](https://forum.pioreactor.com/user_avatar/forum.pioreactor.com/camdavidsonpilon/32/3_2.png) [@CamDavidsonPilon](https://forum.pioreactor.com/u/CamDavidsonPilon)\
**Post date:** [March 9, 2026, 3:55pm UTC](https://forum.pioreactor.com/t/pcp-heating-not-detected-in-single-pioreactor/1070/2 "2026-03-09T15:55:43Z")

</div>

Hi @ucl_star,

So it’s not a firmware issue (the heater doesn’t use the firmware). If you replaced the heater PCB already, I would suspect that part is fine. So it could be HAT or cable. A cable is usually provided with the replacement part, so I’m going to assume you’ve replaced the cable too.

If you SSH into that worker, and run:

```auto
sudo i2cdetect -y 1

```

What is the output? The heater PCB is at address `4f`. That should be there.

---

<div class="post-metadata">

**Author:** ![ucl\_star](https://forum.pioreactor.com/letter_avatar_proxy/v4/letter/u/5fc32e/32.png) [@ucl\_star](https://forum.pioreactor.com/u/ucl_star)\
**Post date:** [March 9, 2026, 4:16pm UTC](https://forum.pioreactor.com/t/pcp-heating-not-detected-in-single-pioreactor/1070/3 "2026-03-09T16:16:22Z")

</div>

Hey Cam, here is the output of the command:

pioreactor@pio08:~ $ sudo i2cdetect -y 1  
0 1 2 3 4 5 6 7 8 9 a b c d e f  
00: – – – – – – – –  
10: – – – – – – – – – – – – – – – –  
20: – – – – – – – – – – – – – – – –  
30: – – – – – – – – – – – – – – – –  
40: – – – – – – – – – – – – – – – –  
50: – – – – – – – – – – – – – – – –  
60: – – – – – – – – – – – – – – – –  
70: – – – – – – – –

Seems that the PCB address isn’t there, along with some other adresses? This is what I get from my leader:  
pioreactor@pio01:~ $ sudo i2cdetect -y 1  
0 1 2 3 4 5 6 7 8 9 a b c d e f  
00: – – – – – – – –  
10: – – – – – – – – – – – – – – – –  
20: – – – – – – – – – – – – 2c – – –  
30: – – – – – – – – – 39 – – – – – –  
40: – – – – – – – – – 49 4a – – – – 4f  
50: – – – – – – – – – – – – – – – –  
60: – – – – – – – – – – – – – – – –  
70: – – – – – – – –

---

<div class="post-metadata">

**Author:** ![CamDavidsonPilon](https://forum.pioreactor.com/user_avatar/forum.pioreactor.com/camdavidsonpilon/32/3_2.png) [@CamDavidsonPilon](https://forum.pioreactor.com/u/CamDavidsonPilon)\
**Post date:** [March 9, 2026, 4:20pm UTC](https://forum.pioreactor.com/t/pcp-heating-not-detected-in-single-pioreactor/1070/4 "2026-03-09T16:20:40Z")

</div>

So probably the error isn’t in the heater pcb, but the rest of the i2c bus! Can you start unplugging eye-spys and seeing if you get results again? If so, inspect the connectors on the eye-spys for issues.

Cameron

---

<div class="post-metadata">

**Author:** ![ucl\_star](https://forum.pioreactor.com/letter_avatar_proxy/v4/letter/u/5fc32e/32.png) [@ucl\_star](https://forum.pioreactor.com/u/ucl_star)\
**Post date:** [March 9, 2026, 5:21pm UTC](https://forum.pioreactor.com/t/pcp-heating-not-detected-in-single-pioreactor/1070/5 "2026-03-09T17:21:33Z")

</div>

It was a dodgy connector to my AS73 spectrometer chip! Thanks again for all your help Cam!
