Output Pin as Reset, not functional

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

cross mob
Anonymous
Not applicable

Hi,

   

I am a newbie working on PSoC.

   

Something weird happened when I try to run PSoC 4 BLE to control a sensor. The reset pin needs to be as low as ground ordinarily, and goes up and down to send falling edge as RESET signal.I used digital output pin with Strong Drive mode to do this reset job on PSoC 4 pioneer KIT, and it works very well;

   

However, when I tried to use the exact same codes on PSoC 4 BLE KIT, the reset pin is not able to be as low as ground ( not 0 ).

   

Only High Impedance Digital/Analog mode could be written "0"; however, under those two High Impedance mode, the falling edge control does not work.

   

Could anyone tell me what can I do with the weird PSoC 4 BLE KIT?

   

Thank you!

0 Likes
1 Solution
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

You did not tell which pin you are using for the sensor's reset. And: Did you try to use "open drain drives low"?

   

Can you post your complete project, so that we all can have a look at all of your settings? To do so, use
Creator->File->Create Workspace Bundle (minimal)
and attach the resulting file.

   

 

   

Bob

View solution in original post

0 Likes
11 Replies
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

You did not tell which pin you are using for the sensor's reset. And: Did you try to use "open drain drives low"?

   

Can you post your complete project, so that we all can have a look at all of your settings? To do so, use
Creator->File->Create Workspace Bundle (minimal)
and attach the resulting file.

   

 

   

Bob

0 Likes
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

Hi Bob,

   

I tried almost every pin I could use, and every mode include "open drain drives low".

   

"open drain drives low" mode, same with High Impedance Digital/analog, could be written successfully zero, but those High Impedance modes could not act as a falling edge to help me send reset signal. (I am not sure why)

   

Here attached my codes, please have a look

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Code seems to be ok. Have you got a link to the sensor's datasheet?

   

 

   

Bob

0 Likes
Anonymous
Not applicable

Hi Bob,

   

Here is the link to the datasheet of that sensor.

   

http://people.ece.cornell.edu/land/courses/ece4760/FinalProjects/s2009/ncr6_wjw27/ncr6_wjw27/docs/ad...

   

Actually, the exact same code could work on Arduino, SparkFun SPI shortcut, and PSoC 4 very well; I have no idea what's wrong with the GPIO on the PSoC 4 BLE KIT that, the reset pin cannot hold the two functions, to be low ordinarily and act falling edge when needed, at the time.

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Are you using a different supply voltage on your BLE? Did you disable the DeepSleep functionality on BLE?

   

The datasheet tells: Low input voltage is 0.8V can you check the common ground for displacement.

   

 

   

Bob

0 Likes
Anonymous
Not applicable

Hi Bob,

   

I am using USB cable as power supply right now. I am not sure how to disable the DeepSleep functionality on BLE.

   

I will get a volts meter to test the ground and reset pin tomorrow.

   

BTW, I am designing a small PCB board to supply the BLE module, could you please give me some suggestion?

   

I am not sure 3.3V or 5V would be better for VDDD of the PSoC module power supply.

   

Thank you!

   

And

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Batt powered would use 3.3V. No need to build a PCB, there is already a module available which is very small. You will probably need a KitProg or a MiniProg3 to program that chip.

   

When you are using one of the BLE examples which you modified there should be a #define for allowdeepsleep or something similar.

   

 

   

Bob

0 Likes
Anonymous
Not applicable

Hi Bob,

   

My PCB is to replace the PSoC 4 pioneer baseboard, power the module and hardwire the module and the sensor easily.

   

I am not sure which voltage should I use to supply the module, 5V or 3.3V?

   

Sorry I don't understand anything about deepsleep. You got my codes, could you please tell me how should I fix the reset pin?

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Would be easier to use 3.3V.

   

I checked your project - No deep sleep.

   

I think you need to make some measures preferably with a scope and logic analyzer.

   

 

   

Bob

0 Likes
Anonymous
Not applicable

Based on the result, I am pretty sure that, the GPIO modes work for the reset functions on BLE module fail on either being as low as ground, or acting a falling edge signal.

   

Even if I got the scope, how could I fix it? (The same codes work perfect on the PSoC 4)

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

This is not a matter of code. IO-pins are a very simple thing and they usually work if not damaged. And they are quite the same throughout the PSoC4 family. So when it does not work you will have an electrical bug in your actual design/wiring. This you will have to search for and find. With a scope you will be able to verify your voltage levels and the timing and you may even compare that to the running hardware.

   

 

   

Bob