Installation Issues
Forums:
Post here for queries regarding setup problems.
We recommend you try using the troubleshooting instructions here first if you have not already.
Please try to list as much about the problem as you can (OS distribution, versions, motor setup et cetera), the more we know the easier it is to help :)
covertbagel
Thu, 04/03/2014 - 08:46
Permalink
Output Voltage vs Current
I'm wanting to verify that the output voltage for a regular DC motor is always the same as the input voltage? Only current is modified?
Or is it the other way around?
piborg
Thu, 04/03/2014 - 12:15
Permalink
Pulse Width Modulation
The output voltage is changed by using a method known as Pulse Width Modulation (PWM).
The lower the drive power the lower the output voltage is, the actual output can be worked out with:
drive power X input voltage = output voltage
For example with a 12v supply and a 30 % drive power we have:
0.3 X 12 = 3.6v output voltage
The current depends on both what the input supply can provide (can be large in the case of batteries) and how much the motor requires.
The board does not directly control the current.
See this video for an easy to understand explanation of PWM: https://www.youtube.com/watch?v=Lf7JJAAZxEU
See the Wikipedia page https://en.wikipedia.org/wiki/Pulse-width_modulation for a more detailed explanation of PWM.
Jay
Sat, 04/05/2014 - 17:00
Permalink
import error, no module named PicoBorgRev
Hi
I received my PicoBorg Reverse today, very fast delivery.
I followed the getting started instructions and i am able to use the desktop shortcut to control the motors manually with the slider. works great.
Now I am trying to use webiopi to trigger python macros from a webpage. ( had running successfully using the pirocon controller, all be it with out enough power to turn)
https://code.google.com/p/webiopi/wiki/INSTALL
When i try to use the picoborgreverse from inside another python script, (the "macros" file that webiopi uses to control the gpios) the terminal tells me that there is no module named PicoBorgRev.
i have a copy of PicoBorgRev.py in the same folder as my macros python script, is this right?
do i need to make it so the PicoBorgRev.py file has some sort of root permission?
also i think that webiopi needs to set relevant gpios to out when it starts up, if i were tell the gpios that the picoborgrev uses, to be out for this. would that be ok with I2c? what would those gpio numbers be?
Thank you, i hope i have explained the problem clear enough, if not please ask, i have also attached a copy of the python i am trying to call the picoborgrev commands from.
Thank You
Jay
Jay
Sun, 04/06/2014 - 18:09
Permalink
extra info
i should mention the attached file still contains the gpio setup i mentioned from the webiopi pirocon setup, its the last sections at the bottom.
i have left it so you can see what i meant by webiopi needing to setup gpios.
when i run python and then help from the command line and go to see the list of modules, i dont appear to have anything to do with the picoborgrev listed there.
piborg
Mon, 04/07/2014 - 12:35
Permalink
Python Path
The problem comes from Python not knowing where to look for the PicoBorgRev.py file.
The easiest way to fix the problem is to add the folder where PicoBorgRev.py lives to Python's search path.
We can do this directly from the code, so for your example we can add a few lines before the main imports to do this:
The PicoBorg Reverse uses I2C to handle communications, which are on GPIO 0 and GPIO 1.
I believe you do not have to call
GPIO.setFunction
for these pins, since the PicoBorgRev.py script uses the smbus library to control the I2C.Jay
Mon, 04/07/2014 - 15:23
Permalink
Thanks.
Thanks.
Adding those lines worked great and i no longer have the module not found error.
but now i have a line in the webiopi debug which says there is an invalid syntax error on the PicoBorgRev.py, line 87. i have not altered the original picoborgrev.py, could this be to do with webiopi reading it wrong somehow?
sorry for all the questions, i am still just learning how to use python
Thanks for getting back to me.
Jay
piborg
Mon, 04/07/2014 - 18:14
Permalink
Python 3 and PicoBorg Reverse
It seems like WebIOPi is using Python 3, this is causing two problems:
The first problem is easy to fix, it simply requires a version using the correct print statements
To use this version you will need to change the import statement to
Then you can use it normally.
The second problem is a bit more tricky, what we can do is rebuild smbus for Python 3 by making some small changes to the source:
This should make the smbus module available to Python 3, and hopefully make everything work happily.
Out of interest do you have anything fun planned for your Internet of Things controlled robot?
Jay
Tue, 04/08/2014 - 00:30
Permalink
those instructions worked
those instructions worked great! now its time to play with the code and get the tank moving
thank you for your help and for making it easy to understand and follow.
i will make a copy of the webiopi html and python files available for others to use if you like, once i have it going.
piborg
Tue, 04/08/2014 - 11:18
Permalink
^_^
Glad to hear it is all working now.
It sounds like a great little project, we would love to see some photos when you have it ready!
Making the files available to others would be wonderful, we love it when people share with others (the true spirit of open-source software).
Jay
Mon, 04/07/2014 - 22:34
Permalink
Thank you
Thank you. i will try as you said.
I should be able to follow those instructions with out too much hassle, the first code is to be entered in the LXterminal, the second is a change to the my python file, and the third is to be entered line for line? into LXterminal, is that right?
Thank you, for helping you have made things a lot easier for me and i look forward to using the simple commands way of controlling the motors with your picoborgrev, instead of gpios on/off/on etc
I am building a web browser controlled mobile IP camera, using a heng long tiger1 for the chassis, its just a camera on tank tracks really, but its my starting point, one day my own droid. i'm just starting to get a hang of python
i currently have the pi, the picoborgrev, and a router nicely fitted inside the tank with just the turret missing.
in its place will be a HD pan/tilt ip camera,
with webiopi i have a page with just, for now, the direction buttons, a image place holder, and a text to speech (currently festival but i am looking at using google voice eventually). i want to use an old adapted mobile to trigger a bistable latching relay to turn the whole thing on and off, and i found a tutorial about having your pi tweet you when it boots up, this way i could start the robot and access it and drive it around the house from anywhere, the whole thing is totally unnecessary but cool. future ideas for it include, metal track upgrades so it can go outside, ultrasonic range finder, and if i ever work it out i would love to use opencv and or ROS with a kinect. oh and a cool paint job.
Thanks again
Jay
nathan@platfoot.com
Fri, 05/30/2014 - 04:09
Permalink
No PicoBorg Reverse boards found
I have my cables wired correctly, I've checked them three times. Used ScanForPicoBorgReverse() command and it can't find it. Suggestions? Could it be something in my Pi? (FYI call me dumb but I literally blew up my last PBR unit. Hooked a car battery up to the battery pins and had 'em backwards. Pop went the I2C units, literally split one in half, oops. Could that have messed up my Pi as well?) -Nathan-
piborg
Fri, 05/30/2014 - 16:21
Permalink
:(
Sorry to hear you had problems, reverse polarity power connection is the only wiring mistake with the screw terminals which the PBR cannot deal with...
It is quite possible that some of the GPIO pins are no longer working on the Raspberry Pi, they are not protected from back-powering in any way.
Do you have another Raspberry Pi you could borrow to check if the PBR itself works?
You do not need to attach motors or a battery to do this, just the six wires to the GPIO and check if the ScanForPicoBorgReverse() can see anything.
nathan@platfoot.com
Mon, 06/02/2014 - 17:37
Permalink
I have ordered another Pi and
I have ordered another Pi and I will check it once it comes in
mattwarrentowns...
Wed, 08/06/2014 - 05:42
Permalink
self.bus = smbus.SMBus(self.busNumber) IO issue [SOLVED]
Edit: I'll never know what caused this, but my copy of debian was a couple months old, just got a fresh one and worked like a charm :)
Having a problem thats stumped me, code excerpt below:
pi@raspberrypi ~/picoborgrev $ sudo python pbrSequence.py
Loading PicoBorg Reverse on bus 1, address 44
Traceback (most recent call last):
File "pbrSequence.py", line 12, in
PBR.Init() # Set the board up (checks the board is connected)
File "/home/pi/picoborgrev/PicoBorgRev.py", line 234, in Init
self.bus = smbus.SMBus(self.busNumber)
IOError: [Errno 2] No such file or directory
^ It seems to be able to find PicoBorgRev.py fine if its reading line numbers, the board LED flashes red once when connected and i'm using the default code files supplies which installed no problem. Even when I try manually assigning the busNumber to 1, manually setting path to include the python library. This problem stops me from launching any script requiring PicoBorgRev - But I cant even tell if its a hardware or software problem.
Thoughts??
piborg
Wed, 08/06/2014 - 10:56
Permalink
How odd...
Glad to hear you have gotten past the problem in the end.
I cannot really be certain what the problem was, but my best guess would be that the i2c-dev driver was not being loaded for some reason.
During the install we attempt to do the following things to enable I2C access:
i2c-dev
andi2c-bcm2708
to a file named/etc/modules
blacklist i2c-bcm2708
if it exists in the blacklist file/etc/modprobe.d/raspi-blacklist.conf
sudo adduser pi i2c
It is possible that in some versions of debian that one or more of these files have different names, or that either of the two i2c related drivers were not installed.
albertc180@gmail.com
Thu, 09/18/2014 - 23:13
Permalink
I have the same problem as
I have the same problem as @mattwarrentowns...
I've noticed that couple days ago Debian (and Raspbian) has updated dBus, so I suppose this could be the reason? I've tried to do what you recommend in last post but it didn't help :(
piborg
Fri, 09/19/2014 - 10:22
Permalink
No I2C driver
So the basic problem will be that the I2C driver is not loaded for some reason.
Could you try running the following command to load the driver manually:
modprobe i2c-dev
then try the script.
If that does not work run
lsmod
which should give a list of loaded modules like this:We care about
i2c_bcm2708
andi2c_dev
.You can also run
ls /dev
to list the devices exposed to scripts:We care about
i2c-0
andi2c-1
.They may help to debug the problem.
albertc180@gmail.com
Sat, 09/20/2014 - 11:12
Permalink
Unfortunately after modprobe
Unfortunately after modprobe it still doesn't work :(
lsmod:
ls /dev:
piborg
Sat, 09/20/2014 - 16:12
Permalink
Only one I2C bus
It looks like only one I2C bus is available,
i2c-0
.By default the scripts try looking for the PicoBorg Reverse on
i2c-1
, then if they cannot find it they tryi2c-0
.Try changing line 194 in
PicoBorgRev.py
to be:This should make the script try
i2c-0
beforei2c-1
.albertc180@gmail.com
Sun, 09/21/2014 - 16:25
Permalink
It works!
Yeah, it helped! Thank you very very much :) :)
skyfalcon
Tue, 12/16/2014 - 21:21
Permalink
Issue with finding I2C on diddyborg
Hi there,
I am having issues when i lanuch diddySequence.py or any other examples. I keep getting following error:
pi@raspberrypi ~/diddyborg $ ./diddySequence.py
Loading PicoBorg Reverse on bus 1, address 44
Missing PicoBorg Reverse at 44
PicoBorg Reverse was not found
Trying bus 0 instead
Loading PicoBorg Reverse on bus 0, address 44
Traceback (most recent call last):
File "./diddySequence.py", line 15, in
PBR.Init()
File "/home/pi/diddyborg/PicoBorgRev.py", line 264, in Init
self.Init(False)
File "/home/pi/diddyborg/PicoBorgRev.py", line 234, in Init
self.bus = smbus.SMBus(self.busNumber)
IOError: [Errno 2] No such file or directory
I also try changing the bus number to 0 as suggested and running following but no luck.
>>> PicoBorgRev.ScanForPicoBorgReverse()
Scanning I�C bus #1
No PicoBorg Reverse boards found, is bus #1 correct (should be 0 for Rev 1, 1 for Rev 2)[]
I am using raspberry pi rev 2. (Linux raspberrypi 3.12.28+ #709 PREEMPT armv6l GNU/Linux).
Lights on picoborgrev is blinking fast(Red Color) and i have already checked wiring plenty of times.
I ran following diag. tools. Please see below.
pi@raspberrypi ~ $ lsmod
Module Size Used by
i2c_bcm2708 4943 0
i2c_dev 5769 0
snd_bcm2835 19584 0
snd_soc_bcm2708_i2s 6202 0
regmap_mmio 2818 1 snd_soc_bcm2708_i2s
snd_soc_core 127841 1 snd_soc_bcm2708_i2s
snd_compress 8259 1 snd_soc_core
regmap_i2c 1661 1 snd_soc_core
snd_pcm_dmaengine 5505 1 snd_soc_core
regmap_spi 1913 1 snd_soc_core
snd_pcm 83845 3 snd_bcm2835,snd_soc_core,snd_pcm_dmaengine
snd_page_alloc 5132 1 snd_pcm
snd_seq 55484 0
snd_seq_device 6469 1 snd_seq
snd_timer 20998 2 snd_pcm,snd_seq
leds_gpio 2079 0
led_class 4118 1 leds_gpio
snd 62252 7 snd_bcm2835,snd_soc_core,snd_timer,snd_pcm,snd_seq,snd_seq_device,snd_compress
I tried following with PicoborgRev plugged into pi
pi@raspberrypi ~/diddyborg $ sudo i2cdetect -y 1
00: 0 1 2 are without -- else all are with --
then shutdown and using triborg, i added both XloBorg and PicoborgRev and rebooted. I ran sudo i2cdetect -y 1. This time i had row 00 & col e = 0e, row 10 & col c = 1c
I even got a raw sample from xloborg. So this just proves my i2c in funtional.
Using ls /dev...I only see i2c-1. I don't see i2c-0...am i suppose to in raspberry pi v2?
I have also commented out blacklist i2c-bcm2708 in /etc/modprobe.d/raspi-blacklist.conf
Please help me...I think i tried everything. I want to make my Diddyborg mobile. Thanks!
skyfalcon
Wed, 12/17/2014 - 02:52
Permalink
Never mind I fixed the issue.
Never mind I fixed the issue. It was one of the two Comm cables which was shipped with kit. It wasn't crimped right so 3.3V wasn't connected to picoborgrev from Pi. It was very hard to spot as it was inside the connector. After ohming the harness out, it was clear one of the wire in the harness wasn't fully crimped. Trickey one!
piborg
Wed, 12/17/2014 - 08:30
Permalink
How surprising
Glad to hear that you managed to fix the problem.
Apologies about the cable, wiring issues are always a pain to figure out.
piborg
Wed, 12/17/2014 - 10:29
Permalink
Cable
By the way, let us know if you want a replacement cable, and we'll send one to you :)
skyfalcon
Wed, 12/17/2014 - 19:15
Permalink
Thanks! Yes, Please. Also, th
Thanks! Yes, Please. Also, there was white jumper that was missing from PicoborgRev. If you can send that also, it would be great. Where can I email with my personal address? Thanks!
piborg
Fri, 12/19/2014 - 09:23
Permalink
Email sent
I've sent you an email :)
PulseVNitroz
Thu, 12/25/2014 - 22:39
Permalink
Can someone link me to a plac
Can someone link me to a place where I can buy this robot, I would like it to be already constructed and the software and thing to be installed. Please email me back at ...
Thanks Oliver
patrick.williams
Tue, 12/30/2014 - 14:13
Permalink
No PicoBorgReverse Found
Used the ScanForPicoBorgReverse and none was found.
I downloaded the most recent raspbian to the pi and now the gui wont open.
Checked with another pi and it still isn't detecting the PBR.
-Patrick
piborg
Tue, 12/30/2014 - 15:37
Permalink
Can Raspbian see the board?
Hi Patrick,
Could you run the following two commands and post the output from them:
sudo i2cdetect -y 0
sudo i2cdetect -y 1
They should tell us if Raspbian can see the board, and which I2C bus it is attached to.
patrick.williams
Tue, 12/30/2014 - 21:16
Permalink
Did some test and found that
Did some test and found that one of the cables connecting the pi to the PBR wasn't working which might be why the PBR wasn't being detected.
piborg
Tue, 12/30/2014 - 22:34
Permalink
Cable trouble
That would cause the kind of problem you are having.
Do you want us to send you out replacement cables?
patrick.williams
Wed, 12/31/2014 - 13:03
Permalink
No thank you. I have managed
No thank you. I have managed to get it working.
Thank you for the help and the quick response.
-Patrick
2nd_quadrant
Tue, 12/30/2014 - 16:45
Permalink
Connecting the PIcoBorg reverse to the Pi
The PicoBorg Reverse comes with two 3 way cables which fit very neatly onto pins 1-6 of the GPIO. My problem is that I currently have a Slice of Pi board taking up those and more pins on the Model B+ I am using.
The Slice of Pi board offers up the required SDA, SLC, 3v, 5v and GND connection but only 1 of each. The supplied cables have connection to both the Pi 5v GPIO pins 2 and 4.
My question is, do I have to provide 5v to both the pins on the PicoBorg Reverse or will providing to either be okay?
Thanks in advance
piborg
Tue, 12/30/2014 - 17:15
Permalink
Connecting the PIcoBorg reverse to the Pi
The PicoBorg Reverse does not actually use either of the 5v pins, they are provided so another board which does need them can still use the daisy-chain pins to get at the 5v.
In other words you can leave both 5v pins disconnected and the PicoBorg Reverse will work normally.
2nd_quadrant
Tue, 12/30/2014 - 17:43
Permalink
Even better than I hoped. Th
Even better than I hoped. Thanks for the quick response.
ericgero1
Sat, 01/03/2015 - 03:27
Permalink
More cable trouble
I noticed some others stating that they had problems with the cable harness. I too had an issue where the PBR was not being recognized. I tested the harness after reading through this thread, and that was the issue.
piborg
Sat, 01/03/2015 - 11:04
Permalink
Bad cables
Unfortunately it seems like we might have had a bad batch of cables...
Do you want us to send you out replacements?
ericgero1
Sat, 01/03/2015 - 16:21
Permalink
It would be great if you coul
It would be great if you could send 1 harness. Only one is not working.
Thanks!
piborg
Sat, 01/03/2015 - 22:13
Permalink
No problem
No problem, should we send it to the same address as your order, #4016 ?
ericgero1
Sun, 01/04/2015 - 21:35
Permalink
Yes, please use that address.
Yes, please use that address.
piborg
Sun, 01/04/2015 - 23:10
Permalink
We will put one in the post f
We will put one in the post for you tomorrow :)
E0177
Mon, 02/02/2015 - 17:22
Permalink
I'Dont know what's wrong
I have problems whit diddyborg example diddyJoy.
it will only print this on screen:
I'Dont know what's wrong.
piborg
Mon, 02/02/2015 - 18:30
Permalink
Try the other I2C bus
I think this is because the scripts are trying to use the wrong I2C bus for your Raspberry Pi.
By default the scripts try looking for the PicoBorg Reverse on
i2c-1
, then if they cannot find it they tryi2c-0
.Try changing line 194 in
PicoBorgRev.py
to be:This should make the script try
i2c-0
beforei2c-1
.Since all of the examples use
PicoBorgRev.py
it should fix all of them.E0177
Mon, 02/02/2015 - 20:28
Permalink
thanks very much
it's working now. thanks
DcShadow
Fri, 02/06/2015 - 14:24
Permalink
"No Such File or Directory" again
Hi All,
I bought my DiddyBorg from ModMyPi this week, arrived last night and had fun so far putting it together with my 7yr old son. As a side, unfortunately the kit was delivered without any allen keys so we can't attach the wheels - modmypi don't appear to be that fussed or helpful so far with regards to sending me one.
Anyway, i've moved onto the programming side whilst I get the allen key/wheels thing sorted out, but i've hit a block.
(i'm using a new Raspberry PI 2)
I am powering the rPi via the usb port with the reverse attached as directed (a red light flashes once when power is turned on). However running diddySequence results in the following:
I've read through this thread and tried the recommendations put forward but I don't seem to be getting any further.
`lsmod` returns
so are they the i2c drivers I should expect to see?
Here is the output of `ls /dev`
Running `sudo i2cdetect -y 0` returns
Heyalp piborg - you're my only hope
DC
piborg
Fri, 02/06/2015 - 15:10
Permalink
It looks like the I2C is not enabled
It looks like the I2C is not enabled, either
i2c-0
ori2c-1
should have been in thels /dev
list.If you have not installed the PicoBorg Reverse software that may solve the problem:
bash <(curl https://www.piborg.org/install-picoborgrev.txt)
Alternatively try using
raspi-config
to turn the I2C on like follows:sudo raspi-config
9 Advanced Options
and press ENTERA6 I2C
and press ENTEREnable
is highlighted and press ENTERFinish
is highlighted, then press ENTERYou should be prompted to restart the Raspberry Pi, select yes.
If you are not restart the Raspberry Pi at this point to be sure it has worked.
Once you have enabled the I2C try running
ls /dev
again and see ifi2c-0
ori2c-1
is now in the list.Sorry to hear about the allen key problem, if you send us a message from the contact us form with your address we will be happy to send you one.
DcShadow
Fri, 02/06/2015 - 16:08
Permalink
One step forward...
I knew it would be something straight forward. I now have i2c-1 listed in dev
Here is the output of i2cdetect -y 1
Running diddySeqence.py returns
Could it be that I have dodgy connectors aswell?
I will contact you via the contact form as mentioned, would you be able to fire me over some connectors in addition to the allen key?
Thanks
DC
piborg
Fri, 02/06/2015 - 16:16
Permalink
That does sound like a cable problem
That does sound like a cable problem.
We are happy to send replacement cables as well.
Sorry to hear you are having all these problems :(
cocoda74
Thu, 09/08/2016 - 08:05
Permalink
Hello
Hello
I have the same problem now. I tried all things in this Thread, also different cables but i have evrything the same Problem...
What can i do?
piborg
Thu, 09/08/2016 - 10:30
Permalink
Responded to your other message
Please see the response to your other post: https://www.piborg.org/node/2240
Pages