Comments (19)
Yes, it's interesting.
The core can utilize as many USB devices as available. It don't use any static variables.
As far as i know the ST's OTG_HS machine is similar to OTG_FS. But i haven't read the datasheet yet.
from libusb_stm32.
I have two boards with STM32F407 and '417 up respectively in OTG_FS mode. I will test port this ASAP. Also to be tested is STM32L433, likely will work with some existing driver.
Another few chips I have down the pipeline is F405 (OTG_HS, both internal FS PHY mode and external HS PHY mode, they have the same OTG_FS as F407/F417,) F411, F107 (both have only one OTG,) F722 and F756 (both chips, both OTG_FS and OTG_HS.)
from libusb_stm32.
I have an F413 I'm planning to try this library on, which has just OTG_FS.
from libusb_stm32.
@kisielk I am on it. I do hope that the F417's OTG_FS is similar enough with F413's so you can just take and use it.
from libusb_stm32.
@xcvista is it different from the existing v2 driver? or just a matter of adding the necessary defines?
from libusb_stm32.
@kisielk It is fairly different as how the VBUS detect is handled changed. A lot of stuff in enable()
and connect()
are throwing out errors, and I have to remove dependency from a few #define
's in stm32.h
since that header file plainly won't work in my build environment.
Maybe we need to come up with a better naming scheme for things, as the usb_32vx
will become unmanageable soon after more parts are introduced, especially when OTG_HS
are being introduced. I already have a few in the pipeline here.
from libusb_stm32.
I got a Nucleo-F767ZI second hand. So now I have three chips ready to test: STM32F407ZGT6 OTG_FS, STM32F417ZGT6 OTG_FS and STM32F767ZIT6 OTG_FS.
from libusb_stm32.
Fine. I've bought NUCLEO-F429 just before New Year and made otgfs driver. But i have no time for test and debug. I hope i'll do it at weekend.
from libusb_stm32.
I have an STM32F746G-DISCO I can test on, but don't have time to work on the code at the moment. If someone gives me a basic firmware I can try and help debug though.
from libusb_stm32.
- I will test the stm32f429-otgfs code on STM32F417, F407 and F767 as soon as you put it online. (I spent way too much time on sorting out the platform code and code generators...)
- I have a Chinese workalike of STM32F103, GD32F103CBT6, to test the stm32f103_devfs code on.
- I have a chip report: my two projects based on STM32F042 have been working stable for a while, using the stm32l052_devfs driver. I think you can list STM32F042K6T6, STM32F042F6P6 and STM32F042F4P6 as tested. (Yes I squeezed this into a 32-bit microcontroller with only 16kB Flash, implementing a USB HID using 9kB of unoptimized code. In contrast the STM32CubeMX boilerplate with maximum optimization takes 13kB.)
@kisielk I think the same F429 code would work on most F4/F7 chips, hopefully without too much modifications.
from libusb_stm32.
The stm32f429_otgfs driver is ready for testing
from libusb_stm32.
@dmitrystu I added support for the STM32F105/F107 based on the STM32F429 driver, would you accept a PR?
I also ported the bootloader.
from libusb_stm32.
Sure
from libusb_stm32.
Has anyone made progress porting this to an F7 series chip yet? Using the F429 driver and the cdc demo I've got as far as receiving a bus reset event, but nothing after that.
from libusb_stm32.
Check RCC for correct 48MHz USB FS PHY clock setup.
from libusb_stm32.
Well finally I have an OTG-HS-ULPI board ready.
from libusb_stm32.
Cool !
I've tried to use OTG-HS with Waveshare USB3300+NUCLEO-F429ZI but failed. Perhaps i've had a problems with interconnection wires @60mhz ULPI clock.
from libusb_stm32.
Let me put the schematics and Gerber on here, and put up a Tindie link if you want to buy one. It is STM32F405RGT6 + USB3300 on one board, with the intention to be used as a CMSIS-DAP debugger with a USB 2.0 Hi-Speed link.
from libusb_stm32.
Here is my STM32F405 + USB3300 board: https://www.tindie.com/products/maxtch/stm32f405-usb-2-hi-speed-evaluation-board-dap405/
from libusb_stm32.
Related Issues (20)
- STM32F411: Sending corrupted data HOT 18
- Thoughts on unimplemented USB_STD_SET_FEATURE & USB_STD_CLEAR_FEATURE for Device? HOT 7
- STM32L151C8 pma_write and pma_read BUG? HOT 7
- USB Compliance test failed (Chapter9) HOT 6
- Howto use this lib in a real project? HOT 3
- Greetings HOT 1
- cdc_loop example at high speed HOT 3
- Mass storage? HOT 1
- Add STM32 U5 Support HOT 2
- Add common usb_conf.h HOT 1
- Missing STM32F103x8
- Host?
- Missing vendor request demo
- with pedantic, this two places wont compile HOT 2
- STM32F411 port can't send more than 64 bytes HOT 8
- Clock setup in cdc_init_rcc() for STM32F411 is incorrect HOT 1
- [Discussion] C++ compilers really hate flexible array member. HOT 1
- GD32F407VGT6
- Best way to control EP data send flow (ACK/NACK)? HOT 1
- Warning in usbd_stm32f103_devfs.c HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libusb_stm32.