Posts: 1
Joined: Wed Nov 29, 2017 9:58 am

MCP3008 via SPI0 gives reading on not connected channels

Wed Nov 29, 2017 10:15 am

I am a beginner in RPi and is not familiar with electronics, please accept my apologies if my question seems low level.

I had connected a MCP3008 ADC via SPI0 at RPi 3b (following AdaFruit's connection diagram, not AGND and DGND both connected to the same GND from RPi), and use AdaFruit's python library to get the readings. In channel 1 - 3, I had connected 3 analogue sensors, running on 5v from the RPi. When I read the channels, the reading is inconsistent with hype and lows. Strangely enough, on the channels that I connected nothing (0, 4-7), there is always a reading coming through.

With my limited electronic knowledge, I understand no pull-up / pull-down resistor shall not be used on the MCP3008. May I see if anyone could shed me some light to trouble shoot this? or actually, this is a normal behavior of an ADC? I had spend nights on googling and trying to identify to issue but still have no idea~

P.S. I had swapped the breadboard and the jump wires, but still give me same issue, will it be a bad chip I got?

Million Thanks!

Posts: 203
Joined: Sun Sep 23, 2012 8:09 pm
Contact: Website

Re: MCP3008 via SPI0 gives reading on not connected channels

Mon Dec 04, 2017 11:53 am

If the tutorial at ... s?view=all was used and everything was connected up as suggested by the tutorial the input voltage range for each channel is 0V through 3.3V. In this case, connecting sensors that output 5V wouldn't be the best of ideas.

If nothing is connected to a channel it's still possible to read the value of that channel. The value read will be of little use.

Return to “Interfacing (DSI, CSI, I2C, etc.)”