CherryUSB icon indicating copy to clipboard operation
CherryUSB copied to clipboard

Later roadmap

Open sakumisu opened this issue 2 years ago • 5 comments

  • class driver

  • [x] msc device driver with os,support filesystem interface

  • [x] printer class support, device and host

  • [ ] mtp class support, device and host

  • [ ] cdc rndis additions

  • [x] hub process optimise in host mode

  • [ ] ftdi simulation,Copyright?

  • [ ] adb server driver

  • port

  • [x] synopsys dwc2 device port optimise

  • [x] synopsys dwc2 host port optimise

  • [ ] renesas usb ip port

  • [ ] rp2040 port ?

  • [ ] ch32v307 host port

  • [ ] ohci port

  • [x] ehci with iso transfer

  • [ ] xhci port

  • application

  • [ ] daplink template for all chips

  • [x] audio with i2s or audio codec

  • [x] video with dvp

  • [ ] network with eth

  • [ ] network with wifi

  • [ ] network with printer,downloading file from net and print through printer

  • [ ] uf2

  • [ ] usb2 all bus:uart、i2c、spi、can

  • [x] dfu download with st tool

  • tool

  • [ ] ci test

  • [ ] config tool update:winusb desc、hid report desc、audio desc、video desc

  • [ ] class Stress tests scripts

  • [ ] winusb windows and linux driver

sakumisu avatar May 14 '22 09:05 sakumisu

前排支持,争取多提几个PR。

aozima avatar May 14 '22 15:05 aozima

666

geniusgogo avatar May 16 '22 06:05 geniusgogo

期待更多应用的支持🉑

HaiMianBBao avatar May 24 '22 02:05 HaiMianBBao

完善了dwc2的支持,esp32 s2/s3的支持也可以做上了。。。还有GD32VF103........

juiceRv avatar Jun 02 '22 06:06 juiceRv

完善了dwc2的支持,esp32 s2/s3的支持也可以做上了。。。还有GD32VF103........

是的,目前需要做的是对比寄存器的差距

sakumisu avatar Jun 04 '22 09:06 sakumisu

application能否加入模拟ch340(usbfs)和ch348(usbhs),可以参考wch开放的linux驱动,这样可以直接利用现用的已签名驱动。 目前我也正在研究ch340的linux驱动,可惜没这个基础,读起来比较费劲。

Dandjinh avatar Nov 10 '22 02:11 Dandjinh

application能否加入模拟ch340(usbfs)和ch348(usbhs),可以参考wch开放的linux驱动,这样可以直接利用现用的已签名驱动。 目前我也正在研究ch340的linux驱动,可惜没这个基础,读起来比较费劲。

指的是设备枚举成ch340这样?这个需要考虑版权问题

sakumisu avatar Nov 10 '22 02:11 sakumisu

application能否加入模拟ch340(usbfs)和ch348(usbhs),可以参考wch开放的linux驱动,这样可以直接利用现用的已签名驱动。 目前我也正在研究ch340的linux驱动,可惜没这个基础,读起来比较费劲。

指的是设备枚举成ch340这样?这个需要考虑版权问题

驱动的license是GPL的,应该还好。 我看github上也有几个stm32模拟ch340的。

Dandjinh avatar Nov 10 '22 02:11 Dandjinh

application能否加入模拟ch340(usbfs)和ch348(usbhs),可以参考wch开放的linux驱动,这样可以直接利用现用的已签名驱动。 目前我也正在研究ch340的linux驱动,可惜没这个基础,读起来比较费劲。

指的是设备枚举成ch340这样?这个需要考虑版权问题

驱动的license是GPL的,应该还好。 我看github上也有几个stm32模拟ch340的。

这个我需要问下原厂,同意了才能做

sakumisu avatar Nov 10 '22 02:11 sakumisu

Looks like a very interesting project after all the problems I have had with the ST USB library.

My interest for RNDIS host to interface with Motorola and Hytera DMR radios.

I see RNDIS host is on your roadmap, please could you tell me if going be to be completed soon, as well as a way of integrating it with LWIP?

I could conduct some tests if that would help?

Thanks

Andy.

AndyW999 avatar Apr 01 '23 10:04 AndyW999

Looks like a very interesting project after all the problems I have had with the ST USB library.

My interest for RNDIS host to interface with Motorola and Hytera DMR radios.

I see RNDIS host is on your roadmap, please could you tell me if going be to be completed soon, as well as a way of integrating it with LWIP?

I could conduct some tests if that would help?

Thanks

Andy.

It is completed, but using in rt-thread, and this is port to use rndis api : https://github.com/sakumisu/CherryUSB/blob/master/third_party/rt-thread-4.1.1/rndis_host/rndis_host.c

sakumisu avatar Apr 01 '23 13:04 sakumisu

Is there going to be an RNDIS version that does not need an RTOS, or possibly using FreeRTOS as I do want to use it in the STM32 environment.

AndyW999 avatar Apr 06 '23 13:04 AndyW999

I would LOVE to see usb midi host support. I am working with BL616 for audio synthesis and midi host would be 💥

marchingband avatar May 18 '23 16:05 marchingband

I would LOVE to see usb midi host support. I am working with BL616 for audio synthesis and midi host would be 💥

midi has no class request, when enumrates completely, go to user own task (alloc pipe and submit urb)

sakumisu avatar May 19 '23 09:05 sakumisu

@sakumisu I am not able to write this, because I am not experienced with USB protocol, is it possible to publish an example?

marchingband avatar May 19 '23 17:05 marchingband

@sakumisu I am not able to write this, because I am not experienced with USB protocol, is it possible to publish an example?

I will give a simple demo for you this weekend.

sakumisu avatar May 22 '23 01:05 sakumisu

@sakumisu Thank you! If I am able to expand on it, I will offer to contribute back with a PR.

marchingband avatar May 22 '23 05:05 marchingband

that worked thank you 😎

marchingband avatar May 29 '23 03:05 marchingband

I am not able to debug the driver code, because I do not understand how it works 🙃. usb protocol is too complicated. I made the change you suggested but no change... tinyusb also does not have a working midi-host driver, so audio developers like me are searching for a way to accomplish it. If you have time later, and want to work on this demo, I am able to test on devices, write a midi parser, etc.. i am happy to contribute however I can. I know you are probably busy, and have many users asking for help. We appreciate you!

marchingband avatar May 29 '23 07:05 marchingband

I am not able to debug the driver code, because I do not understand how it works 🙃. usb protocol is too complicated. I made the change you suggested but no change... tinyusb also does not have a working midi-host driver, so audio developers like me are searching for a way to accomplish it. If you have time later, and want to work on this demo, I am able to test on devices, write a midi parser, etc.. i am happy to contribute however I can. I know you are probably busy, and have many users asking for help. We appreciate you!

I have removed some comments, if i have time to do this , i will tell you.

sakumisu avatar May 29 '23 07:05 sakumisu

Is there going to be an RNDIS version that does not need an RTOS, or possibly using FreeRTOS as I do want to use it in the STM32 environment.

Support freertos, there is a demo in third-party

sakumisu avatar Jun 16 '23 02:06 sakumisu

Great!

How is the USB configuration set up as I could not see RNDIS as an option in your Configurator.

Thanks

Andy.

AndyW999 avatar Jun 20 '23 04:06 AndyW999

I see that the bl616 is supposed to be supported as a ehci host. But the Buffalo port directory is empty.

Is there a cherryusb host example for the bl616?

harbaum avatar Aug 04 '23 20:08 harbaum

I see that the bl616 is supposed to be supported as a ehci host. But the Buffalo port directory is empty.

Is there a cherryusb host example for the bl616?

https://github.com/bouffalolab/bouffalo_sdk/tree/master/examples/peripherals/usbhost

sakumisu avatar Aug 05 '23 03:08 sakumisu

https://github.com/bouffalolab/bouffalo_sdk/tree/master/examples/peripherals/usbhost

Thanks. I actually got the usbhost example to run on the m0s and it detects key presses from a USB keyboard. Excellent!

But the m0s really isn't comfortable to work with ...

harbaum avatar Aug 07 '23 16:08 harbaum

Hi, I saw that the commits for the host video class (class/video/usbh_video.c and .h) are very recent and only 2 days ago. Does this mean the the host UVC class is still a work in progress? Or can it be used successfully in its current state?

alireza-tabatabaee avatar Aug 27 '23 14:08 alireza-tabatabaee

Hi, I saw that the commits for the host video class (class/video/usbh_video.c and .h) are very recent and only 2 days ago. Does this mean the the host UVC class is still a work in progress? Or can it be used successfully in its current state?

It is done last year, but i do not provide hcd porting with iso for open source, only for business. Or you can implement hcd porting for iso transfer by yourself and then you can use video.

sakumisu avatar Aug 27 '23 14:08 sakumisu