EmbeddedRelated.com
Forums
Memfault Beyond the Launch

USB ID-pin missing -.no host in the system?

Started by kturunen January 17, 2012
I'm relatively new with embedded systems and electronics so I might be
trying something above my skill level:
I have a Nokia N95 cellphone and an ARM mini-STM32 eval board with
mini-USB-socket. The problem seems to be that I can use only 4 wires (ID is
floating on the board). What can I do to get my ARM-board and Nokia
connected? Would a USB hub make either one of these devices a host?

	   
					
---------------------------------------		
Posted through http://www.EmbeddedRelated.com
On Tue, 17 Jan 2012 06:29:13 -0600, kturunen wrote:

> I'm relatively new with embedded systems and electronics so I might be > trying something above my skill level: I have a Nokia N95 cellphone and > an ARM mini-STM32 eval board with mini-USB-socket. The problem seems to > be that I can use only 4 wires (ID is floating on the board). What can I > do to get my ARM-board and Nokia connected? Would a USB hub make either > one of these devices a host?
No. A host is a host from coast to coast. There are devices (Android tablets come to mind, but I'm not sure how ubiquitous the scheme is) that will autodetect and magically turn into hosts when necessary -- but for the most part a device is either build with the functionality to be a host, or the functionality to be a slave, and there ain't no in-between. You probably have a better chance with your eval board, if the USB goes straight to the processor. But it'd be a case of playing with the software, and probably the hardware, to make it all go. -- My liberal friends think I'm a conservative kook. My conservative friends think I'm a liberal kook. Why am I not happy that they have found common ground? Tim Wescott, Communications, Control, Circuits & Software http://www.wescottdesign.com
On 17 Jan., 18:39, Tim Wescott <t...@seemywebsite.com> wrote:
> On Tue, 17 Jan 2012 06:29:13 -0600, kturunen wrote: > > I'm relatively new with embedded systems and electronics so I might be > > trying something above my skill level: I have a Nokia N95 cellphone and > > an ARM mini-STM32 eval board with mini-USB-socket. The problem seems to > > be that I can use only 4 wires (ID is floating on the board). What can =
I
> > do to get my ARM-board and Nokia connected? Would a USB hub make either > > one of these devices a host? > > No. =A0A host is a host from coast to coast. =A0There are devices (Androi=
d
> tablets come to mind, but I'm not sure how ubiquitous the scheme is) that > will autodetect and magically turn into hosts when necessary -- but for > the most part a device is either build with the functionality to be a > host, or the functionality to be a slave, and there ain't no in-between. > > You probably have a better chance with your eval board, if the USB goes > straight to the processor. =A0But it'd be a case of playing with the > software, and probably the hardware, to make it all go. >
some STM32s are usb-on-the-go and can be both host and device on the fly, there's protocols to agree on who gets to act as the host when you plug things together but you could also just decide that you stm will be the host/device and take it from there, it should backward compatible with -Lasse
This link below is to the board
http://www.kanebebe.com/download/mini-stm32/MINI_STM32-V3.0_SCH.pdf

Can I solder the ID pin to something or am I just missing the host
hardware?
	   
					
---------------------------------------		
Posted through http://www.EmbeddedRelated.com
On Wed, 18 Jan 2012 02:46:16 -0600, "kturunen"
<kturunen@n_o_s_p_a_m.gmail.com> wrote:

>This link below is to the board >http://www.kanebebe.com/download/mini-stm32/MINI_STM32-V3.0_SCH.pdf > >Can I solder the ID pin to something or am I just missing the host >hardware?
ile the signaling is basically the same in both directions, a peripheral and host have certain differences. For example, the host supplies power, the peripheral does not. The host has pulldowns on the signal lines, the peripheral has pullups to indicate function and presence. Hosts that support high speed must also support full and low speeds, a peripheral that supports high speed can not connect to a low speed only host. The negotiation from full speed to high speed also places certain roles on the two devices. The host runs the bus, the peripheral (at the packet level is purely responsive). So there are at least a few things to deal with. USB OTG, does provide help here. So with a bit of fiddling USB transceivers are capable of both roles. But the real problem is the quite large software stack and functions required on the host (often partially implemented in USB host chips). A device designed as a peripheral simply has *none* of the stuff on board needed to drive a USB bus. And while some might theoretically be hackable, it is far from a small undertaking. USB is *far* from being a simple connection like RS-232. While a peripheral doesn't need too much intelligence (and easy to use USB device/peripheral hardware is commonly available), the host has a very large burden. If the device supports USB/OTG, it has a (slightly) simplified host stack and can negotiate host mode when connected point-to-point with a device. And even if you have a proper USB host, it'll need an appropriate driver to talk to the peripheral - for example, a number of tablets can be USB hosts (usually USB/OTG), but only support mass storage devices as peripherals (FWIW, many/most cameras can actually operate in that mode). So you couldn't, for example, plug in your USB mouse, and least not without getting HID-class support put on the host system.
..
>And even if you have a proper USB host, it'll need an appropriate >driver to talk to the peripheral - for example, a number of tablets >can be USB hosts (usually USB/OTG), but only support mass storage >devices as peripherals (FWIW, many/most cameras can actually operate >in that mode). So you couldn't, for example, plug in your USB mouse, >and least not without getting HID-class support put on the host >system.
OK, I get the picture - maybe I just plug the gsm modem and make it buzz with my ARM board. Yeah, thanks everybody. --------------------------------------- Posted through http://www.EmbeddedRelated.com
kturunen <kturunen@n_o_s_p_a_m.gmail.com> wrote:
> This link below is to the board > http://www.kanebebe.com/download/mini-stm32/MINI_STM32-V3.0_SCH.pdf > > Can I solder the ID pin to something or am I just missing the host > hardware?
TheSTM32F103RB device used on that board only has a USB device interface. -a

Memfault Beyond the Launch