2019-11-08 04:05 AM
So, I created a PCB with the STUSB4500, and I thought it would be a simple matter of having some breakouts where I could connect an arduino to the I2C lines to flash the NVM. Unfortunately, I cannot get it to work.
I can do a basic I2C scan to find that the chip is at address 0x28, so the STUSB4500 must have a solid connection to the arduino...
The arduino sketch that I am using to flash the NVM is from the following link:
https://github.com/oxplot/fabpide2/blob/master/arduino/stusb4500_flasher/stusb4500_flasher.ino
(Haha, unfortunately I see now that the latest commit is labeled "still not working"...)
The sketch will always hang when it is waiting for a response from reading FTP_CTRL_0, which I assume means that no data has been successfully received.
I've been playing around with it and trying to make sure that sketch is working according to this Registry Description that I found, but I cannot find any mistakes in the protocol in the sketch:
https://github.com/timkruse/stusb4500/blob/master/docs/STUSB45_RegisterDescription_inofficial.pdf
If anyone is aware of an arduino sketch that works, I would much appreciate it if you could share it. Would it make more sense for me to purchase the development board [STM32]?
2019-12-05 04:06 PM
Hello,
The NVM flashing of STUSB4500 is tested and work with STM32, by using the following code: STSW-STUSB004
If you want to use an Arduino hardware, you can try to port this code to Arduino.
The STM32-Nucleo board is cheap (NUCLEO-F072RB is only $10).
So it would be easier and faster for you to use this board.
Best regards.