IMC101 script registers always reading as zero through user UART

Announcements

From sunburn to sun earn – we’ve got the power! Watch our #poweringgreen videos now.

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

cross mob
davisonInfineon
Level 2
Level 2
First like received First solution authored 10 sign-ins

I am attempting to read some of my script registers through the user UART interface (UART1). I am using the address given to me by the MCEWizard compiled .ldf file for my script register (see screenshot below). All other read register commands for different registers (example: MOTOR_CURRENT register, app id = 1, address = 154) work properly and I can receive a non-zero result from them. When I try to read the value of my script registers (example TrqBoost_L register, app id = 4, address = 130), they always read as zero, no matter what. I know that the register contents are not ACTUALLY zero because I can read them through MCEDesigner, and they read as what I expect (non-zero value). Can someone help me with this?

davisonInfineon_0-1664390163602.png

 

0 Likes
1 Solution

Hi @davisonInfineon,

Sorry for the confusion. The variable ID shown in the ldf file is already shifted by 128 for the convenience of MCEDesigner to show their values. Their actual ID start from 2. When accessing these variables from using USER UART protocol commands, please subtract the ID values as shown in ldf file by 128.

 

Thanks,

Krupashankar

 

View solution in original post

0 Likes
5 Replies
Krupashankar
Moderator
Moderator
Moderator
500 replies posted 50 likes received 25 likes received

Hi @davisonInfineon,

When I try to read the value of my script registers (example TrqBoost_L register, app id = 4, address = 130), 

Can you please confirm if the APP id is 4 as you have used APP id 1 in previous case of reading  MOTOR_CURRENT register and here you have used APP ID 4 in reading the script variables.

Please make sure if the checksum calculation is done correctly in USER UART command  and modified script is programmed is the iMOTION controller.

 

Thanks,

Krupashankar

 

0 Likes
davisonInfineon
Level 2
Level 2
First like received First solution authored 10 sign-ins

Yes I can confirm that APP ID 4 is being used for script variables, as is explained in the software reference manual:

davisonInfineon_0-1664462336172.png

I am sure that my checksum is working properly because all other messages sent to the IMC101 are being received properly. Additionally, I know the checksum is correct because the IMC101 does give a response message back for the requested "read register" command for script register and app id 4.

0 Likes
davisonInfineon
Level 2
Level 2
First like received First solution authored 10 sign-ins

@Krupashankar Do you have any ideas?

0 Likes

Hi @davisonInfineon,

Sorry for the confusion. The variable ID shown in the ldf file is already shifted by 128 for the convenience of MCEDesigner to show their values. Their actual ID start from 2. When accessing these variables from using USER UART protocol commands, please subtract the ID values as shown in ldf file by 128.

 

Thanks,

Krupashankar

 

0 Likes
davisonInfineon
Level 2
Level 2
First like received First solution authored 10 sign-ins

Thank you @Krupashankar ! This should be updated on the software reference manual.

0 Likes