CYUSB4347 - Initial FW upload

Announcements

Live Webinar: USB-C adoption. Simple & Cost-efficient solutions | April 18th @9am or 5pm CEST. Register now !

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
dan_714
Level 1
Level 1
10 sign-ins 5 sign-ins First reply posted

It's not straight forward to me what the bare minimum hardware required to get a board running with the IC equivalent to the development board.

We’d like to run a simple modified solution from the default firmware already on the development board.   Only difference is we’d like 50W on the DFP PD as well which I have done and successfully uploaded using EZ-USB HX3PD utility.

In a production environment.  What are the steps to upload on a open IC (no firmware manufacture)? I get that there is an SWD for the DMC and PD controllers, but what about HUB image on the EEPROM.  How is the EEPROM programmed initially without the DMC already having firmware.  How is this different than the whole composite image upload with the utility?   What are the steps of getting to the state where we can now do FW updates with the utility over usb 2.0 the same as the development board cyusb6611.

Our use case requires minimal board space so if we could use a method of uploading firmware with the least amount of components on the board the better.  No molex connector for SWD for example.

I do realize the HX3 Blaster could be used but the documentation doesn’t talk about SPI interface only I2c interface to update.

EZ-USB HX3PD Programming Specification – Pg 5. States “For programming the external EEPROM with the hub controller firmware, see the respective EEPROM programming guide. Programming all the controllers (Hub controller, USB PD controller, and DMC) is mandatory to make the HX3PD operational” ,but I don’t see any link to a guide or reference to it anywhere else.

Could it be after the DMC is updated over SWD and the HX3PD HUB library included allows the EEPROM to be uploaded in parallel and there's no process of updating the HUB controller independently because its done in the background? But then again how is the file in to which to upload to the EEPROM included?

0 Likes
1 Solution
lock attach
Attachments are accessible only for community members.
MallikaK_22
Moderator
Moderator
Moderator
50 likes received 750 replies posted 250 solutions authored

Hi,

In HX3PD, the hub firmware is stored in the SPI Flash and boots from that. Programming to SPI Flash can be done in 2 ways:

>> Programming SPI flash by an external SPI Programmer. The default hub firmware to be programmed is attached to this thread.

>> Firmware update over USB.

If you select option (1), for programming DMC & PD controllers you can use SWD interface. The SWD programming can be done through Miniprog4 using PSoC Programmer.

Option (2) is easier since it allows programming the composite image (containing the firmware for each MCU) over USB using the HX3PD configuration utility.

From your description, it seems like you need custom firmware. Could you please elaborate on your requirements?

Regards,

Mallika

View solution in original post

0 Likes
3 Replies
lock attach
Attachments are accessible only for community members.
MallikaK_22
Moderator
Moderator
Moderator
50 likes received 750 replies posted 250 solutions authored

Hi,

In HX3PD, the hub firmware is stored in the SPI Flash and boots from that. Programming to SPI Flash can be done in 2 ways:

>> Programming SPI flash by an external SPI Programmer. The default hub firmware to be programmed is attached to this thread.

>> Firmware update over USB.

If you select option (1), for programming DMC & PD controllers you can use SWD interface. The SWD programming can be done through Miniprog4 using PSoC Programmer.

Option (2) is easier since it allows programming the composite image (containing the firmware for each MCU) over USB using the HX3PD configuration utility.

From your description, it seems like you need custom firmware. Could you please elaborate on your requirements?

Regards,

Mallika

0 Likes
dan_714
Level 1
Level 1
10 sign-ins 5 sign-ins First reply posted

Hi Mallika,

Ok so in option 1 EEPROM would have to be programmed externally initially.  We can't program the DMC and PD controllers without programming the EEPROM then move to the utility to do the composite image upload.  I was hoping the DMC would handle the bridge to the EEPROM after SWD upload.

Option 2 would be ideal for our use case since we want to reduce pcb components and use less board space, but my confusion is does the cyusb4347 come with the bootloaders from manufacture? So we could upload the composite image to our custom board with the new IC manufacture?  With the PD software utilities of course.

Our requirement is minimal board space, we've customized the firmware with the utility and got it working on the development board already (50W on both PD ports).  We'd like to have our custom board made soon and this commissioning portion of the schematic is crucial to save space on the board.

Appreciate the help,

-Dan

0 Likes
MallikaK_22
Moderator
Moderator
Moderator
50 likes received 750 replies posted 250 solutions authored

Hi Dan,

If you wish to use option (2) for programming, the bootloader is preprogrammed. The composite image can then be programmed via the HX3PD utility.

Regards,

Mallika