<?xml version="1.0" encoding="UTF-8"?>
<hash>
  <event-id type="integer">2009</event-id>
  <updated-at>09/01/2009</updated-at>
  <biography nil="true"></biography>
  <title>Challenges with Userspace USB Embedded Device Interfacing</title>
  <submitted-at>06/15/2009</submitted-at>
  <website nil="true"></website>
  <id type="integer">68</id>
  <description>The Portland State Aerospace Society is developing a Linux based flight computer with sensor and operational nodes connected to the system through USB in isochronous mode.

Most designs have margin to trade performance for reliability. Which choices in the Linux USB userspace interface will present which options? Is it better to write a kernelspace driver for known reliability or would it only be good for performance, or neither? There exists a finite amount of time in any design cycle to analyze these ideas for a given system.
Once a designer makes a choice what monitoring and analysis options are available in the api? How can a developer ensure they are following userspace
to kernel semantics, without intensive study of the kernel source code.

Many people want to interface USB devices to host computers. Reducing the time and complexity involved in such integration can make it economical for manufacturers to write and provide drivers for their devices. Can the userspace api develop in a direction to support this?

Discussing some of the challenges of the userspace interface to the Linux USB subsystem may provide some insight and ideas for improvement and encourage further use of Linux as a host system.
</description>
  <presenter nil="true"></presenter>
  <user-id nil="true"></user-id>
  <affiliation nil="true"></affiliation>
  <created-at>06/15/2009</created-at>
</hash>
