Run the examples for Python, see transcripts below, but got errors
pi@pi4:~/Dexter/BrickPi3/Software/Python/Examples $ sudo python Read_Info.py
No SPI response
pi@pi4:~/Dexter/BrickPi3/Software/Python/Examples $ sudo python Test_Connected.py
Communication with BrickPi3 unsuccessful
pi@pi4:~/Dexter/BrickPi3/Software/Python/Examples $ sudo python Read_Voltages.py
Traceback (most recent call last):
File “Read_Voltages.py”, line 20, in
BP = brickpi3.BrickPi3() # Create an instance of the BrickPi3 class. BP will be the BrickPi3 object.
File “build/bdist.linux-armv7l/egg/brickpi3.py”, line 295, in init
File “build/bdist.linux-armv7l/egg/brickpi3.py”, line 411, in get_manufacturer
IOError: No SPI response
Running the experimental image of buster on a Pi4 model B with 4 GB RAM and a BrickPi3. The brick is powered via the provided power supply, the green light by the switch is on, and there is no light where the power supply is plugged into the brick.
Flashing the firmware onto the BrickPi3 and using Buster is still hit and miss.
Keep attempting to flash the firmware. Eventually it goes through.
It sometimes takes me 4 attempts.
After the firmware update eventually went through, it now looks like the Python API is working, see below. I am going to check with C++ as well.#
Question: say I take a backup of the micro SD by taking its image, and then I flash the image (with balenaEtcher) on another micro SD card; after I boot with the newly flashed card, do I need to run the firmware update again?
pi@pi4:~/Dexter/BrickPi3/Software/Python/Examples $ sudo python Read_Info.py
Manufacturer : Dexter Industries
Board : BrickPi3
Serial Number : 05003472515035524E4A2020FF0XXXXX
Hardware version: 3.0.0
Firmware version: 1.4.8
Battery voltage : 11.762
9v voltage : 9.147
5v voltage : 5.03
3.3v voltage : 3.382
Hi Francesco,
Nice to see the firmware finally went through!
You won’t need to flash the firmware again, unless we release a new firmware number. It’s now in the brickpi board, and is good to go, even if you swap SD cards.
First, glad you’re up and running with the brickpi. And apologies that you had to go over so many hurdles.
Second, a word of warning about ROS. People have reported challenges in getting it to work on Raspbian. I don’t even know if it can run on Buster. Most people that I know of who use ROS have switched to Ubuntu.
The Raspberry Pi, particularly the Pi-3 and Pi-4, are picky about the quality of the SD cards used.
In my own experience, the cut-rate bargain brand SD cards are nothing but trouble. Even though they flash and verify, they usually don’t boot - and if/when they do boot, they’re totally unreliable.
Save yourself much grief and buy top-brand SD cards - the faster the better.
Avoid Kingston cards, they have known quality issues with “ghost-shift” counterfeits being mixed in with the better quality stuff. I’ve had trouble with them.
I have built ROS from source on the Pi4 with buster (the experimental image), it went smoothly. I have also implemented and run the publisher/subscriber/services ROS tutorial, so far so good. I am new to the BrickPi3 API, I thought that I would have a harder time in porting it to buster than in building ROS from source.