Could be a silly question, but where are you measuring the current draw from and how are you measuring? Are you maybe measuring the current drawn by the attached KitProg on top of the current drawn by the PSoC IC?
Actually, I separated the KitProg from the target board and use the KitProg as power supply for the PSoC and I measured the current draws by the PSoC board.
Can you attach your project/source code for entering sleep mode?
Project > Archive Workspace/Project > Minimal
Make sure "Compress Archive (zip)" is checked. It will create a nice little zip file you can attach to a post.
This would also probably be a worthwhile read to make sure you're entering sleep as intended. There's also some example projects to demonstrate, but they would probably need to be modified for your kit.
I am pretty sure with the source code that I used. Here is the part that I put the PSoC into sleep mode. I use SleepTimer and PICU to wake it up. I have notice the current consumption different between active and sleep mode. However, the current can never reach several uA.
GND_DR |= GND_MASK;
CyPmSleep(PM_SLEEP_TIME_NONE, PM_SLEEP_SRC_PICU | PM_SLEEP_SRC_CTW);
Also, I have test the sleep mode with a blank project, the result is the same with 1mA sleep current.
A miracle happened.
After breaking the target board from the KitProg, I used the male header to connect the Kitprog and the board to program it.
As I expose the SWD interface, when I touch my finger to pin SWDIO, the current consumption suddenly drop to around 50uA.
Then I tried to pull down pin SWDIO using a wire. The desired sleep current was matched. Unfortunately, the board was not programmable as the SWD cannot be used. Instead of the wire, I used a 100k resistor and it worked like a charm.
Now, I am able to program the board and get the current I need.
However, I am looking for the explanation.