I've noticed an anomaly with the endpoint 0 (EP0) OUT "byte count" register (BD0OBC) on the PIC16C745 (one of the USB PICs). I've discovered that it must be set after each EP0 OUT transaction in order for the next EP0 OUT transaction to work. This is not required for EP1 OUT and EP2 OUT (BD1OBC and BD2OBC, respectively). It would seem to me that the behavior for EP1 OUT and EP2 OUT is correct (why would you need to set the packet size for data you receive? It only gets overwritten). At the least, I'd expect the behavior to be consistent across the endpoints. Does anyone know why the endpoints should differ in this regard? -- http://www.piclist.com hint: The list server can filter out subtopics (like ads or off topics) for you. See http://www.piclist.com/#topics