# Joe-ab1do/mcp-pcf-aio install problem

**URL:** <https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430>\
**Category:** General\
**Created:** [7 January 2025 15:06 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430 "2025-01-07T15:06:59Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![pin32](https://avatars.discourse-cdn.com/v4/letter/p/2bfe46/32.png) [@pin32](https://discourse.nodered.org/u/pin32)\
**Post date:** [7 January 2025 15:06 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/1 "2025-01-07T15:06:59Z")

</div>

hi, I’m trying to upgrade my hardware from pi3b to pi4, I can’t install it, every time I try the web interface disconnects and you can’t reach it anymore. I’m using the 64bit OS, previously I used on 32bit and it worked well, can this be the problem?

---

<div class="post-metadata">

**Author:** ![pin32](https://avatars.discourse-cdn.com/v4/letter/p/2bfe46/32.png) [@pin32](https://discourse.nodered.org/u/pin32)\
**Post date:** [7 January 2025 15:21 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/2 "2025-01-07T15:21:16Z")

</div>

Uninstalling (from terminal) back online

---

<div class="post-metadata">

**Author:** ![jbudd](https://avatars.discourse-cdn.com/v4/letter/j/5f8ce5/32.png) [@jbudd](https://discourse.nodered.org/u/jbudd)\
**Post date:** [7 January 2025 15:29 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/3 "2025-01-07T15:29:13Z")

</div>

Does that mean the problem is resolved?

---

<div class="post-metadata">

**Author:** ![pin32](https://avatars.discourse-cdn.com/v4/letter/p/2bfe46/32.png) [@pin32](https://discourse.nodered.org/u/pin32)\
**Post date:** [7 January 2025 15:44 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/4 "2025-01-07T15:44:03Z")

</div>

Thank you for your prompt response.  
no no I have solved ... if I try to reinstall I still have the same problem.

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [7 January 2025 15:56 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/5 "2025-01-07T15:56:00Z")

</div>

> [@pin32](#):
>
> if I try to reinstall I still have the same problem

Try to install what exactly? Show us the log from trying to install whatever it is.

---

<div class="post-metadata">

**Author:** ![pin32](https://avatars.discourse-cdn.com/v4/letter/p/2bfe46/32.png) [@pin32](https://discourse.nodered.org/u/pin32)\
**Post date:** [7 January 2025 16:09 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/6 "2025-01-07T16:09:28Z")

</div>

> [@Colin](#):
>
> Try to install what exactly? Show us the log from trying to install whatever it is.

@joe-ab1do/mcp-pcf-aio

Node-Red nodes for i2c port expanders MCP23008, MCP23017, PCF8574(A) & PCF8575

this is the nodoche I try to install

2025-01-07T16:06:00.642Z Install : @joe-ab1do/mcp-pcf-aio 3.3.1

2025-01-07T16:06:00.736Z npm install --no-audit --no-update-notifier --no-fund --save --save-prefix=~ --omit=dev --engine-strict @joe-ab1do/mcp-pcf-aio@3.3.1

2025-01-07T16:06:08.057Z [out]

2025-01-07T16:06:08.057Z [out] added 2 packages in 7s

2025-01-07T16:06:08.095Z rc=0

This is the log

---

<div class="post-metadata">

**Author:** ![pin32](https://avatars.discourse-cdn.com/v4/letter/p/2bfe46/32.png) [@pin32](https://discourse.nodered.org/u/pin32)\
**Post date:** [7 January 2025 16:13 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/7 "2025-01-07T16:13:58Z")

</div>

soon after it disconnects and is no longer reachable, only a deinstallation of the node restores access to the web page.

npm uninstall @joe-ab1do/mcp-pcf-aio

from ssh

---

<div class="post-metadata">

**Author:** ![pin32](https://avatars.discourse-cdn.com/v4/letter/p/2bfe46/32.png) [@pin32](https://discourse.nodered.org/u/pin32)\
**Post date:** [7 January 2025 17:53 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/8 "2025-01-07T17:53:35Z")

</div>

Trying various things... strangely if I install the knot first:

npm install ncd-red-mcp23017

It no longer locks up when installing:

@joe-ab1do/mcp-pcf-aio

and it seems to work...

What can it be?

in the list of installed nodes is present (after various tests) the node:

ncd-red-comm

who was not present before.

---

<div class="post-metadata">

**Author:** ![Joe-AB1DO](https://avatars.discourse-cdn.com/v4/letter/j/f19dbf/32.png) [@Joe-AB1DO](https://discourse.nodered.org/u/Joe-AB1DO)\
**Post date:** [7 January 2025 18:47 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/9 "2025-01-07T18:47:59Z")

</div>

From the various posts here it seems you are installing @joe-ab1do/mcp-pcf-aio in a terminal using ssh. Is this correct? Is there a reason you don't use node-red's palette manager to install? Can you connect in a browser to your node-red installation on your Pi?

The log you showed looks correct. Just to be clear, there is no link/dependency/etc between ncd-red-mcp23017 and @joe-ab1do/mcp-pcf-aio, so I don't understand what is going on there. However they might interfere.

At this stage I would start anew: uninstall ncd-red-mcp23017 and uninstall @joe-ab1do/mcp-pcf-aio and remove all flows. Then Depoly. Then install @joe-ab1do/mcp-pcf-aio, preferably using the palette manager.

BTW, if you have a flow that is using one or more @joe-ab1do/mcp-pcf-aio nodes and you do not have that node installed, you will have to remove that flow first, deploy and then install @joe-ab1do/mcp-pcf-aio.

---

<div class="post-metadata">

**Author:** ![pin32](https://avatars.discourse-cdn.com/v4/letter/p/2bfe46/32.png) [@pin32](https://discourse.nodered.org/u/pin32)\
**Post date:** [7 January 2025 19:28 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/10 "2025-01-07T19:28:58Z")

</div>

Thank you for your kind response.

I already tried to do everything you have listed without any positive results.  
I tried snche with clean installation but it does not change anything.  
As soon as you install the node  
@joe-ab1do/mcp-pcf-aio  
Regardless if you are blocking the web interface from palettes or ssh, it will restart only by installing  
ncd-red-mcp23017  
or remove the first node  
I did 1000 tests but the only way to make the system work is to keep them both...  
I would like to provide further information to illuminate the way but have no idea what to go see

---

<div class="post-metadata">

**Author:** ![Joe-AB1DO](https://avatars.discourse-cdn.com/v4/letter/j/f19dbf/32.png) [@Joe-AB1DO](https://discourse.nodered.org/u/Joe-AB1DO)\
**Post date:** [7 January 2025 20:01 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/11 "2025-01-07T20:01:06Z")

</div>

> [@pin32](#):
>
> Regardless if you are blocking the web interface from palettes or ssh, it will restart only by installing  
> ncd-red-mcp23017  
> or remove the first node

Not quite sure I understand all this.

- What will restart?
- Which is the "first node"?

---

<div class="post-metadata">

**Author:** ![pin32](https://avatars.discourse-cdn.com/v4/letter/p/2bfe46/32.png) [@pin32](https://discourse.nodered.org/u/pin32)\
**Post date:** [7 January 2025 20:23 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/12 "2025-01-07T20:23:08Z")

</div>

@joe-ab1do/mcp-pcf-aio  
It’s the knot I need

ncd-red-mcp23017  
is the node that I am forced to install to make work what I need, or the one above.

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [7 January 2025 21:01 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/13 "2025-01-07T21:01:06Z")

</div>

To get a better idea of what is happening stop node red then start it again in a command window. Then you will see the node red log which may give a clue.

---

<div class="post-metadata">

**Author:** ![Joe-AB1DO](https://avatars.discourse-cdn.com/v4/letter/j/f19dbf/32.png) [@Joe-AB1DO](https://discourse.nodered.org/u/Joe-AB1DO)\
**Post date:** [7 January 2025 21:04 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/14 "2025-01-07T21:04:58Z")

</div>

You shouldn't need ncd-red-mcp23017.

- Let's start from some basics: I assume you are using a mcp23017? If not, what?

- You have the hardware connected correctly, e.g. i2c-1, address 0x20 and the address pins on the chip are connected correctly?

- Assuming you are using i2c bus 1, in a terminal enter `i2cdetect -y 1`. Do you see the address listed for your chip (e.g. if your chip has address 0x20 you should see 20 in the output). Please copy the result in your reply.

- Uninstall ncd-red-mcp23017 and deploy.

- In your palette menu on the left of your screen you should see two @joe-ab1do/mcp-pcf-aio nodes: an input-node and an output-node:  

- Delete all flows you have using these nodes and deploy

- In a clean flow/tab, drag the mcp pcf out node onto the design area. Double click on it to open the edit screen. In the drop-down box to the right of chip click on `Add new mcp pcf chip...` and then click on the pencil icon to open a second menu where you identify the physical chip by entering the various items. Click `Add` when you are done. Then select the pin number this node will be attached to. Click `Done` when complete. Deploy.

- On the right of your screen, click on the gear icon to see the physical chips you have created:

---

<div class="post-metadata">

**Author:** ![pin32](https://avatars.discourse-cdn.com/v4/letter/p/2bfe46/32.png) [@pin32](https://discourse.nodered.org/u/pin32)\
**Post date:** [8 January 2025 09:07 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/15 "2025-01-08T09:07:56Z")

</div>

Good morning and thank you for your feedback.  
As already indicated in my previous messages all tests were carried out without success.  
The situation in brief:  
hardware: rpi4 4 gb + expansion already in use previously successfully on rpi3b (this is a hardware upgrade)

configuration: 40 pin rpi connector + 2 mcp23017 with addresses 20 and 27 (expansion board already in use) used as 16 in and 16 out

Operating system: raspiOSLite 64bit (updated and clean) with rpi i2c interface enabled

node-red version: 4.0.8 version "PI"

description of the problem encountered:  
with a fully piped system we proceed through palettes to install the node @joe-ab1do/mcp-pcf-aio  
As soon as its installation is finished the web interface will crash and it will be no longer reachable.

Tests carried out without the  
-reboot: does not start  
-New reintallation: does not resolve  
-Uninstall the node via ssh (the web interface does not work): restore the functionality of the web interface  
-Retry installation: same result  
-installation from terminal "npm i @joe-ab1do/mcp-pcf-aio": does not resolve  
-installation from terminal "pm install i2c-bus " + " npm i @joe-ab1do/mcp-pcf-aio: does not resolve

Tests carried out with improving  
-with clean system if you install the node "ncd-red-mcp23017" before the next installation of the node "@joe-ab1do/mcp-pcf-aio" is successful.  
-if you try to remove "ncd-red-mcp23017" the problem returns (web interface not reachable), re-installing it will work again.  
-after the installation of "ncd-red-mcp23017" I noticed that is added node "ncd-red-comm", with clean installation I tried to install it before the mode "@joe-ab1do/mcp-pcf-aio" but nothing changes, if you do not hold the node "ncd-red-mcp23017" You cannot install "@joe-ab1do/mcp-pcf-aio" without having the web interface lock.

- With the installation of the node "@joe-ab1do/mcp-pcf-aio" no errors are reported by both web and ssh.

Thank you for your interest

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [8 January 2025 10:07 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/16 "2025-01-08T10:07:36Z")

</div>

In one of the 'does not start' situations, what do you see if you try to stop and start node red using  
`node-red-stop`  
`node-red-start`

---

<div class="post-metadata">

**Author:** ![pin32](https://avatars.discourse-cdn.com/v4/letter/p/2bfe46/32.png) [@pin32](https://discourse.nodered.org/u/pin32)\
**Post date:** [8 January 2025 12:52 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/17 "2025-01-08T12:52:37Z")

</div>

> [@Colin](#):
>
> `node-red-start`

```auto
Welcome to Node-RED
===================
8 Jan 13:52:02 - [info] Node-RED version: v4.0.8
8 Jan 13:52:02 - [info] Node.js version: v20.18.1
8 Jan 13:52:02 - [info] Linux 6.6.51+rpt-rpi-v8 arm LE
8 Jan 13:52:03 - [info] Loading palette nodes
8 Jan 13:52:07 - [red] Uncaught Exception:
8 Jan 13:52:07 - [error] TypeError: Cannot read properties of null (reading 'toString')
    at /home/pin32/.node-red/node_modules/@joe-ab1do/mcp-pcf-aio/mcp-pcf-aio.js:957:40
    at new Promise (<anonymous>)
    at module.exports (/home/pin32/.node-red/node_modules/@joe-ab1do/mcp-pcf-aio/mcp-pcf-aio.js:952:24)
    at loadNodeSet (/usr/lib/node_modules/node-red/node_modules/@node-red/registry/lib/loader.js:359:27)
    at /usr/lib/node_modules/node-red/node_modules/@node-red/registry/lib/loader.js:453:31
    at Array.forEach (<anonymous>)
    at loadNodeSetList (/usr/lib/node_modules/node-red/node_modules/@node-red/registry/lib/loader.js:448:11)
    at /usr/lib/node_modules/node-red/node_modules/@node-red/registry/lib/loader.js:145:16
nodered.service: Main process exited, code=exited, status=1/FAILURE
nodered.service: Failed with result 'exit-code'.
nodered.service: Consumed 8.868s CPU time.

```

this with node "ncd-red-mcp23017" uninstalled

```auto
Start Node-RED
 
Once Node-RED has started, point a browser at http://192.168.1.97:1880
On Pi Node-RED works better with the Firefox or Chrome browser
 
Use node-red-stop to stop Node-RED
Use node-red-start to start Node-RED again
Use node-red-log to view the recent log output
Use sudo systemctl enable nodered.service to autostart Node-RED at every boot
Use sudo systemctl disable nodered.service to disable autostart on boot
 
To find more nodes and example flows - go to http://flows.nodered.org
 
Starting as a systemd service.
8 Jan 14:09:15 - [info] Stopping flows
Error: Port is not open
    at SerialPort.close (/home/pin32/.node-red/node_modules/node-red-contrib-victron-vedirect-usb/node_modules/@serialport/stream/dist/index.js:229:37)
    at VEDirectUSB.<anonymous> (/home/pin32/.node-red/node_modules/node-red-contrib-victron-vedirect-usb/src/nodes/vedirect-usb.js:42:25)
    at Node.close (/usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:345:26)
    at stopNode (/usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/flows/Flow.js:749:31)
    at Flow.stop (/usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/flows/Flow.js:388:35)
    at /usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/flows/index.js:481:43
    at Array.forEach (<anonymous>)
    at stop (/usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/flows/index.js:477:19)
    at /usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/flows/index.js:220:20
8 Jan 14:09:15 - [info] [mqtt-broker:e276a877253691df] Disconnected from broker: mqtt://192.168.1.99:1883
8 Jan 14:09:15 - [info] Stopped flows
8 Jan 14:09:15 - [info] Updated flows
8 Jan 14:09:15 - [info] Starting flows
  MCP23017 chip initialization OK. BusNumber=1 Address=0X27 id:ac05a4c7c52289c4 startAllHigh = false
  MCP23017 chip initialization OK. BusNumber=1 Address=0X20 id:891324a310fe6192 startAllHigh = false
8 Jan 14:09:17 - [info] Started flows
[Error: Error: No such file or directory, cannot open /dev/ttyUSB0]
8 Jan 14:09:17 - [info] [mqtt-broker:e276a877253691df] Connected to broker: mqtt://192.168.1.99:1883

```

This with "ncd-red-mcp23017" node installed

---

<div class="post-metadata">

**Author:** ![pin32](https://avatars.discourse-cdn.com/v4/letter/p/2bfe46/32.png) [@pin32](https://discourse.nodered.org/u/pin32)\
**Post date:** [8 January 2025 13:20 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/18 "2025-01-08T13:20:40Z")

</div>

I tried with 32 bit OS and it doesn’t change much.  
the previous test was performed on 32bit

---

<div class="post-metadata">

**Author:** ![pin32](https://avatars.discourse-cdn.com/v4/letter/p/2bfe46/32.png) [@pin32](https://discourse.nodered.org/u/pin32)\
**Post date:** [8 January 2025 13:34 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/19 "2025-01-08T13:34:12Z")

</div>

```auto
pin32@Node-Red:~ $ node-red-log

 
  MCP23017 chip initialization OK. BusNumber=1 Address=0X27 id:ac05a4c7c52289c4 startAllHigh = false
  MCP23017 chip initialization OK. BusNumber=1 Address=0X20 id:891324a310fe6192 startAllHigh = false
8 Jan 14:01:13 - [info] Started flows
[Error: Error: No such file or directory, cannot open /dev/ttyUSB0]
8 Jan 14:01:14 - [info] [mqtt-broker:e276a877253691df] Connected to broker: mqtt://192.168.1.99:1883
8 Jan 14:09:15 - [info] Stopping flows
Error: Port is not open
    at SerialPort.close (/home/pin32/.node-red/node_modules/node-red-contrib-victron-vedirect-usb/node_modules/@serialport/stream/dist/index.js:229:37)
    at VEDirectUSB.<anonymous> (/home/pin32/.node-red/node_modules/node-red-contrib-victron-vedirect-usb/src/nodes/vedirect-usb.js:42:25)
    at Node.close (/usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:345:26)
    at stopNode (/usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/flows/Flow.js:749:31)
    at Flow.stop (/usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/flows/Flow.js:388:35)
    at /usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/flows/index.js:481:43
    at Array.forEach (<anonymous>)
    at stop (/usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/flows/index.js:477:19)
    at /usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/flows/index.js:220:20
8 Jan 14:09:15 - [info] [mqtt-broker:e276a877253691df] Disconnected from broker: mqtt://192.168.1.99:1883
8 Jan 14:09:15 - [info] Stopped flows
8 Jan 14:09:15 - [info] Updated flows
8 Jan 14:09:15 - [info] Starting flows
  MCP23017 chip initialization OK. BusNumber=1 Address=0X27 id:ac05a4c7c52289c4 startAllHigh = false
  MCP23017 chip initialization OK. BusNumber=1 Address=0X20 id:891324a310fe6192 startAllHigh = false
8 Jan 14:09:17 - [info] Started flows
[Error: Error: No such file or directory, cannot open /dev/ttyUSB0]
8 Jan 14:09:17 - [info] [mqtt-broker:e276a877253691df] Connected to broker: mqtt://192.168.1.99:1883

```

usb0 non connect

---

<div class="post-metadata">

**Author:** ![Joe-AB1DO](https://avatars.discourse-cdn.com/v4/letter/j/f19dbf/32.png) [@Joe-AB1DO](https://discourse.nodered.org/u/Joe-AB1DO)\
**Post date:** [8 January 2025 15:43 UTC](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430/20 "2025-01-08T15:43:37Z")

</div>

```auto
8 Jan 13:52:07 - [error] TypeError: Cannot read properties of null (reading 'toString')
    at /home/pin32/.node-red/node_modules/@joe-ab1do/mcp-pcf-aio/mcp-pcf-aio.js:957:40

```

This function is performing `i2cdetect -l` and looks like it is resulting in null, which in turn results in the 'toString' error. Could you, without installing ncd-red-mcp23017, in a terminal run `i2cdetect -l` and show the result.

What mcp23017 board are you using (please paste the link).

[Next page](https://discourse.nodered.org/t/joe-ab1do-mcp-pcf-aio-install-problem/94430.md?page=2)
