cancel
Showing results for 
Search instead for 
Did you mean: 

PSoC 4 MCU

Matt0815
New Contributor

Hi,

I have been trying to use different motors with the CY8CKIT-037 (PSoC Creator 4.4).

Everything worked nicely at first with the supplied motor. Afterwards I tried to adapt the program to a different motor by modifying motor.c . That lead to a blinking LED2 and no matter what I changed I could not get it to work.

I then tried to go back to the supplied motor. However, I get the same result. I started from scratch as descibed in the user guide. As soon as I plug in USB to power the system up I get a blinking LED2.

When I use the debugging function of PSoC Creator I get
"The target program has stopped at: file: main.c line: 50 function: main address: 0x0000035A",
which refers to "uint8 HallReader =0;". That makes no sense to me as it is just a definition of a variable.

Is there a way to figure out what the problem might be?

0 Likes
5 Replies
Vasanth
Moderator
Moderator

Hi,

 If the motor does not rotate and you observe LED2 blinking, it indicates that an error has occurred. If so, ensure that step 1 through step 5(mentioned in the documentation like jumpers connected as expected, device powered as expected, connection to motor is proper, and device is programmed properly) have been executed correctly. Then press the Reset button and press the SW2 button again. If LED2 still blinks, there must be a problem in the hardware or software.

Also could you let us know the specifications of the new motor and whether that match with the current motor being used ?

Best Regards,
Vasanth

0 Likes
Matt0815
New Contributor

Hi Vasanth,

like I wrote above, I follow the steps 1 -5 again with the original motor after I could not get the other motor (Faulhaber 3564) to work.

So the question was how to figure out whether it is a hardware or software issue (and ideally how to fix it).

Best regards,
Matt

0 Likes
Matt0815
New Contributor

No further advice?

0 Likes
Vasanth
Moderator
Moderator

Hi Matt,

 There are 3 main reasons: over or low bus voltage, over current, and wrong winding sequence.
For sensored BLDC example project for instance, please follow below steps to debug the motor:
1. confirm the winding sequence is: A-Red, B-Yellow, C-Black.
2. Open "main.c", and comment below statement:
/* Measure bus voltage */
VoltageCheck();

This will ignore the over or low bus voltage faults. Reprogram and check whether its working.

 

Kindly check if any of this resolves the issue.

Best Regards,

Vasanth

0 Likes
Matt0815
New Contributor

Hi Vasanth,

Thanks for your reply.
1. I can confirm the winding sequence to be correct.
2. With "VoltageCheck();" commented out LED2 is not blinking any more. However, the motor is still not rotating (I guess that is to be expected, if there is a wrong voltage?).

When removing the comment everything is back to the way it was before (blinking LED2).

Concerning voltage:
LED1 is on, jumper J9 on CY8CKIT-042 set to 5V, jumper J13-J24 on CY8CKIT-037 set correctly for "hall sensor BLDC", 24V 2A power supply connected to CY8CKIT-037.

When measuring voltage at the test points I get:
Vin = 24.22 V, +12V = 12.33 V, VDD = 4.92 V.

What am I missing?

Best regards,

  Matt

0 Likes