Hi Johan, CC Andrew (mxuport), Paul (Teensy) On Fri, Nov 13, 2020 at 3:37 PM Johan Hovold <johan@xxxxxxxxxx> wrote: > On Fri, Nov 13, 2020 at 02:07:41PM +0100, Geert Uytterhoeven wrote: > > TL;DR: I'm looking for a USB-to-multi-serial solution that uses as few > > USB endpoints as possible. Anyone with a good suggestion? > > Moxa has a device with 16 ports that only use three endpoints; see the > mxuport driver. Thank you, that was exactly what I was looking for! > > While I cannot replace USB-serial convertors on development boards, I > > can replace the USB serial implementation on the Teensy. Hence I'm > > looking for a more efficient USB-multi-serial protocol (preferably one > > that has a Linux driver), using as few endpoints as possible. > > I'm not a USB expert, but If I'm not mistaken, an N-port > > USB-multi-serial adapter could be implemented using only 2 or 3 > > endpoints (one "locked" input endpoint for signalling, and one (TX/RX > > combined) or two (TX and RX separated) multiplexed endpoints for data)? > > Right, you'd (typically) need two bulk endpoints for tx and rx. The Moxa > protocol use a third for signalling events. (And USB devices always have > a control endpoint, which I don't count here). > > > If no such thing exists, I guess I can use the mos7840 protocol instead? > > Or is there a better solution? > > You can always roll your own minimal mux protocol in case the moxa one > is too complex (and we may want to keep an alternative implementation > separate for other reasons). That's what Kevin suggested at last ELCE, too. The main disadvantage is that it needs its own driver, and thus doesn't work with any existing (old) kernel. Finally I managed to find to time to implement and deploy this, and it's been working fine in my board farm for the last 2 months. As this is not Linux-specific, but Teensy-specific, I like to direct the interested people to the Teensy forum: https://forum.pjrc.com/threads/71684-A-better-multi-serial Thanks again! Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds