This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

What is the use RDYN and REQN lines

I have Olimex Mod-nRF 8001 Module which i bought it from here. It has break out the RDYN,REQN,MISO,MOSI,SCK and reset pins. My question is can i connect RDYN and REQN lines to any Digital IO pin of Arduino Mega? Or should i connect it to any specific pin. Fro example i have used BLE Shield V2.0 from Red bear labs and there i connected RDYN and REQN to 8&9 pins of mega board. What is the use of reset line in nrf 8001? Should it be connected to any pin on Mega board or it is left unused? Actually i am asking these questions because when i connected RDYN & REQN pins from this(Olimex) module to 8&9 pins of mega board and MISO,MOSi & SCK pins of the module to respective lines on ICSP header and left Active and Reset pins of the module UNUSED(not connected to any pin on Mega board) and then uploaded the sample program provided by Nordic in their BLE Arduino SDK like ble_uart_project.ino in Arduino mega the device does not start advertising and when i tried to trace it i found nrf 8001 is not setup as do_aci_setup(&aci_state) is not returning ACI_STATUS_TRANSACTION_COMPLETE and i am getting Error in ACI Setup on Serial Monitor?

I even used the programs give by Red Bear labs but still the 8001 is not setting Up.Can any one help me in this? Just tell me is it necessary to connect the Reset pin from this module to any pin on Arduino Mega? And which pins of Arduino Mega should i use to connect RDYN & REQN pins of this module? And does this module from Olimex using External Oscillator, as i think Red Bear Labs Shield does not use any External Oscillator? Just any one tell me the answer of these questions.

  • From the 8001 datasheet, which can be found here: [i] The RESET line should be held low for a minimum duration of 200 ns for the nRF8001 to reset.[/i] So if this line is floating (not connected), the chip could reset without your knowledge at any time. If you do not intend to use it, connect it to VCC, or use a pull-up to VCC and connect it to your application controller if you want to be able to reset the chip.

    Also, from the datasheet http://i.imgur.com/ojcirUe.png

    Connect accordingly...

    EDIT: For these functionalities you could use any pin you have control over. You only need to be able to read the RDYN line and set the REQN (and RESET) line

  • Thanks for the reply. Ok it means i can connect any Digital IO pin to RDYN and REQN. But where to connect the Reset line it is still not clear? Should i connect the reset line of the Olimex Module to any digital IO of Arduino Mega board or directly to the reset pin that is on the Mega board. Can you send me the complete project can make this module start advertising? That will be a great help indeed.

    Actually i don't know if i connect Reset line of Olimex module to digital IO then what changes i have to make in the code. Thats why i am asking for code. Any help is appreciated over this.

  • I have never done any projects with this, nor with Arduino in general so I don't have a full writeup for you. What exactly in unclear about the reset pin? Is it the datasheet you not fully understand? Do you know the concept of pull-up/down resistors? The reset pin of the Mega is used for resetting the Mega only. The reset pin of the 8001 is used for resetting the 8001. If they have the same polarity on active state, sure you could connect them together and then to a button.

  • The concept of pull-up/down resistors is not completely clear. Can you explain it? How to check they if have the same polarity on active state or not?

  • I would really advise you to read more on the electric characteristic of your application before diving much further in to the abyss, but I will try and give you a simple introduction. Starting with polarity, a pin with a specific function (like the RESET pin) can either be active when the pin is set high (e.g. >3V) or when it is low (e.g. < 0.2V). In the datasheet, all such pins are active high, unless the name has a horizontal line above it. That line indicates the pin is an active low pin. So, if your reset pin is active low, it needs to be kept in a high state until you want it to reset, i.e "pull" the pin low. To be able to do both, you need a resistor going from the pin to >3V, e.g VCC of approx 10k (you can play around with this value). This will keep it high since current now will flow through the resistor. When you want to reset the device, you can connect your reset pin to an internal pull-down in you application controller, thus making the reset pin have a lower voltage, or control an transistor to do the job outside the controller. Actually, this could become a very large write up, but I hope you now understand enough to investigate this on your own :) Good luck

Related