Legacy Forum: Preserving Nearly 20 Years of Community History - A Time Capsule of Discussions, Memories, and Shared Experiences.

KHR3-HV + Gumstix Overo / Fire

KHR-1, KHR-2HV, KHR-3HV, ICS servos, RCB controllers and other Kondo products
60 postsPage 2 of 41, 2, 3, 4
60 postsPage 2 of 41, 2, 3, 4

Post by limor » Thu Sep 23, 2010 11:25 am

Post by limor
Thu Sep 23, 2010 11:25 am

i-Bot wrote:I opened up both cameras to check the internals.

The Cheap YUV camera has a single board with lens attched to board and not to case. The wires for the microphone, USB, and mini DIN for audio are soldered to board. Overall size of board inc wires and lens is 30 x 25 x 20 mm. LEDS are easy to remove.

The Logitech is also single board with lens attached to board only. Wires for USB, microphone and push buttone are via plugs and sockets. Overall size of board inc connectors and lens is 38 x 31 x 25 mm.


The KRS-2555HV servo is 41x21x30.55mm so both cameras should be able to velcro onto either of the exposed surfaces of the head servo.

It's time to order all these parts and see what works best :lol:
i-Bot wrote:I opened up both cameras to check the internals.

The Cheap YUV camera has a single board with lens attched to board and not to case. The wires for the microphone, USB, and mini DIN for audio are soldered to board. Overall size of board inc wires and lens is 30 x 25 x 20 mm. LEDS are easy to remove.

The Logitech is also single board with lens attached to board only. Wires for USB, microphone and push buttone are via plugs and sockets. Overall size of board inc connectors and lens is 38 x 31 x 25 mm.


The KRS-2555HV servo is 41x21x30.55mm so both cameras should be able to velcro onto either of the exposed surfaces of the head servo.

It's time to order all these parts and see what works best :lol:
limor
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by limor » Thu Sep 30, 2010 12:06 am

Post by limor
Thu Sep 30, 2010 12:06 am

Gumstix Overo + Summit interface board arrived today.

Image
Image
Image
Image

Fits nicely on the back of top side of the KHR3 back pack. Even the two antennas can be nicely put outside the backpack and the wires get in through perfectly suited cavities.

Image
Image

The Gumstix + Summit board have 3 small mini USB ports (of different kinds).
- The OTG is of type USB mini-AB and can not power a webcam. So will be used to connect the RCB3 via a FTDI cable.
- The Console is if type USB Mini-B, has FTDI chip attached to it and to the OMAP serial port. so can't use this one for much else than console and flashing.
- The Host USB is of type Mini-A and is the only choice port for the webcam.

To get the mini-B usb plug into that small space, we will have to modify the cable. You can see a mini-A connector disected, the metal connector cut in half and then shrink wrapped.
Image

We will have to get several connectors and still expecting the batteries and some USB hubs and webcams to arrive. In the meantime we want to see that the gumstix works. We followed the Gumstix Getting Started guide and things worked the first time.. except for wifi.

Image
Image
Image

Gumstix was connected to a 6V power supply and via USB Console port to a PC/Windows, which recognized the FTDI chip and using Putty we logged into the Gumstix to discover that indeed the FTDI chip is connected to a serial port and there's no way to use that USB interface for anything else. the description page of the Summit is a bit misleading saying that it can double as a USB host.
Image
Gumstix Overo + Summit interface board arrived today.

Image
Image
Image
Image

Fits nicely on the back of top side of the KHR3 back pack. Even the two antennas can be nicely put outside the backpack and the wires get in through perfectly suited cavities.

Image
Image

The Gumstix + Summit board have 3 small mini USB ports (of different kinds).
- The OTG is of type USB mini-AB and can not power a webcam. So will be used to connect the RCB3 via a FTDI cable.
- The Console is if type USB Mini-B, has FTDI chip attached to it and to the OMAP serial port. so can't use this one for much else than console and flashing.
- The Host USB is of type Mini-A and is the only choice port for the webcam.

To get the mini-B usb plug into that small space, we will have to modify the cable. You can see a mini-A connector disected, the metal connector cut in half and then shrink wrapped.
Image

We will have to get several connectors and still expecting the batteries and some USB hubs and webcams to arrive. In the meantime we want to see that the gumstix works. We followed the Gumstix Getting Started guide and things worked the first time.. except for wifi.

Image
Image
Image

Gumstix was connected to a 6V power supply and via USB Console port to a PC/Windows, which recognized the FTDI chip and using Putty we logged into the Gumstix to discover that indeed the FTDI chip is connected to a serial port and there's no way to use that USB interface for anything else. the description page of the Summit is a bit misleading saying that it can double as a USB host.
Image
limor
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by chrisvo » Sat Oct 02, 2010 5:02 pm

Post by chrisvo
Sat Oct 02, 2010 5:02 pm

Looks great!

Guess what - partly because of your work, we are also re-designing our robot to use the Gumstix + Summit as well, instead of the IGEPv2. We will also use the KHR-3HV backpack to store the Gumstix + RCB4 + Sensors.

This is because the IGEPv2 is still too large to fit in our robot, and we have not been able to find a good way to fit the IGEPv2 + rcb4 + dual blackfins without making our robot a lot fatter.

Hopefully we will be able to share our experiences and help each other!
Looks great!

Guess what - partly because of your work, we are also re-designing our robot to use the Gumstix + Summit as well, instead of the IGEPv2. We will also use the KHR-3HV backpack to store the Gumstix + RCB4 + Sensors.

This is because the IGEPv2 is still too large to fit in our robot, and we have not been able to find a good way to fit the IGEPv2 + rcb4 + dual blackfins without making our robot a lot fatter.

Hopefully we will be able to share our experiences and help each other!
chrisvo
Savvy Roboteer
Savvy Roboteer
Posts: 132
Joined: Mon Nov 02, 2009 10:24 pm

Post by limor » Sun Oct 03, 2010 8:44 am

Post by limor
Sun Oct 03, 2010 8:44 am

chrisvo wrote:Looks great!
Guess what - partly because of your work, we are also re-designing our robot to use the Gumstix + Summit as well, instead of the IGEPv2. We will also use the KHR-3HV backpack to store the Gumstix + RCB4 + Sensors.

Glad to hear this. Sharing ideas is what this forum is about :)

This is because the IGEPv2 is still too large to fit in our robot, and we have not been able to find a good way to fit the IGEPv2 + rcb4 + dual blackfins without making our robot a lot fatter.

IGEP module is about to ship (from Spain). It is fully compatible with Overo Fire and will cost about the same. The most significant advantage is that it has the OTG USB on board. So with some luck and miniature USB hubs, it may mean no need for an interface board like Summit.
chrisvo wrote:Looks great!
Guess what - partly because of your work, we are also re-designing our robot to use the Gumstix + Summit as well, instead of the IGEPv2. We will also use the KHR-3HV backpack to store the Gumstix + RCB4 + Sensors.

Glad to hear this. Sharing ideas is what this forum is about :)

This is because the IGEPv2 is still too large to fit in our robot, and we have not been able to find a good way to fit the IGEPv2 + rcb4 + dual blackfins without making our robot a lot fatter.

IGEP module is about to ship (from Spain). It is fully compatible with Overo Fire and will cost about the same. The most significant advantage is that it has the OTG USB on board. So with some luck and miniature USB hubs, it may mean no need for an interface board like Summit.
limor
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by limor » Mon Oct 04, 2010 11:35 am

Post by limor
Mon Oct 04, 2010 11:35 am

chrisvo wrote:
can you please specify how you level-shifted and inverted the signal from the UART? did you develop a board?

This is how we communicate from RoboStix UART (3.3V) to RCB-4.
Image


We are going to test a little analog circuit that does level shifting and inversion (designed by RicardoMarinheiro)
Image
Image


BTW: I found online a board called Tincan Trainer that has an opensource schematics with a circuit that connects AVR microprocessor with OMAP. Also has a level shifter but no signal inversion.
chrisvo wrote:
can you please specify how you level-shifted and inverted the signal from the UART? did you develop a board?

This is how we communicate from RoboStix UART (3.3V) to RCB-4.
Image


We are going to test a little analog circuit that does level shifting and inversion (designed by RicardoMarinheiro)
Image
Image


BTW: I found online a board called Tincan Trainer that has an opensource schematics with a circuit that connects AVR microprocessor with OMAP. Also has a level shifter but no signal inversion.
limor
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by limor » Mon Oct 04, 2010 2:44 pm

Post by limor
Mon Oct 04, 2010 2:44 pm

We received some webcams for the project to test with Gumstix and KHR3.
Image
Need to check which camera fits best on the KHR3 pan/tilt head while taking into consideration their size, exposure to impact damage, compatibility with Gumstix Linux + opencv..
The first to be disassembled was the NGS NetCam-300. The camera is really small and the wires are thing (good points). The enclosure is of metal which adds weight and the resolution is only 300k pixels (bad points).
Image
Image
Image
The back-side of the pcb has some exposed components which will not easily lend themselves to velcro onto the pan/tilt head. probably best to just keep the original enclosure and hope the extra weight wont be detremental to stability of the KHR3.
Image

Next comes the Creative Live! Cam Chat IM. with 800x600 pixels. embedded microphone. nice internal wire connector. but pretty big pcb compared to the NGS.
Image
ImageImage
Image
ImageImage
Live!Cam is no fun either in terms of velcro potential on the back of its PCB. :o
We received some webcams for the project to test with Gumstix and KHR3.
Image
Need to check which camera fits best on the KHR3 pan/tilt head while taking into consideration their size, exposure to impact damage, compatibility with Gumstix Linux + opencv..
The first to be disassembled was the NGS NetCam-300. The camera is really small and the wires are thing (good points). The enclosure is of metal which adds weight and the resolution is only 300k pixels (bad points).
Image
Image
Image
The back-side of the pcb has some exposed components which will not easily lend themselves to velcro onto the pan/tilt head. probably best to just keep the original enclosure and hope the extra weight wont be detremental to stability of the KHR3.
Image

Next comes the Creative Live! Cam Chat IM. with 800x600 pixels. embedded microphone. nice internal wire connector. but pretty big pcb compared to the NGS.
Image
ImageImage
Image
ImageImage
Live!Cam is no fun either in terms of velcro potential on the back of its PCB. :o
limor
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by nunogato » Mon Oct 04, 2010 5:13 pm

Post by nunogato
Mon Oct 04, 2010 5:13 pm

Hi,

Finally I get the wifi working in the gumstix. Just updated to the last distribution available (you can check here all the available distributions for gumstix overo), uninstalled the networkmanager and configured the wireless SSID and the password.

To install the updated distribution i folowed this steps:

1. Create one bootable micro SD with one distribution: folowed this tutorial
2. Put the nand image in the SDcard and install it in the internal memory (tutorial here
3. Boot the gumstix from the sdcard is easy, just put the card and it automaticly boots from it
4. set the time/date to the current time otherwise it will give a lot of warnings in the update process.
5. Run the script created in step 2
6. Reboot the gumstix without the sdcard so it can boot from the internal memory that we have just flashed
7. remove the network manager like is explained here
8. configure the wireless network using this steps.


next step: connect the camera
Hi,

Finally I get the wifi working in the gumstix. Just updated to the last distribution available (you can check here all the available distributions for gumstix overo), uninstalled the networkmanager and configured the wireless SSID and the password.

To install the updated distribution i folowed this steps:

1. Create one bootable micro SD with one distribution: folowed this tutorial
2. Put the nand image in the SDcard and install it in the internal memory (tutorial here
3. Boot the gumstix from the sdcard is easy, just put the card and it automaticly boots from it
4. set the time/date to the current time otherwise it will give a lot of warnings in the update process.
5. Run the script created in step 2
6. Reboot the gumstix without the sdcard so it can boot from the internal memory that we have just flashed
7. remove the network manager like is explained here
8. configure the wireless network using this steps.


next step: connect the camera
nunogato
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 86
Joined: Mon Mar 15, 2010 3:48 pm

Post by limor » Wed Oct 06, 2010 10:43 pm

Post by limor
Wed Oct 06, 2010 10:43 pm

As you may recall, we previously disected a Mini-B USB male connector and trimmed it down to its bare minimum. However, we had a hard time getting any signals on this connector from the gumstix.
Today we discovered the reason in wikipedia and also in Expansion boards for Overo - Feature Overview & Cabling Information

Turns out Mini-B cable has pin-4 disabled instead of grounded. Therefore it will not work with the OTG port in host mode.

So now we ordered some Mini-A cables.

We received today a mini hub as recommended by i-Bot previously in this thread (price shock) and dismantled it to find inside pure bliss in the form of compact PCB and easily de-solderable type-A female connectors.

Image

It even fits inside the KHR3HV's top part of the backpack with one of the webcam's USB attached. In any case we plan to optimize space a bit more.
Image

Here we remove the original lead of the USB hub and replacing it with our makeshift mutilated mini-B cable. (before the grand realization about the need for mini-A)

Image
As you may recall, we previously disected a Mini-B USB male connector and trimmed it down to its bare minimum. However, we had a hard time getting any signals on this connector from the gumstix.
Today we discovered the reason in wikipedia and also in Expansion boards for Overo - Feature Overview & Cabling Information

Turns out Mini-B cable has pin-4 disabled instead of grounded. Therefore it will not work with the OTG port in host mode.

So now we ordered some Mini-A cables.

We received today a mini hub as recommended by i-Bot previously in this thread (price shock) and dismantled it to find inside pure bliss in the form of compact PCB and easily de-solderable type-A female connectors.

Image

It even fits inside the KHR3HV's top part of the backpack with one of the webcam's USB attached. In any case we plan to optimize space a bit more.
Image

Here we remove the original lead of the USB hub and replacing it with our makeshift mutilated mini-B cable. (before the grand realization about the need for mini-A)

Image
limor
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by nunogato » Thu Oct 07, 2010 4:50 pm

Post by nunogato
Thu Oct 07, 2010 4:50 pm

Hi,

Today I wanted to use this circuit
Image and connect the KHR-3HV to the gumstix.

But I have a simple question, what is the RX and the TX in the Kondo cable? I know that the black is ground but have no idea about the other two.

Can anyone help me in this?

(I'ts frustrating do not test only because of two cables...)
Hi,

Today I wanted to use this circuit
Image and connect the KHR-3HV to the gumstix.

But I have a simple question, what is the RX and the TX in the Kondo cable? I know that the black is ground but have no idea about the other two.

Can anyone help me in this?

(I'ts frustrating do not test only because of two cables...)
nunogato
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 86
Joined: Mon Mar 15, 2010 3:48 pm

Post by chrisvo » Thu Oct 07, 2010 5:54 pm

Post by chrisvo
Thu Oct 07, 2010 5:54 pm

Tx from the PC to RCB-4 is middle wire on the 3-pin connection of the USB adapter.
Tx from the PC to RCB-4 is middle wire on the 3-pin connection of the USB adapter.
chrisvo
Savvy Roboteer
Savvy Roboteer
Posts: 132
Joined: Mon Nov 02, 2009 10:24 pm

Post by limor » Sat Oct 09, 2010 1:12 am

Post by limor
Sat Oct 09, 2010 1:12 am

We found a mini-A cable in the lab so finally we can test the webcams. At least in theory because initially no USB devices was recognized. So it turns out that the Angstrom linux we installed which was the latest release, did not include all the drivers. The solution was to install the latest "stable" Angstrom off the gumstix site. once done (download image, install onto micro-sd using gparted linux from live-CD in virtual machine, then boot the gumstix and let it copy the thing onto the flash memory..) gumstix booted nicely and recognized usb-hub and UVC webcams.

Image

Another interesting experiment is linking the RCB-4 and the gumstix/summit through their RX/TX UART rather than FTDI. First step of using the Ricardo board (1.8V <-> 5V+inversion) which received it's 5V and ground from the gumstix.
Image

Next step will be to port libkondo to work with regular serial port rather than libusb and libftdi. Wonder if chrisvo has done that already?
We found a mini-A cable in the lab so finally we can test the webcams. At least in theory because initially no USB devices was recognized. So it turns out that the Angstrom linux we installed which was the latest release, did not include all the drivers. The solution was to install the latest "stable" Angstrom off the gumstix site. once done (download image, install onto micro-sd using gparted linux from live-CD in virtual machine, then boot the gumstix and let it copy the thing onto the flash memory..) gumstix booted nicely and recognized usb-hub and UVC webcams.

Image

Another interesting experiment is linking the RCB-4 and the gumstix/summit through their RX/TX UART rather than FTDI. First step of using the Ricardo board (1.8V <-> 5V+inversion) which received it's 5V and ground from the gumstix.
Image

Next step will be to port libkondo to work with regular serial port rather than libusb and libftdi. Wonder if chrisvo has done that already?
limor
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by chrisvo » Sat Oct 09, 2010 5:50 am

Post by chrisvo
Sat Oct 09, 2010 5:50 am

My previous libkondo3 used Gumstix serial to communicate to RCB-3 (for the KHR-1HV platform).

libkondo4 was originally using standard serial (termios) but I switched to libftdi later. I found libftdi to be a cleaner API, supported the full RCB-4 baud rate, and helped avoid dealing with or specifying device files (which may be a problem for USB-serial adapters that may change device names, etc)

We have adapted libkondo4 for the Surveyor SRV-1 by simply replacing the RX/TX and initialization functions with the appropriate RX/TX and init functions for the system.

I might take a look tonight at it and add some code to let libkondo4 use standard serial ports. It is pretty trivial -- the main thing to remember is that the RCB-4 COM port is 8E1 (8 bit even parity 1 stop bit).


By the way, I have recently added some more functionality into libkondo4. You can now get and set the counters on the system (which can be used in motions). For example, to make the robot walk 5 steps you can set a counter to 5 and then use the counter in the loop of your walk. You can also read and write from the 10 digital PIO ports on the RCB-4. You can use those ports to control LED lights and switch other peripherals, accept button or sensor input, and more. The main "mystery functionality" I haven't yet determined is how to store motions into the memory of the robot, so that you do not need Heart2Heart4 in order to load motions. That functionality comes in very useful if you want to "preload" motions onto several KHR-3HV's at once. I have an idea of how it can be done (the location of the motions in memory is pretty well known, I just wasn't sure if it was OK to just go ahead and dump the pose data directly into the memory... the Japanese protocol manuals do not explain that particular process.)
My previous libkondo3 used Gumstix serial to communicate to RCB-3 (for the KHR-1HV platform).

libkondo4 was originally using standard serial (termios) but I switched to libftdi later. I found libftdi to be a cleaner API, supported the full RCB-4 baud rate, and helped avoid dealing with or specifying device files (which may be a problem for USB-serial adapters that may change device names, etc)

We have adapted libkondo4 for the Surveyor SRV-1 by simply replacing the RX/TX and initialization functions with the appropriate RX/TX and init functions for the system.

I might take a look tonight at it and add some code to let libkondo4 use standard serial ports. It is pretty trivial -- the main thing to remember is that the RCB-4 COM port is 8E1 (8 bit even parity 1 stop bit).


By the way, I have recently added some more functionality into libkondo4. You can now get and set the counters on the system (which can be used in motions). For example, to make the robot walk 5 steps you can set a counter to 5 and then use the counter in the loop of your walk. You can also read and write from the 10 digital PIO ports on the RCB-4. You can use those ports to control LED lights and switch other peripherals, accept button or sensor input, and more. The main "mystery functionality" I haven't yet determined is how to store motions into the memory of the robot, so that you do not need Heart2Heart4 in order to load motions. That functionality comes in very useful if you want to "preload" motions onto several KHR-3HV's at once. I have an idea of how it can be done (the location of the motions in memory is pretty well known, I just wasn't sure if it was OK to just go ahead and dump the pose data directly into the memory... the Japanese protocol manuals do not explain that particular process.)
chrisvo
Savvy Roboteer
Savvy Roboteer
Posts: 132
Joined: Mon Nov 02, 2009 10:24 pm

Post by chrisvo » Mon Oct 11, 2010 8:11 pm

Post by chrisvo
Mon Oct 11, 2010 8:11 pm

I added to libkondo4 some example serial.c and serial.h as examples of possible replacements for the libftdi read/write. They use standard Unix API (termios) and set up the proper 8E1 for RCB-4.
I added to libkondo4 some example serial.c and serial.h as examples of possible replacements for the libftdi read/write. They use standard Unix API (termios) and set up the proper 8E1 for RCB-4.
chrisvo
Savvy Roboteer
Savvy Roboteer
Posts: 132
Joined: Mon Nov 02, 2009 10:24 pm

Post by SK » Thu Oct 14, 2010 10:37 pm

Post by SK
Thu Oct 14, 2010 10:37 pm

I can certainly recommend the Philips SPC-1300 webcam, pretty good all around solution. It shouldn't be too large when stripped off the casing too.
So regarding those selflocalization and football related activities, any chance to meet you at next year's RoboCup?
I can certainly recommend the Philips SPC-1300 webcam, pretty good all around solution. It shouldn't be too large when stripped off the casing too.
So regarding those selflocalization and football related activities, any chance to meet you at next year's RoboCup?
SK
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 105
Joined: Mon Jun 26, 2006 1:00 am
Location: near Frankfurt/Main, Germany

Post by chrisvo » Thu Oct 14, 2010 11:32 pm

Post by chrisvo
Thu Oct 14, 2010 11:32 pm

SK: Hello! Yes, we will probably see each other in Istanbul next year. We are designing our 2011 humanoid right now.

We are keeping the KHR-3HV servo platform, stereo vision, and dual 500 MHz blackfin DSP to process scene and localization. We are adding additional degrees of freedom in the legs, another CPU (Gumstix Overo Air) to run the gameplay, communication, and user interfaces.

We originally were going to put the Gumstix inside the backpack of the robot with the Summit board, like RoboSavvy has done in this thread. Instead, to make the robot more compact, we are developing a custom motherboard that will integrate all three CPUs together more cleanly and tightly.
SK: Hello! Yes, we will probably see each other in Istanbul next year. We are designing our 2011 humanoid right now.

We are keeping the KHR-3HV servo platform, stereo vision, and dual 500 MHz blackfin DSP to process scene and localization. We are adding additional degrees of freedom in the legs, another CPU (Gumstix Overo Air) to run the gameplay, communication, and user interfaces.

We originally were going to put the Gumstix inside the backpack of the robot with the Summit board, like RoboSavvy has done in this thread. Instead, to make the robot more compact, we are developing a custom motherboard that will integrate all three CPUs together more cleanly and tightly.
chrisvo
Savvy Roboteer
Savvy Roboteer
Posts: 132
Joined: Mon Nov 02, 2009 10:24 pm

PreviousNext
60 postsPage 2 of 41, 2, 3, 4
60 postsPage 2 of 41, 2, 3, 4