[SOLVED] Using GrovePi+ on Raspberry Pi bullseye 64-bit OS

Tested on the Raspberry Pi4 8GB i used the following code in terminal, also the Raspi username must be “pi”, if not google how to change it or just wipe the system and start form scratch with pi as the username:
$ sudo apt install arduino
$ pip install python-periphery
$ pip install wiringpi
$ curl -kL dexterindustries.com/update_grovepi | bash
$ cd Dexter/GrovePi/Software/Python
$ wget https://github.com/DexterInd/RFR_Tools/blob/master/miscellaneous/di_i2c.py?raw=true
(then run the same wget command but for the file named “di_mutex.py?raw=true”)
$ sudo mv di_i2c.py?raw=true di_i2c.py
$ sudo mv di_mutex.py?raw=true di_mutex.py
$ python grove_led_blink.py ##check if working with LED connected to D4 on GrovePi

Notes: I downloaded a few RFR_Tools directly into the directory of the examples. If you wanted to run code that wasn’t an example you can download them into the directory of the project instead, or put them in the default pip install directory for use in every project. Also I did not install all the files from the RFR_Tools library, so some examples may not work, in order to install all of them just go to the github link and install more than the 2 files I did for this example by using the same lines of code (wget) but with alternate file names at the end of the command, after which you need to change there name with the “mv” command so it doesn’t say “?raw=true” at the end of the file.


Awesome work!
I think you’re the first one to report that it works on Bullseye 64 bits!


Have you tried it without the “?raw=true” at the end?

Actually, that shouldn’t be a part of the filename as the “?” indicates a parameter is being passed, (i.e. a “raw” file transfer).

1 Like

if you type “raw” instead of “blob” in the “wget https://github.com/DexterInd/RFR_Tools/*blob*/master/miscellaneous/di_i2c.py?raw=true” link i believe you dont need the ?raw=true at the end, you then also don’t need to change the file name with the “sudo mv” command. If you use the link with blob and don’t use the raw=true you grab the html file for the page instead of the .py file. Although I haven’t tried the link with raw instead of blob, from my understanding of GitHub I think that’s how it works.


Using the GitHub UI there is a “RAW” button that will give the URL to the raw file which when given to a wget will bring down the file correctly formatted.

Doing that for di_i2c.py gives the URL as:


wget https://raw.githubusercontent.com/DexterInd/RFR_Tools/master/miscellaneous/dexter_i2c.py

will bring down the file without needing the rename.

1 Like

yeah if you change the address that you are accessing with wget you shouldn’t need the raw=true at the end. With the address I used if you don’t have the raw=true you get the html file for the webpage.