Maker Pro
Maker Pro

USB Host on a Micro?

S

Subhead

Anybody know how to do an easy, low-code, USB Host for a
microcontroller? There are more & more devices that have gone from
serial to USB control, but I don't want to lug a computer around to
control or talk to something. Example, we have a couple of manned
submersibles that dive to 3,000 feet, and have a digital camera system
we can throw on the sub & go diving. When we're back on deck, we have
to take a laptop out and plug it into the camera. What I'd like is
PIC-based way to fool the camera into thinking it's talking to a PC &
downloading the pix to a flash drive. This is something I could do for
about $50 IF I had a $500 USB snooper to get the upfront handshaking
back & forth into an array & spit it out to the camera. I've seen a few
Palm PCs and the like that say they have a USB Host feature, but I'm
not that skilled at Win Mobile programming. Any thoughts on this? I
only need to build a couple of these. You can take a look at our subs
at:
http://www.hboi.edu/marineops/jsl.html

Thanks for your time.
 
D

Donald

Subhead said:
Anybody know how to do an easy, low-code, USB Host for a
microcontroller? There are more & more devices that have gone from
serial to USB control, but I don't want to lug a computer around to
control or talk to something. Example, we have a couple of manned
submersibles that dive to 3,000 feet, and have a digital camera system
we can throw on the sub & go diving. When we're back on deck, we have
to take a laptop out and plug it into the camera. What I'd like is
PIC-based way to fool the camera into thinking it's talking to a PC &
downloading the pix to a flash drive. This is something I could do for
about $50 IF I had a $500 USB snooper to get the upfront handshaking
back & forth into an array & spit it out to the camera. I've seen a few
Palm PCs and the like that say they have a USB Host feature, but I'm
not that skilled at Win Mobile programming. Any thoughts on this? I
only need to build a couple of these. You can take a look at our subs
at:
http://www.hboi.edu/marineops/jsl.html

Thanks for your time.

You are asking for at least 3 things at the same time.

1) USB host device that has the storage capability of a laptop.
2) USB host device that has the size/power/programability of a PIC.
3) USB host device that is easy to program.

There are a few USB host chips on the market (Philips, Atmel).
There are a few CPUs with USB host integrated onto the chip.

The hardware is out there, the software is not.

I helped develop a handheld instrument last year that used a USB stick
to transfer data to a PC. We used a 32-bit cpu with the USB hardware
built in.

We even purchased on RTOS that had a USB stack built in. It took 4 guys
over 6 months to get this thing working.

Good luck

PS: Neat pics and video.
 
P

PhattyMo

Donald said:
You are asking for at least 3 things at the same time.

1) USB host device that has the storage capability of a laptop.
2) USB host device that has the size/power/programability of a PIC.
3) USB host device that is easy to program.

There are a few USB host chips on the market (Philips, Atmel).
There are a few CPUs with USB host integrated onto the chip.

The hardware is out there, the software is not.

I helped develop a handheld instrument last year that used a USB stick
to transfer data to a PC. We used a 32-bit cpu with the USB hardware
built in.

We even purchased on RTOS that had a USB stack built in. It took 4 guys
over 6 months to get this thing working.

Good luck

PS: Neat pics and video.

Argh..I forget the exact number.. But there are a couple PIC micro's
with USB support.

http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=111&mid=10&lang=en&pageId=74
 
R

Robert Lacoste

OBones said:
AFAIK, that's USB device, not host.

For a 8-bit micro with USB host interface go to Cypress web site... However
the firmware will definitely not be easy if you need to interface anything
else than barebone flash disks or similar...

Another, far simpler, solution would be to use a 32-bit COM module with USB
host port, flash disk emulation, and an OS already supporting your USB
device (say win-CE or Linux for instance). Example : www.compulab.co.il...
Around 50$ per 1k...

Friendly,
Robert
 
D

Don McKenzie

Don said:
have a look at:
http://www.delkin.com/delkin_products_usb_bridge.html
and let me know if that will do what you need.

Don...

also ISP1261 Bridge Controller
<http://archive.chipcenter.com/knowl..._feature/showArticle.jhtml?articleID=10100139>

Don...


--
Don McKenzie
E-Mail Contact Page: http://www.dontronics.com/e-mail.html

Micro,TTL,USB to 1.5" color LCD http://www.dontronics.com/micro-lcd.html
USB,RS232 or TTL to VGA Monitor http://www.dontronics.com/micro-vga.html
World's smallest USB 2 TTL Conv http://www.dontronics.com/micro-usb.html
 
F

Frank-Christian Kruegel

Anybody know how to do an easy, low-code, USB Host for a
microcontroller? There are more & more devices that have gone from
serial to USB control, but I don't want to lug a computer around to
control or talk to something. Example, we have a couple of manned
submersibles that dive to 3,000 feet, and have a digital camera system
we can throw on the sub & go diving. When we're back on deck, we have
to take a laptop out and plug it into the camera. What I'd like is
PIC-based way to fool the camera into thinking it's talking to a PC &
downloading the pix to a flash drive. This is something I could do for
about $50 IF I had a $500 USB snooper to get the upfront handshaking
back & forth into an array & spit it out to the camera. I've seen a few
Palm PCs and the like that say they have a USB Host feature, but I'm
not that skilled at Win Mobile programming. Any thoughts on this? I
only need to build a couple of these. You can take a look at our subs
at:
http://www.hboi.edu/marineops/jsl.html

Thanks for your time.

It's much easier to take out the CF/SD media out of the camera and read it
out directly.

Or: Google for "imagetank". You'll find devices that will read out cameras
and flash media and store the picture onto an internal hard disk. This does
only work if the camera uses a standard protocol (i.e. mass storage or PIP,
not something proprietary like older Olympus cameras)


Mit freundlichen Grüßen

Frank-Christian Krügel
 
D

Don McKenzie

Frank-Christian Kruegel said:
It's much easier to take out the CF/SD media out of the camera and read it
out directly.

Or: Google for "imagetank". You'll find devices that will read out cameras
and flash media and store the picture onto an internal hard disk. This does
only work if the camera uses a standard protocol (i.e. mass storage or PIP,
not something proprietary like older Olympus cameras)


Mit freundlichen Grüßen

Frank-Christian Krügel


google on:
USB On-The-Go
I was amazed at what is around that I think may do what you need:
<http://catalog.belkin.com/IWCatProductPage.process?Product_Id=245923>
<http://www.busybits.com.au/item/9319236921906>
and heaps more to look at.

Don...


--
Don McKenzie
E-Mail Contact Page: http://www.dontronics.com/e-mail.html

Micro,TTL,USB to 1.5" color LCD http://www.dontronics.com/micro-lcd.html
USB,RS232 or TTL to VGA Monitor http://www.dontronics.com/micro-vga.html
World's smallest USB 2 TTL Conv http://www.dontronics.com/micro-usb.html
 
M

Mike Harrison

Anybody know how to do an easy, low-code, USB Host for a
microcontroller? There are more & more devices that have gone from
serial to USB control, but I don't want to lug a computer around to
control or talk to something. Example, we have a couple of manned
submersibles that dive to 3,000 feet, and have a digital camera system
we can throw on the sub & go diving. When we're back on deck, we have
to take a laptop out and plug it into the camera. What I'd like is
PIC-based way to fool the camera into thinking it's talking to a PC &
downloading the pix to a flash drive. This is something I could do for
about $50 IF I had a $500 USB snooper to get the upfront handshaking
back & forth into an array & spit it out to the camera. I've seen a few
Palm PCs and the like that say they have a USB Host feature, but I'm
not that skilled at Win Mobile programming. Any thoughts on this? I
only need to build a couple of these. You can take a look at our subs
at:
http://www.hboi.edu/marineops/jsl.html

Thanks for your time.

If the camera pretends to be a standard USB drive ( which some do), you may be able to use this :
http://www.ghielectronics.com/details.php?id=5

If not, then you may be able to use it with its 'raw access' mode if you can figure out the camera
protocol.
 
N

Nico Coesel

Subhead said:
Anybody know how to do an easy, low-code, USB Host for a
microcontroller? There are more & more devices that have gone from
serial to USB control, but I don't want to lug a computer around to
control or talk to something. Example, we have a couple of manned
submersibles that dive to 3,000 feet, and have a digital camera system
we can throw on the sub & go diving. When we're back on deck, we have
to take a laptop out and plug it into the camera. What I'd like is
PIC-based way to fool the camera into thinking it's talking to a PC &
downloading the pix to a flash drive. This is something I could do for
about $50 IF I had a $500 USB snooper to get the upfront handshaking
back & forth into an array & spit it out to the camera. I've seen a few
Palm PCs and the like that say they have a USB Host feature, but I'm
not that skilled at Win Mobile programming. Any thoughts on this? I
only need to build a couple of these. You can take a look at our subs
at:

Like others already pointed out: forget about writing your own USB
host. Buy a Linksys NSLU2, hack it (http://www.nslu2-linux.org/) and
of you go.
 
J

Jeff Findley

Subhead said:
Anybody know how to do an easy, low-code, USB Host for a
microcontroller? There are more & more devices that have gone from
serial to USB control, but I don't want to lug a computer around to
control or talk to something. Example, we have a couple of manned
submersibles that dive to 3,000 feet, and have a digital camera system
we can throw on the sub & go diving. When we're back on deck, we have
to take a laptop out and plug it into the camera. What I'd like is
PIC-based way to fool the camera into thinking it's talking to a PC &
downloading the pix to a flash drive. This is something I could do for
about $50 IF I had a $500 USB snooper to get the upfront handshaking
back & forth into an array & spit it out to the camera. I've seen a few
Palm PCs and the like that say they have a USB Host feature, but I'm
not that skilled at Win Mobile programming. Any thoughts on this? I
only need to build a couple of these. You can take a look at our subs
at:
http://www.hboi.edu/marineops/jsl.html

If your camera is supported, buy an iPod and get the USB adapter that lets
you do this.

Scroll down to "Camera Connector"
http://www.apple.com/ipod/accessories.html

or go straight there
http://store.apple.com/1-800-MY-APPLE/WebObjects/AppleStore?productLearnMore=M9861G/A

Or there are USB hard drives with the same sort of capability.

Here's an inexpensive one that reads memory cards (used in digital cameras)
http://www.meritline.com/usb2-0-digi-mate3.html

Jeff
 
S

Subhead

Thanks, everyone, for the info. The Delkin USB Bridge looks to be
exactly what we need for the underwater camera transfers, & it's $40
retail! For this one app, the camera is in a housing that keeps it from
being crushed down to 4500 feet ( 3700 meters). We really don't want to
open it to retrieve the memory card as that allows the hot, humid,
surface air into the housing. We'd then have to evacuate the housing &
back fill it with nitrogen (or similar) or we'd end up with lots of
pictures of a foggy dome port! It's normally about 4-6 deg C at the
bottom of the sea.

I'll start loking at the other suggested sites for other projects I'm
thinking of. Most involve digital cameras. One interesting one is a
long-term camera set up for a year time-lapse. Controlling the camera
without a PC is key here. The Delkin Bridge, or similar, should make it
fairly easy to not worry about any individual camera's storage
capacity. The camera would take time-interval shots (that's all ready
to go, with small strobes & internal Li-Ion batteries) but could also
be triggered by siesmic events. One scientist wants to know if
earthquakes trigger spawning in some organisms.

I've found cameras that I can control serially, like older Nikon
CoolPix or some that use Sony's camera version of LANC control, but I
don't want an expensive system's resolution determining factor to be
the protocol of the interface. With almost everything going from RS-232
or 485 to USB, a long term fix is needed.

Thanks again for all the info. I have a few nights worth of research
ahead!

Dan Boggess
Harbor Branch Oceanographic
www.HBOI.edu
 
A

Adrian Jansen

Subhead wrote:
--- snip ---
I've found cameras that I can control serially, like older Nikon
CoolPix or some that use Sony's camera version of LANC control, but I
don't want an expensive system's resolution determining factor to be
the protocol of the interface. With almost everything going from RS-232
or 485 to USB, a long term fix is needed.

Thanks again for all the info. I have a few nights worth of research
ahead!

Dan Boggess
Harbor Branch Oceanographic
www.HBOI.edu

Brings up another point, if your camera and controller are more than a
few feet apart, USB wont work. Max design distance on a USB cable is 5
metres. So any remote control stuff will have to translate the USB to
something else, and back again, to get reliable comms. USB was designed
as a simple way of hooking a few domestic pieces of gear to a PC, not as
a rugged long distance serial link.

--
Regards,

Adrian Jansen adrianjansen at internode dot on dot net
Design Engineer J & K Micro Systems
Microcomputer solutions for industrial control
Note reply address is invalid, convert address above to machine form.
 
J

Joel Kolstad

Adrian Jansen said:
Brings up another point, if your camera and controller are more than a few
feet apart, USB wont work. Max design distance on a USB cable is 5 metres.

There are extenders out there, e.g., http://www.vpi.us/usbc5.html . Never
used one so I'm not sure how well it really works, though.
USB was designed as a simple way of hooking a few domestic pieces of gear to
a PC, not as a rugged long distance serial link.

Like many standards, its popularity has caused people to press it into service
for applications never dreamed of by its progenitors.

---Joel
 
S

Subhead

Adrian Jansen wrote:
snip > ... if your camera and controller are more than a
few feet apart, USB wont work.

At the moment, the apps I'm thinking of will have all the main guts in
the same underwater housing. For a camera system, the strobes will be
seperate, but the strobe battery & power controller will be in the main
housing. Underwater, you really need to get the light as far off-axis
from the lens as possible. All the detritus in the water can just
bounce all your light right back into the lens even at very close
ranges. BTW, after hurricane Katrina, we found some experiments blown
over or moved several meters, this at depths of 1700 to 2200 feet.
Weren't expecting that.

I haven't any of the USB extenders yet, but would like to hear from
anyone who has. If we're just hooking sometjhing to the sub, we can get
wires out to an external device & connect it top a PC inside, where
it's a shirt-sleeve environment. The stand-alone stuff for drop-off
packages is what started this whole inquiry.

Thanks again.
Dan Boggess
HBOI.edu
 
Top