testing n-Bed with a Logitech C270 camera
Fork of USBHostC270_example by
Diff: USBHostC270/USBHostC270.cpp
- Revision:
- 11:6a8eef89eb22
- Parent:
- 10:387c49b2fc7e
--- a/USBHostC270/USBHostC270.cpp Sun Mar 17 13:22:13 2013 +0000 +++ b/USBHostC270/USBHostC270.cpp Mon Mar 18 12:34:47 2013 +0000 @@ -17,9 +17,9 @@ _formatIndex = formatIndex; _frameIndex = frameIndex; _interval = interval; - m_isoEp = NULL; clearOnResult(); host = USBHost::getHostInst(); + m_isoEp = new IsochronousEp; init(); } @@ -35,13 +35,11 @@ bool USBHostC270::connected() { - C270_DBG("dev_connected: %d", dev_connected); return dev_connected; } bool USBHostC270::connect() { - C270_DBG("dev_connected: %d", dev_connected); if (dev_connected) { return true; } @@ -51,15 +49,15 @@ C270_DBG("Trying to connect C270 device\r\n"); - if(host->enumerate(dev, this)) + if(host->enumerate(dev, this)) { break; - + } if (c270_device_found) { USB_INFO("New C270 device: VID:%04x PID:%04x [dev: %p - intf: %d]", dev->getVid(), dev->getPid(), dev, c270_intf); dev->setName("C270", c270_intf); host->registerDriver(dev, c270_intf, this, &USBHostC270::onDisconnect); int addr = dev->getAddress(); - m_isoEp = new IsochronousEp(addr, C270_EN, C270_MPS); + m_isoEp->init(addr, C270_EN, C270_MPS); uint8_t buf[26]; memset(buf, 0, sizeof(buf)); buf[2] = _formatIndex; @@ -92,11 +90,10 @@ void USBHostC270::onDisconnect() { C270_DBG("dev_connected: %d", dev_connected); - // TODO - if (m_isoEp) { - m_isoEp->disconnect(); + if (dev_connected) { + m_isoEp->disconnect(); + init(); } - init(); } /*virtual*/ void USBHostC270::setVidPid(uint16_t vid, uint16_t pid)