Is anyone else using an MCP3008 with Buster?

I have a small breadboard project setup with a Pi 3 A+ that has been running for about a year, with an MCP3008 taking a reading from a photoresistor and driving a series of LEDs when the voltage changes more than a certain percentage over a given amount of time. I use the breadboard for other tests as well and have upgraded the Pi to Buster and Node-Red V1.

The node I am using is this: node-red-node-pi-mcp3008

I noticed the other day that the light based trigger didn't appear to be working. I double and triple checked my wiring, and I also started with a fresh copy of Buster Lite and the latest Node-Red V1.03 and it still doesn't work. I have tried all 8 pins, and tried swapping in another MCP3008 that I used once and it worked at that time. None of the pins return anything other than zero, although I confirmed that I am sending a variety of voltages between 0 and 3.3 while taking the readings.

Before I try replacing the Pi to see if hardware is the issue, has anyone else confirmed that this node works with Buster?

I haven't got an MCP3008 spare to test but did you remember to enable SPI in raspi-config when you installed Buster.

Is so, - can you try running a simple Python prog to see if that can talk to the chip?

SPI is enabled. I did some googling and ran some python code which returns only zeros as well.

I found an old backup image with Stretch and Node-Red 0.19 on it that will not boot on my Pi3 A+ but does boot on a Pi 3 B that I have. Using that image and connecting the same 40 pin ribbon cable to the Pi 3 B, I get relative readings using the MCP3008 node. When I put a Buster image on the Pi 3 B I get zeros just like the 3 A+.

I guess this isn't a node-red issue since this occurs with the python script as well, but I wonder what it is about Buster that doesn't read the MCP3008 anymore.

Well I've made a new SD Card with Buster on it and put it into a robot that has an MCP3008 and it works

So this is a bit confusing now :frowning:

The MCP3008 is used to detect light levels on LDR resistors

image

Well I finally had time to come back to this. I did some further experimentation and found that I was also having issues with my mcp23017 chips on the breadboard. I did some further comparison and I believe the issue was that I somehow updated node.js to V12. The Stretch card that worked had V10 on it, and the Buster image had V12. When I rolled back my Buster install to V10 and rebuilt npm everything is working again.
I'm still not sure how I ended up with V12. I don't remember updating that but clearly I did.