2014-05-01 03:05 AM
Hi all,
I have just begun playing around with a STM32F4 discovery board as a side project during the pare time I have whilst not at uni. As a starting project, I am trying to connect a USB3300 ULPI PHY to the discovery board in an attempt to see if I am able to establish working functionality between the two devices and to see if I am able to retrieve some low-level packet information from the ULPI (vendor ID etc...)Has anybody on the forums given a similar task a try? Or is able to provide a good starting resource in order to do so? I've had very little exposure to these devices and programming them as such and am keen on starting to learn it.Cheers #ulpi-stm32f4-discovery2014-05-01 09:17 AM
I think there have been some general discussions about HS PHY's, the STM32F4 is a little bit particular/in-flexible, and I don't think it really provides much of the protocol/internal stuff for examination. You might be able to bit-bang the GPIO's that interface to it.
2014-05-01 07:32 PM
Hi Clive,
I've already have purchased the linked ULPI PHY. To start with, i'm just attempting to connect the two to see if I am able to achieve a working connection of somesort. I've had a look at the Open407v-d expansion board and will try to attempt the ULPI to my discovery the same way that the open407 does. Is there any example projects available to get me started on this? As in just a simple MDK ARM project that will allow me to get a grasp of how the two devices will connect and work together.2014-05-01 07:57 PM
I changed define options, compiled.
USE_STDPERIPH_DRIVER,STM32F4XX,USE_STM32F4_DISCOVERY,USE_USB_OTG_HS,USE_ULPI_PHY,HSE_VALUE=8000000
Please refer to the original USB examples (STM32_USB-Host-Device_Lib_V2.1.0), and specifically the ''STM324xG-EVAL_USBD-HS'' project profile to understand where I pulled these settings.
2014-05-02 07:11 PM
Cheers, will have a look into it.
2014-05-08 07:04 AM
Managed to get my connection between the two devices working. A quick question though, i'm currently in the process of trying to read the data of the USB traffic at every rising edge of the clock but am stuck on trying to allow the stm32f4 to be able to keep up with the ULPI transfer rate.
Is it possible for the stm32f4 to be able go at the required 60Mhz required match that of the ULPI? Is there some actions I can perform to allow it to happen?Cheers2014-05-08 08:22 AM
Translation: You want to sample GPIO pins at a synchronous 60 MHz rate?
I'm not sure the F4 going to be able to achieve that, perhaps you can capture with a FIFO like the AL422B (50 MHz), but with a 60 MHz rate?http://www.averlogic.com/AL422B.asp
http://www.frc.ri.cmu.edu/projects/buzzard/mve/HWSpecs-1/Documentation/AL422B_Data_Sheets.pdf
If you split the data into a 16-bit stream, you could halve the required frequency, or alternate between two FIFOs2015-06-12 07:05 AM
Hello, David.
I am also trying to use a STM32F4DISCOVERY to communicate in USB HS. I have purchased the USB3300 expansion board from WaveShare, but I have not been able to make it work yet. Do you remember what you have done to make it work? I am trying to adapt firmware examples from STM32429I-EVAL, which uses the same PHY, for an USB MSC Host, but it is not working. Any hint would be greatly appreciated. Regards, Rafael2015-06-12 09:21 AM
but it is not working.
Ok, may be you can explain a little more about exactly what changes you did make, and if you were able to use it in DEVICE mode. Or detail exactly what isn't working, perhaps with some bus analyzer data, or some other context, to focus on specifically what's not working. Also when digging up old threads be conscious that participants may be long gone, and not alerted to your post against the thread.