I'm working on implementing CH340 drivers used by cheap Arduino clones on Android (Linux). What endpoints should be used as read endpoint since two endpoints have IN flag - 0x81 and 0x82?


Is there any developer documentation except some old c #1 (http://www.cs.fsu.edu/~baker/devices/lxr/http/source/linux/drivers/usb/serial/ch341.c?v= and some linux driver #2 (http://0xcf.com/?wpdmdl=124)

  • Try looking at the (normal) Linux drivers source code. Of course, you could always try one and see - if it doesn't work, try the other instead.
    – Majenko
    Jul 15, 2015 at 13:55
  • can you send me the link for normal Linux driver sources for CH340 chip?
    – 4ntoine
    Jul 15, 2015 at 14:01
  • none if them is working because of another reasons so i can't detect which one is correct. i need just to know which one is right
    – 4ntoine
    Jul 15, 2015 at 14:12
  • 1
    Plug it into a linux machine and use lsusb -v -d <vid:pid> to find which endpoint is the bulk one? You can probably do something similar on Windows but I don't have a clue how.
    – Majenko
    Jul 15, 2015 at 14:50
  • 1
    So it should be 0x82 then I would guess. The other one is probably for sending configuration or control line messages.
    – Majenko
    Jul 15, 2015 at 17:08


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.