Using the Gertbot Robotics Board for Raspberry Pi 3 I am facing some of the same problems.
I've downloaded Gertbot Debug GUI (.tgz) and extracted this. Then Enable Uart (.tgz) has been downloaded and extracted
I have also added ”enable_uart = 1” in /boot/config.txt
When I run Gertbot Debug GUI the program starts and I can click ”Connect”
Then it shows ”Searching for boards ….” and ”Board 0 ….” – but then nothing shows up.
Nothing is found and finally, I will have to shut down the program manually.
I've updated software (Raspian) and tried everything twice with same result.
If I run a ”sudo ./enable_uart cfr” command, I will see this:
pi@raspberrypi:~ $ cd Gertbot
pi@raspberrypi:~/Gertbot $ sudo ./enable_uart cfr
/boot/cmdline.txt seems OK
Error checking /etc/inittab
pi@raspberrypi:~/Gertbot $
But it seems that inittab is not used anymore, or??
Any ideas??
Thank you
Re: Gertbot
I found a solution. Disable bluetooth. Then it works!!
Re: Gertbot
Good day all.
I have a couple of questions. I am a new owner of my first Pi. It is the latest Pi3 and I am building a breadboard setup for experimentation with robotics and sensors. That being said I want to use a Gertbot for motor control but save as many of the Pi GPIO pins as possible for other uses. First are there any issues using it with the new PI's and second are there any unused Pi GPIO pins covered by the Gertbot header I can breakout and use for other I/O functions. I know there are the ones not covered by the header at the bottom of the PI connector I am looking for any other free ones.
Thanks!
I have a couple of questions. I am a new owner of my first Pi. It is the latest Pi3 and I am building a breadboard setup for experimentation with robotics and sensors. That being said I want to use a Gertbot for motor control but save as many of the Pi GPIO pins as possible for other uses. First are there any issues using it with the new PI's and second are there any unused Pi GPIO pins covered by the Gertbot header I can breakout and use for other I/O functions. I know there are the ones not covered by the header at the bottom of the PI connector I am looking for any other free ones.
Thanks!
-
- Posts: 2
- Joined: Sun Jul 10, 2016 8:05 pm
Re: Gertbot
Gert, are there anything in the works for getting the gertbot to work with pi3 and the uart issues? Any help on this matter would be appreciated
-
- Posts: 12
- Joined: Tue Feb 07, 2017 1:24 pm
Re: Gertbot
Hi
I'm trying to setup a two brushed motor/encoder system with Gertbot by adding encoder functions to the simple rover.py example. I think I have enabled the encoder but I can't work out how to read them. Also if I want to create a live report of a encoder feedback displayed in mm where can I create the conversion factor between pulses and units?
I'm utterly stuck!
Thanks
Robin
I'm trying to setup a two brushed motor/encoder system with Gertbot by adding encoder functions to the simple rover.py example. I think I have enabled the encoder but I can't work out how to read them. Also if I want to create a live report of a encoder feedback displayed in mm where can I create the conversion factor between pulses and units?
I'm utterly stuck!
Thanks
Robin
- Gert van Loo
- Posts: 2487
- Joined: Tue Aug 02, 2011 7:27 am
- Contact: Website
Re: Gertbot
You must use the 'quad_read' command. See the example usage in the test_driver.py code.I think I have enabled the encoder but I can't work out how to read them.
(I am assuming you use python)
As to conversion to millimeters: you have to calibrate that manually.
Let the system move between two positions e.g. pos1 and pos2 and measure the distance.
e.g. goto -200 then goto 200, measured distance is 270 mm => you have 270/400=0.675 millimeter per step.
Easiest is then to use a operating range of -135 to 135 millimeters.
Then to go to position (x) in millimeters, you go to position x/0.675 in steps.
To report the position in mm you do the reverse operation: pos_mm = pos_steps*0.675
If you want an operating range of 0-270 you do: pos_steps = (pos_mm-135)/0.675
The reverse of which is: pos_mm = (pos_steps*0.675)+135
-
- Posts: 12
- Joined: Tue Feb 07, 2017 1:24 pm
Re: Gertbot
Hi Gert
I'd not spotted there was a newer version of the python drivers, I shall go and explore them!
Thanks for your guidance.
Robin
I'd not spotted there was a newer version of the python drivers, I shall go and explore them!
Thanks for your guidance.
Robin
-
- Posts: 12
- Joined: Tue Feb 07, 2017 1:24 pm
Re: Gertbot
Does quad_read return the current state of the square waves, or report the position, as the position is described as an ongoing total once the encodered are activated?
How can I print the position to the screen (as the screen.addstr used in rover.py doesn't seem to like anything other than prose)
Thanks
Robin
How can I print the position to the screen (as the screen.addstr used in rover.py doesn't seem to like anything other than prose)
Thanks
Robin
- Gert van Loo
- Posts: 2487
- Joined: Tue Aug 02, 2011 7:27 am
- Contact: Website
Re: Gertbot
That is the actual position.
The internal variable which is updated each time a new 'pulse' is seen from the encoders.
(I could not remember the details: I had to look it up in the code)
The internal variable which is updated each time a new 'pulse' is seen from the encoders.
(I could not remember the details: I had to look it up in the code)
-
- Posts: 12
- Joined: Tue Feb 07, 2017 1:24 pm
Re: Gertbot
Is it an absolute value? Reading one axis it appears to be reporting in decimal, and the zero position seems to float around. Also does the boad count every edge, or just every leading edge?
- Gert van Loo
- Posts: 2487
- Joined: Tue Aug 02, 2011 7:27 am
- Contact: Website
Re: Gertbot
I never made a full real-time application with that command.
I used the Gertbot GUI and pressed the 'read status' button very often and fast.
I never saw any abnormal behavior.
I used the Gertbot GUI and pressed the 'read status' button very often and fast.
I never saw any abnormal behavior.
Gertbot & Pi3
Just bought five of these Pi3/gertbot setups and none of them work! Follow the instructions to the letter AND disable bluetooth on the menu bar, but the GUI still crashes. Downloading the software according the the manual using git clone git:://github.com/<TODO> doesn't work in terminal so I had to download the files from the gertbot site instead. Other posts on this issue have suggested Bluetooth should be disabled and others suggest WiFi needs to be disabled? Hopefully there is a better solution than that out there that doesn't involve taking away functionality (and thus rendering the devices somewhat useless for robotics education) In any case I do not think that is the solution as I have gone back to trying the Gertbot with a B+ Pi and it doesn't seem to be working there either (anymore). Have these devices just been made obsolete? In which case I have just wasted most of my classroom budget for this year!
- Gert van Loo
- Posts: 2487
- Joined: Tue Aug 02, 2011 7:27 am
- Contact: Website
Re: Gertbot
Excuses for the manual entry about git hub. There is NO gertbot software on GIT. That is something I was planning to do but never got around to it. (That is where the "git:://github.com/<TODO>" text comes from.).
The Gertbot hardware and software where out BEFORE the Pi-3. In the Pi-3 some idiot (Sorry, but there is no other word for it) decided NOT to add an extra UART for bluetooth and Wifi but to re-allocate the exiting UART for that. That decision made all other applications using the UART incompatible with WIFI and Bluetooth. The Gertbot is one of them. There is nothing I can do about that!
In the past I have used the Gertbot with a WiFi dongle as shown here.https://www.gertbot.com/images/toaste_small.jpg
As to your Gertbot not working on a B+: I have not had any problems with that before. What are the symptoms you are seeing?
The Gertbot hardware and software where out BEFORE the Pi-3. In the Pi-3 some idiot (Sorry, but there is no other word for it) decided NOT to add an extra UART for bluetooth and Wifi but to re-allocate the exiting UART for that. That decision made all other applications using the UART incompatible with WIFI and Bluetooth. The Gertbot is one of them. There is nothing I can do about that!
In the past I have used the Gertbot with a WiFi dongle as shown here.https://www.gertbot.com/images/toaste_small.jpg
As to your Gertbot not working on a B+: I have not had any problems with that before. What are the symptoms you are seeing?
Re: Gertbot
Thank you for replying..
So the Pi3 might work with the Gertbot if I somehow disable the onboard WiFi and use a WiFi dongle? I actually built that rover you have pictured but using and older B+ Pi...that was the original research that led me to buy the class set. I just need to know if it is going to work with the Pi3 (to control something like that rover) or should I return the boards to Element14 and find something else?. We have already used the Pi3's in classwork so I cannot return them....even if it were possible to downgrade to an older Pi design. My goal is to expand my Robotics program away from the prescriptive and expensive to maintain VEX software and micro controllers. I appreciate your help.
So the Pi3 might work with the Gertbot if I somehow disable the onboard WiFi and use a WiFi dongle? I actually built that rover you have pictured but using and older B+ Pi...that was the original research that led me to buy the class set. I just need to know if it is going to work with the Pi3 (to control something like that rover) or should I return the boards to Element14 and find something else?. We have already used the Pi3's in classwork so I cannot return them....even if it were possible to downgrade to an older Pi design. My goal is to expand my Robotics program away from the prescriptive and expensive to maintain VEX software and micro controllers. I appreciate your help.
- Gert van Loo
- Posts: 2487
- Joined: Tue Aug 02, 2011 7:27 am
- Contact: Website
Re: Gertbot
First use nano to open /boot/cmdline.txt and edit it to disable boot info being sent to the port.
sudo nano /boot/cmdline.txt
The Pi3 cmdline.txt should look like this:
dwc.otg.lpm_enable=0 console=serial0,115200 console=ttyl root=/dev/mmcblk0p7 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
Remove the underlined text, this will stop boot info being sent on startup. Press Ctrl+O to write the changes and Ctrl+X to exit nano.
To enable UART, do one of the following, then reboot the system.
- Open Menu/PreferencesRaspberry Pi Configuration. In the Interfaces tab enable Serial.
or
- Edit /boot/config.txt to include “enable_uart=1”:
sudo nano /boot/config.txt
add a line with enable_uart=1
Press Ctrl+O to write the changes and Ctrl+X to exit nano.
After a reboot the Pi3 should now work with the gertbot.
Beware that any set-up which enables WiFi or Bluetooth is likely to claim the UART and thus the gertbot will stop working.
sudo nano /boot/cmdline.txt
The Pi3 cmdline.txt should look like this:
dwc.otg.lpm_enable=0 console=serial0,115200 console=ttyl root=/dev/mmcblk0p7 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
Remove the underlined text, this will stop boot info being sent on startup. Press Ctrl+O to write the changes and Ctrl+X to exit nano.
To enable UART, do one of the following, then reboot the system.
- Open Menu/PreferencesRaspberry Pi Configuration. In the Interfaces tab enable Serial.
or
- Edit /boot/config.txt to include “enable_uart=1”:
sudo nano /boot/config.txt
add a line with enable_uart=1
Press Ctrl+O to write the changes and Ctrl+X to exit nano.
After a reboot the Pi3 should now work with the gertbot.
Beware that any set-up which enables WiFi or Bluetooth is likely to claim the UART and thus the gertbot will stop working.
Re: Gertbot
Thank you so much....that sounds far easier than trying to negotiate the school's purchase order system. I will give it a try.
-
- Posts: 12
- Joined: Tue Feb 07, 2017 1:24 pm
Re: Gertbot
I see what you mean on the buttons, showing the high or low status on the pins, but I can't get a position value out (just a pair of zeros in brackets), are there any example quadrature projects around?Gert van Loo wrote:I never made a full real-time application with that command.
I used the Gertbot GUI and pressed the 'read status' button very often and fast.
I never saw any abnormal behavior.
- Gert van Loo
- Posts: 2487
- Joined: Tue Aug 02, 2011 7:27 am
- Contact: Website
Re: Gertbot
I think you are looking at the wrong section of the GUI.
The latest SW versions of the gertbot (from 2.5 upwards) supports quadrature encoders natively.
If you have connected the quadrature encoder as per the manual you can interface with it using the Gertbot GUI.
In the GUI switch the motor to DC/brushed, then using "more" click till you get a section about Quadrature encoder.
Tick the box next to "Quadrature encoder on".
You can then use the "position" and "SET" to set a value to the current position.
To read the quadrature encoder current value press the 'read' button.
You can press the button also whilst the motor is running.
With the quadrature encoder enabled you can give 'go-to' commands to make the motors run until the 'goto' value
of the encoder is reached.
Having said all that: I notices a big omission in the manual: How to connect quadrature encoders is not mentioned anywhere!!
You connect them to the end-stop pins (Thus you can use either end-stops or a quadrature encoder, but not both.)
I am banging out a new version of the manual as we speak.
You may need to upload the latest SW to your gertbot board. For that there is an upload GUI: gb_upload.
(There is a Pi and a Windows version)
and the SW release 2.6 is here: https://www.gertbot.com/gbdownload/rmc/rmc_2.6.crypt
The latest SW versions of the gertbot (from 2.5 upwards) supports quadrature encoders natively.
If you have connected the quadrature encoder as per the manual you can interface with it using the Gertbot GUI.
In the GUI switch the motor to DC/brushed, then using "more" click till you get a section about Quadrature encoder.
Tick the box next to "Quadrature encoder on".
You can then use the "position" and "SET" to set a value to the current position.
To read the quadrature encoder current value press the 'read' button.
You can press the button also whilst the motor is running.
With the quadrature encoder enabled you can give 'go-to' commands to make the motors run until the 'goto' value
of the encoder is reached.
Having said all that: I notices a big omission in the manual: How to connect quadrature encoders is not mentioned anywhere!!
You connect them to the end-stop pins (Thus you can use either end-stops or a quadrature encoder, but not both.)
I am banging out a new version of the manual as we speak.
You may need to upload the latest SW to your gertbot board. For that there is an upload GUI: gb_upload.
(There is a Pi and a Windows version)
and the SW release 2.6 is here: https://www.gertbot.com/gbdownload/rmc/rmc_2.6.crypt
-
- Posts: 12
- Joined: Tue Feb 07, 2017 1:24 pm
Re: Gertbot
Ah, I hadn't appreciated the need to update the software on the board itself!
So at present I don't have those sections, I'll go and try the update directly.
Thanks
Robin
So at present I don't have those sections, I'll go and try the update directly.
Thanks
Robin
Re: Gertbot
Hello.
I am facing a problem. I failed in Gertbot update. I can not connect to Gert. Gert lowers the four LEDs low. Can I repair Gert? I will use pi3.
I am facing a problem. I failed in Gertbot update. I can not connect to Gert. Gert lowers the four LEDs low. Can I repair Gert? I will use pi3.
- Gert van Loo
- Posts: 2487
- Joined: Tue Aug 02, 2011 7:27 am
- Contact: Website
Re: Gertbot
In that case we have a problem because there is no procedure to re-store a board.gram wrote:Hello.
I am facing a problem. I failed in Gertbot update. I can not connect to Gert. Gert lowers the four LEDs low. Can I repair Gert? I will use pi3.
(The Flash is not big enough to hold the working program AND a spare default configuration.)
That is why there is a clear warning just before the re-flashing starts.
You can try your vendor (who did you buy your board from?) but this is not covered by the standard guarantee.
This is the first time that I heard an update going wrong.
The upload protocol uses double checksums and ACK/NACK protocols with up to ten re-tries per packet
so I would be interested to find out how what happened.
Re: Gertbot
I bought it at Maker Faire Tokyo 2016 (probably RS).Gert van Loo wrote:In that case we have a problem because there is no procedure to re-store a board.gram wrote:Hello.
I am facing a problem. I failed in Gertbot update. I can not connect to Gert. Gert lowers the four LEDs low. Can I repair Gert? I will use pi3.
(The Flash is not big enough to hold the working program AND a spare default configuration.)
That is why there is a clear warning just before the re-flashing starts.
You can try your vendor (who did you buy your board from?) but this is not covered by the standard guarantee.
This is the first time that I heard an update going wrong.
The upload protocol uses double checksums and ACK/NACK protocols with up to ten re-tries per packet
so I would be interested to find out how what happened.
Is it difficult to repair myself?
Until the problem occurs, it is as follows.
Setting UART. → Confirm board connection and DC motor operation, OK. → Start gb_updatew, select rmc_2.6.crypt, update (I think that two windows came out,It was bad that I did not see the contents). → The LED glows low and the board can not be connected.
This sentence is written in Google Translate. I am sorry if it is hard to read.
- Gert van Loo
- Posts: 2487
- Joined: Tue Aug 02, 2011 7:27 am
- Contact: Website
Re: Gertbot
You can't repair it yourself as there are two major obstacles.....Is it difficult to repair myself?....
1/ You need a special ARM JTAG programmer for the Atmel series processor.
2/ The programming database "rmc_2.6.crypt" is an encrypted version and for a clean
start you need the original UN-encrypted data base, which is of course proprietary.
(Otherwise any company can duplicate the PCB and steal the design).
Also before programming the board has to be completely erased, including the security fuse.
However that is do-able as described in the gertbot advanced user guide.
Re: Gertbot
Thank you, I understand.
I will buy a new one.
Because this board is wonderful.
I will buy a new one.
Because this board is wonderful.
- Gert van Loo
- Posts: 2487
- Joined: Tue Aug 02, 2011 7:27 am
- Contact: Website
Re: Gertbot
I don't know where you live but...
I can make an exception and re-flash it again. Depends on the cost for shipping it back-and-forth.
Send me a PM so we can discuss this without showing our addresses in public.
I can make an exception and re-flash it again. Depends on the cost for shipping it back-and-forth.
Send me a PM so we can discuss this without showing our addresses in public.