Raspberry Pi does not detect PicoBorgRev board

Hey everyone. After a couple of weeks lurking around and reading these forums, and trying out the other suggestions offered here, I am completely at a loss as to how to continue.

Basically, I went through all of the installation instructions outlined for the diddyborg, and I am attempting to run the diddySequence.py script.

About 1.5 weeks ago, I was able to run the script and the vehicle moved in a square just like it was supposed to. However, mere minutes after getting that test to work (which I got to work multiple times), it suddenly could not find the PicoBorgRev board. I made no programming or procedural changes to the vehicle whatsoever. It just stopped detecting the board.

Here are the following things I have attempted:

I ran a python script which alternated 3.3v-0v on all the pins from which I was connecting wires to the PicoBorgRev. On one raspberry pi, I got an undervoltage (only 0.2 v recorded) on BCM 2. From this information, I replaced the raspberry pi with a spare raspberry pi of the same version. Just to be sure (even though I know the raspi is basically just a motherboard) I went through all of the "Getting Started" procedures once more.

I ended up with the exact same problem. However, when I ran the python script for testing pin voltages, I did *not* get the insufficient voltage in BCM 2, and all 6 pins I was using read the voltages just fine.

I then decided to test the two 3-pin connectors with the multimeter to make sure that they were all allowing current through without breaks in the connection, and all of them did.

Then I decided to replace the PicoBorgRev board with a spare board that I also have. The spare board did not work either; exact same symptoms.

I then installed the WiringPi diagnostic tool to test the connections, and it did indeed read a fault in pin #9. Isn't pin #9 a GND pin? Either way, I was not using this pin for this setup, so I don't see the effect it could have.

I don't know where to go from here. Any suggestions? Did I install something wrong? I have the PicoBorgRev and diddyborg directories installed just fine and I am able to run python scripts just fine.

Any suggestions on additional tests I can perform or possible problems?

piborg's picture

This all sounds really strange...

Unfortunately there are a few different numbering schemes for the GPIO pins.
This is the pin that Wiring Pi lists as #9: http://pinout.xyz/pinout/pin5_gpio3
This pin is needed for the I2C, so any issues with that pin suggest something is not right.

The big concern here is that two different boards, it may mean something is causing the damage.

Have you double-checked that the 3-pin wires are attached the correct way around?
Having them swapped over will likely put 5V on the I2C pins and damage them.

Hi piborg,

I have indeed double checked that they were wired correctly. Just to be sure, this process was repeated 3 times including a complete teardown and rebuild. Additionally, I swapped out the wire connectors themselves (the 2 triplets replaced with 6 singles) and had the same issues.

I tested that the wires themselves were good with a multimeter and both sets were good.

I'm not sure what else is missing here. The only other board I can think of is the battborg itself. That tiny board is the only thing left that I did not swap out. Is there anything that a broken battborg could do that would cause the errors in finding the above hardware?

piborg's picture

Does Wiring Pi say there is a fault on both Raspberry Pis, or just the one?

As the BattBorg does not make any connection to the I2C pins it can only really cause such a problem if fitted incorrectly.

Hi piborg,

Sorry for the delay again. I have very little actual time testing this stuff and there is lots of down time in between where I do not have access.

I have tested WiringPi with both Raspberry Pi boards and it says

"
The I2C pins 8: 9: Pin 9 failure - expected 1, got 0

One fault detected.
"
So it's the same error for both boards. Could it be that this is a rare case where both raspberry pi boards have the exact same hardware fault? Both boards were used for powering diddyborg at some point in their lives.

Is there anything that could happen in the installation that would so consistently damage precisely that one pin?

piborg's picture

Unfortunately both are possible in this case.

We have had a couple of Raspberry Pis which have had non-functional GPIO pins from the start, but they are rare.

It is more likely something caused the fault with the boards.
The only cause I can think of which would consistently damage that pin is if the two 3-pin cables are connected incorrectly by mistake.
This could connect 5V coming from the BattBorg to one or both of the I2C GPIO pins, probably damaging them.
Once damaged they will no longer work, even if the connections are corrected.

My only suggestion here is to start again very carefully to make sure no damage is caused.
If it was a cabling problem then the PicoBorg Reverse should still be undamaged.

This is what I would suggest:

  1. If you have anything other than the DiddyBorg connected to the GPIO remove it completely
  2. Get a new Raspberry Pi - do not connect it to the DiddyBorg yet!
  3. Use a USB power supply and WiringPi to check the GPIO is all happy
  4. Remove the old Raspberry Pi from the DiddyBorg
    I would suggest leaving the lid and camera mount off while testing, they can be re-fitted when the DiddyBorg is working
  5. Remove the batteries from the DiddyBorg
  6. Disconnect the BattBorg from the DiddyBorg completely
  7. Disconnect the USB power from the Raspberry Pi
  8. Connect the Raspberry Pi into the DiddyBorg as per the instructions
  9. Re-connect the USB power supply and see if you can run any of the PicoBorg Reverse scripts
    They should load and run, but there will be no motor movement yet
  10. If it is not working double-check cabling is correct.
    If you cannot get it to work at this point stop and tell us what is happening, something might be wrong!
  11. Disconnect the USB power from the Raspberry Pi
  12. Re-connect the BattBorg, but leave the batteries disconnected!
  13. Re-connect the USB power supply and see if you can run any of the PicoBorg Reverse scripts
    They should load and run, but there will be no motor movement yet
  14. If you cannot get it to work at this point stop and tell us what is happening, the BattBorg could be faulty!
  15. Disconnect the USB power from the Raspberry Pi
  16. Now connect the batteries up to the DiddyBorg, at this point it should all be connected normally
  17. Check if the DiddyBorg is able to move properly now, if not let us know what is happening, something is probably faulty!

Doing the above should be the least risky way of getting running again.
With any luck it will all work fine, if not it should be apparent there is a problem before doing any further damage.

*edit* disregard last message.

So far I got Step 10 to work just fine. I am able to run the scripts now and it detects the picoborgrev board!

Stand by...

Success! I finally got the python scripts to work! Thanks so much for the assistance. It seems that it was indeed two raspberry pi boards which had identical broken pins. I still have no idea what damaged those pins, but now there is a working one and I'll try to do my best control the use of its so no one messes it up further.

I think part of the difficulty was the fact that this is shared hardware and it is difficult finding out who touched it on the day when I do not have access to it.

piborg's picture

Glad to hear everything is now working for you :)

Having had to share equipment like this in the past I know what you mean.
Most of the time if someone broke something they tried to hide it out of embarrassment.

Unfortunately the GPIO on the Raspberry Pi is easily damaged, connecting 5V to any of the I/O pins tends to damage them.
I wonder if a GPIO protection board would prove helpful in this case.
For example: https://www.modmypi.com/raspberry-pi/breakout-boards/raspio/raspio-pro-e...

Subscribe to Comments for "Raspberry Pi does not detect PicoBorgRev board"