4

Is there a way,

  • with a small board add-on,
  • a simple cable incorporating some specialized chip,

to add a usb slave port to a RPi, to let it be used as a device?

Ghanima
  • 15,855
  • 15
  • 61
  • 119
Alain
  • 445
  • 1
  • 6
  • 13
  • 1
    The best thing is to use a USB to TTL/UART (Or USB to I2C) - THen you write the software/ API on the Pi. There isn't really anything where you can extend the Pi, and have it detected on Windows as a Pi and do stuff with, but maybe you can fill the market gap by developing something like that :) – Piotr Kula Apr 02 '14 at 08:04
  • 1
    or connect to something like a Teensy[https://www.pjrc.com/teensy/], that will show up on a host system as a HID device. Maybe you could explain why you need the functionality we can come up with another solution. – rob Apr 02 '14 at 08:35
  • Yea it all depends on what you would like to do, like Rob says. PS Rob your link is dead. – Piotr Kula Apr 02 '14 at 11:53
  • The URL is fine, the ']' has been accidentally to the end of it though ;) – PiBorg Apr 02 '14 at 13:14
  • @rob, which Teensy version would you suggest ? Can anybody suggest a tuto to capture (from within RPi) data exchanged between the Mini-B port and its Host ? – Alain Apr 03 '14 at 02:59

1 Answers1

3

Even though the USB port of the RPi is technically an On-the-go (OTG) chip that should support both a reduced set of host and client functionality the B/B+ type of the RPi does not support the device mode. That is related to the included USB hub and the fact that the ethernet is tunneled through USB (see).

If everything else fails, there are examples of software based USB stacks to emulate an USB device on a microcontroller (e.g. the Igor Plug an IR remote control receiver based on an Atmel microcontroller). Of course such attempts only adress low-bandwith features such as human-interface devices (HIDs). If one desperately needs both USB host and device on a board with RPi capabilities one should also look into the BeagleBlack Bone boards.

Ghanima
  • 15,855
  • 15
  • 61
  • 119