cancel
Showing results for 
Search instead for 
Did you mean: 

USB EZ-PD Type-C

AlHo_4624316
New Contributor

Hi,

My electrical design engineer is using the CYPD 3171-24LQXQ IC to control USB C and A ports.

There is a sub-system ARM M0 Processor in that IC  - is that ARM available to run a separate

program (non-USB stuff) - or is the ARM used to manage or control the USB functions?

Thank you very much

AL Hopfer

Software

0 Likes
Reply
1 Solution
RajathB_01
Moderator
Moderator

Hi Al Hopfer,

No, the USB-mini is not handled by CCG3PA. So the necessary part of the firmware itself occupies atleast 90% code space.

I am afraid you will not have enough GPIO's and on chip resources for your implementation.

If you want to check, please download the EZ-PD CCGx Power SDK and try adding your customization in the EZ-PD CCGx Power SDK\CCGx\Firmware\projects\CYPD3171-24LQXQ_pb project and try building it.

If you find it infeasible, I would suggest CCG3/CCG4.

Regards,

Rajath

View solution in original post

0 Likes
Reply
8 Replies
Sananya_14
Moderator
Moderator

Hi Al Hopfer,

The ARM Processor is present to manage and control USB functions in CCG3PA but you could add your custom code as well. Could you please let us know what kind of program you would like to run?

Best Regards,

Sananya

0 Likes
Reply
AlHo_4624316
New Contributor

Hi Sananya,

Thank you very much for your reply. 

The program will manage a Smart Battery Pack

4S9P 17.2 volt system (36-cells) at 7 AmpsThe pack is flexible and water proof

Software to manage:

All communications external and internal are SMBus 1.2 (I2C)

LCD display over I2C 128 x 32 graphics

USB A and USB C - interfaces and charging

T.I. Fuel Gauge I2C with Hardware Cell Balancing

Cell heating embedded trace

All inputs and outputs to the pack will be isolated and enabled or disabled(using an I2C 8-but GPIO device

Dual cell charging ports for the cell pack single discharge for high current devices

Existing system using Microchip 16F1509//

We need I2C port for SMBus network and at least 2 GPIO dedicated

Since adding Cypress USB w/ARM chip we are hoping to replace the Pic with the ARM

If you are saying "adding" does this mean the ARM is required to operate the USB stuff?

If so is the source code available? Or method to treat as a subroutine?

Al

On Wednesday, January 22, 2020, 12:20:18 AM CST, SananyaM_56 <community-manager@cypress.com> wrote:

#yiv8373065569 * #yiv8373065569 a #yiv8373065569 body {font-family:Helvetica, Arial, sans-serif;}#yiv8373065569 #yiv8373065569 h1, #yiv8373065569 h2, #yiv8373065569 h3, #yiv8373065569 h4, #yiv8373065569 h5, #yiv8373065569 h6, #yiv8373065569 p, #yiv8373065569 hr {}#yiv8373065569 .yiv8373065569button td {}

|

Cypress Developer Community

|

CYPD 3171-24LQXQ

reply from SananyaM_56 in EZ-PD Type-C USB - View the full discussion

Hi Al Hopfer,

 

The ARM Processor is present to manage and control USB functions in CCG3PA but you could add your custom code as well. Could you please let us know what kind of program you would like to run?

 

Best Regards,

Sananya

Reply to this message by replying to this email, or go to the message on Cypress Developer Community

Start a new discussion in EZ-PD Type-C USB by email or at Cypress Developer Community

Following CYPD 3171-24LQXQ in these streams: Inbox

This email was sent by Cypress Developer Community because you are a registered user.

You may unsubscribe instantly from Cypress Developer Community, or adjust email frequency in your email preferences

0 Likes
Reply
AlHo_4624316
New Contributor

Hi Sananya,

Also:

Since the CCG3PA and it's ARM processor is being used to control USB functions and I can add custom code as well--

1. What area of the Flash is available, is there a memory map?

2. Are the USB functions used how does custom code and USB functions work together? Is there an ANxxxx release as a guide?

I will require significant code space for LCD character generation 128x32 graphic and USBus code and several and many

discrete I/O control routines including analog I/O

I have purchased the CY4532 evaluation Kit and the PSoC MiniProg3 Debug Kit

I am on a very tight development schedule - all advice and guidence would be greatly appreciated. I have worked a little with ARM

years ago, but know very little about Cypress.

Thank you

Al Hopfer

0 Likes
Reply
RajathB_01
Moderator
Moderator

Hello Al Hopfer,

The CCG3PA will not support a whole lot of custom code since it has already been optimized and is using flash space north of 95% and the SRAM will be atleast 65% loaded.

For the program you described, I would suggest you to go with a CCG3 / single port CCG4 part. Even then, you will have to be careful about the resources on the SoC, the same ARM that runs your program will also run the state machine for type-c port control and handle protocol layer of the PD communication since they are completely SW implementation. For example when using timers to create a delay extra care is needed to make sure no stack level routines are locked up which will affect the time-sensitive PD protocol messaging. Balancing the resource bandwidth between your program and our USB related code should be an important part of the evaluation.

Regards,

Rajath

0 Likes
Reply
AlHo_4624316
New Contributor

Hi Rajath,

Thank you for the response.

We do not intend to use the Evaluation Kit but only the CYPD3171-24LQXQ chipto support 1-port of a USB-C and 1-port of a USB-A and support IC's.

Will this still use 95% of the Flash space and require the care you described?

AL HopferSoftware Engineer

On Tuesday, January 28, 2020, 12:45:39 AM CST, RajathB_01 <community-manager@cypress.com> wrote:

#yiv6663959357 * #yiv6663959357 a #yiv6663959357 body {font-family:Helvetica, Arial, sans-serif;}#yiv6663959357 #yiv6663959357 h1, #yiv6663959357 h2, #yiv6663959357 h3, #yiv6663959357 h4, #yiv6663959357 h5, #yiv6663959357 h6, #yiv6663959357 p, #yiv6663959357 hr {}#yiv6663959357 .yiv6663959357button td {}

|

Cypress Developer Community

|

CYPD 3171-24LQXQ

reply from RajathB_01 in EZ-PD Type-C USB - View the full discussion

Hello Al Hopfer,

 

The CCG3PA will not support a whole lot of custom code since it has already been optimized and is using flash space north of 95% and the SRAM will be atleast 65% loaded.

 

For the program you described, I would suggest you to go with a CCG3 / single port CCG4 part. Even then, you will have to be careful about the resources on the SoC, the same ARM that runs your program will also run the state machine for type-c port control and handle protocol layer of the PD communication since they are completely SW implementation. For example when using timers to create a delay extra care is needed to make sure no stack level routines are locked up which will affect the time-sensitive PD protocol messaging. Balancing the resource bandwidth between your program and our USB related code should be an important part of the evaluation.

 

Regards,

Rajath

Reply to this message by replying to this email, or go to the message on Cypress Developer Community

Start a new discussion in EZ-PD Type-C USB by email or at Cypress Developer Community

Following CYPD 3171-24LQXQ in these streams: Inbox

This email was sent by Cypress Developer Community because you are a registered user.

You may unsubscribe instantly from Cypress Developer Community, or adjust email frequency in your email preferences

0 Likes
Reply
RajathB_01
Moderator
Moderator

Hi,

Albert Hopfer wrote:

We do not intend to use the Evaluation Kit but only the CYPD3171-24LQXQ chipto support 1-port of a USB-C and 1-port of a USB-A and support IC's.

The CCG3PA firmware on the evaluation kit is doing exactly that.

Do you have a rough idea how many GPIO's you will be requiring for your custom implementation?

Also, is there a specific reason CCG3PA was chosen that would make you not like to migrate to another CCGx?

Regards,

Rajath

0 Likes
Reply
AlHo_4624316
New Contributor

Hi Rajath,

Asking because on the CCG3PA kit there are 2-USB and 1 USB mini thinking that additional firmware is required that is not required.

Our Electrical Engineer has picked this CCG but the kit itself is not important just the Arm processor and 1-C and 1-A USB.

We need a minimum of 4-GPIO that 2 of them are the I2C port. We are using an I2C I/O expansion chip for additional I/O

Our design requires a Master I2C I believe the firmware requires a Slave I2C - will this cause conflicts? How should that behandled.

AL Hopfer

On Wednesday, January 29, 2020, 12:49:50 AM CST, RajathB_01 <community-manager@cypress.com> wrote:

#yiv6406386892 * #yiv6406386892 a #yiv6406386892 body {font-family:Helvetica, Arial, sans-serif;}#yiv6406386892 #yiv6406386892 h1, #yiv6406386892 h2, #yiv6406386892 h3, #yiv6406386892 h4, #yiv6406386892 h5, #yiv6406386892 h6, #yiv6406386892 p, #yiv6406386892 hr {}#yiv6406386892 .yiv6406386892button td {}

|

Cypress Developer Community

|

CYPD 3171-24LQXQ

reply from RajathB_01 in EZ-PD Type-C USB - View the full discussion

Hi,

0 Likes
Reply
RajathB_01
Moderator
Moderator

Hi Al Hopfer,

No, the USB-mini is not handled by CCG3PA. So the necessary part of the firmware itself occupies atleast 90% code space.

I am afraid you will not have enough GPIO's and on chip resources for your implementation.

If you want to check, please download the EZ-PD CCGx Power SDK and try adding your customization in the EZ-PD CCGx Power SDK\CCGx\Firmware\projects\CYPD3171-24LQXQ_pb project and try building it.

If you find it infeasible, I would suggest CCG3/CCG4.

Regards,

Rajath

View solution in original post

0 Likes
Reply