TruePatrick:
Can we assume that the NRF module is broken?
The only way to be sure is to try another nRF24 module in its place - it's much less likely that two of them would be broken.
I had to because, the program was in the setup function which is performed only one time, and I don't have time to open serial comunication to take a look at the results. I don't know any other way.
You always find something you don't know, I guess;)
raymw:
But, you really should, start from the beginning again, with getting Robin's exact code working. By 'exact code', I mean cut and paste it. But, it may not be too easy with those particular nrf units.
You're right. I'll check on your code and try to work on it. Thanks!
Today's my birthday and I feel more like it to work on this matter. I have an idea to work on, but I need your help.
I have some leftovers of HT7333 modules, which regulate the voltage from 5V to 3.3V. People use them with NRF modules. Can this one work? Here's the scheme.
I can build this using protoboard and some soldering skills. Surely, I am certified IPC specialist;))
(I think I will go buy some capacitors 10/100uF, because I think mine is broken - I found out about that building simple system with led which should fade but does not, when the main battery is off)
TruePatrick:
but I need your help.
I have some leftovers of HT7333 modules, which regulate the voltage from 5V to 3.3V
If I have read it correctly the datasheet says that their max output current is 150mA. That may be on the low side. I have used LD1117 / LD33 regulators which have a max output of 800mA.
Robin2:
If I have read it correctly the datasheet says that their max output current is 150mA.
Found HT7333 documentation. Max output 250mA.
According to this site,Receive Mode Current(peak): 45mA. Also, I think that the modules will operate at LOW_POWER settings, because I will use this car only at home (At least for now. Max few meters away). Should I give it a try and start soldering?
But anyway, I need to buy new capacitors. May take me few days.
Quick edit. The controler that I've built, using this tutorial uses this HT7333 transistor as power regulator for nrf, so I think the person that designed it was not wrong.
iI you are buying stuff, happy birthday, btw, and if you intend future projects, then get at least a few of the nrf modules with the pcb antenna, and a couple of adapters. e.g. adapters - any like this
(not necessarily from those suppliers) I found that the longer range nrf's with external aerials, as I've said before, do not work well at short range.
The adapters make it much easier/reliable for breadboard experimentation, and can be dispensed with in the final pcb. You can then test out Robin's software without having to be concerned with distance, aerial orientation, voltage regulators, etc.
The smaller nrf units work fine within a few inches of each other, or much more, the other more powerful nrf units do not, in my experience. Then, try it with your more powerful nrf's, see if there is a benefit in your application, etc, etc.
This guy got NRF24 with antennas, and managed to get to communicate them less then meter away:< I see that he's using this adapters that you've mentioned about.
My plan is as follows:
-buy new capacitors: 10/100uF (but what voltage, previously I got 25V, the circuit operates at 6-10V. Does the voltage matter as long as it is above 10V?)
-buy NRF24 short range (without antenna). In case of this one is broken. Can this short range module communicate with long range?
-buy 1 adapter for the receiver. I can not use adapter for the transmiter, because there's no room on the controller to fit it. 2 Capacitor should do a thing.
I guess It should be all right. Will talk to you in 2 days or less. Thank you that you're with me.
if you are using the adapters, you won't need the capacitors, but the voltage you quoted should be OK. I hope you don't buy only one of the small nrf24, or one of the adapters. The idea is that you make up a Tx and an Rx unit as specified by Robin, and test out his software. Once you/we are happy that is working, then try the longer range units - they will just plug in, no software changes necessary. Move 'em around a bit, adjust aerial angles, etc. Then, you know you've a working system, and components, Then piece by piece fit/change it to suit your application. It would be nice if you didn't have to dismantle the test set up.
A nice video you linked to, but ignore it for the time being. I'm not sure what he meant by it working, I heard no buzzer. I'm not saying the long range units do not work if close to each other, but not reliably. It depends on many things. The units you will be buying will work at close range, and certainly will be OK in your car if in same room. Once the test is working you can dispense with the adapter, most likely power via the arduino. I explained that in my post #19, above. wrt the way that worked for me, (it also mentioned that the more and less powerful units work together) it was a 'work towards' result, making small changes on the way, and testing each step. (but you can do it better with your 3.3V voltage regs...)
It took me a while. But my days seems brighter as things start to work.
I corrected the soldering for the transmitter board
I run a scanner code (from the sketch of the nrf24 library), which basically check all the channels(frequencies) if there is a interference with wi-fi etc.
Here are results: (After a while there were only 0)
CheckConnection Starting
FIRST WITH THE DEFAULT ADDRESSES after power on
Note that RF24 does NOT reset when Arduino resets - only when power is removed
If the numbers are mostly 0x00 or 0xff it means that the Arduino is not
communicating with the nRF24
STATUS = 0x0e RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0
RX_ADDR_P0-1 = 0x3130303030 0x4141417852
RX_ADDR_P2-5 = 0xc3 0xc4 0xc5 0xc6
TX_ADDR = 0xe7e7e7e7e7
RX_PW_P0-6 = 0x20 0x20 0x00 0x00 0x00 0x00
EN_AA = 0x00
EN_RXADDR = 0x03
RF_CH = 0x4c
RF_SETUP = 0x03
CONFIG = 0x0e
DYNPD/FEATURE = 0x00 0x00
Data Rate = 1MBPS
Model = nRF24L01+
CRC Length = 16 bits
PA Power = PA_LOW
AND NOW WITH ADDRESS AAAxR 0x41 41 41 78 52 ON P1
and 250KBPS data rate
STATUS = 0x0e RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0
RX_ADDR_P0-1 = 0x3130303030 0x4141417852
RX_ADDR_P2-5 = 0xc3 0xc4 0xc5 0xc6
TX_ADDR = 0xe7e7e7e7e7
RX_PW_P0-6 = 0x20 0x20 0x00 0x00 0x00 0x00
EN_AA = 0x00
EN_RXADDR = 0x03
RF_CH = 0x4c
RF_SETUP = 0x23
CONFIG = 0x0e
DYNPD/FEATURE = 0x00 0x00
Data Rate = 250KBPS
Model = nRF24L01+
CRC Length = 16 bits
PA Power = PA_LOW
Transmiter - NRF (long range) without adapter
CheckConnection Starting
FIRST WITH THE DEFAULT ADDRESSES after power on
0⸮Note that RF24 does NOT reset when Arduino resets - only when power is removed
08If the numbers are mostly 0x00 or 0xff it means that the Arduino is not
0⸮⸮communicating with the nRF24
STATUS 8= 0x0e RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0
RX_ADDR_P0-1 0= 0xe7e7e7e7e7 0x4141417852
RX_ADDR_P2-5 ⸮O⸮⸮ 0xc4 0xc5 0xc6
TX_ADDR 8= 8xe7e7e7e7e7
RX_PW_P0-6 0= 0x00 8x20 8x000⸮⸮008x00⸮⸮⸮0
EN_AA 8= 0x3f
EN_RXADDR 0= 0x03
RF_CH 8= ⸮⸮c
RF_SETUP 8= ⸮⸮7
CONFIG ⸮O⸮x0e
DYNPD/FEATURE 8= 0x00 8x00
Data Rate 0= 1MBPS
Model 8= nRF24L01+
CRC Length ⸮O⸮⸮⸮⸮⸮5
PA0⸮⸮⸮% = PA_MAX
AND NOW WITH ADDRESS AAAxR ⸮⸮⸮1 41 41 78 52 8\⸮
⸮⸮
0and 250KBPS data rate
STATUS ⸮O⸮x0e RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0
RX_ADDR_P0-1 0= 8xe7e7e7e7e7 0x4141417852
RX_ADDR_P2-5 0= 0xc3 ⸮⸮⸮ ⸮⸮⸮ 0xc6
TX_ADDR 8= 0xe7e7e7e7e7
RX_PW_P0-6 ⸮O⸮⸮⸮0 8x20 8x00 8x00 8x00 8x00
EN_AA 8= ⸮⸮f
EN_RXADDR 8= 0x03
RF_CH 8= 0x4c
RF_SETUP 0= 0x27
CONFIG 8= 0x0e
DYNPD/FEATURE 0= 0x00 8x00
Data Rate 0= 250KBPS
Model 8= nRF24L01+
CRC Length ⸮O⸮⸮⸮⸮⸮5
PA0Xower = ⸮P⸮a5
I think, It indicates that there's something wrong with the transmiter. I tried thinking of many ways. Here are my 2 thoughts:
There can/can't be a problem with the connection. NRF have 7 connected pins. I used multimeter for each of them to check connections with arduino pro mini module. There were a positive results for every single of them. There were no overlaps in connection, only 1 to 1
Problem may lay in terms of the connecting module to the PC
LOOK UPPER LEFT CORNER
There are 5 pins to upload the code to the arduino using USBasp programmer. When I normaly, upload the code, I use all 5 pins. When the code includes Serial.print command, I disconnect VCC and GND pin, and switch ON external power supply 8V for the arduino. For that the module gets full 3,3V power and can work "properly", and the arduino can still send signal through UART.
Why are there all the garbage characters in the "long range" connection test? I would not be happy with even one of them.
There are 5 pins to upload the code to the arduino using USBasp programmer. When I normaly, upload the code, I use all 5 pins. When the code includes Serial.print command, I disconnect VCC and GND pin, and switch ON external power supply 8V for the arduino. For that the module gets full 3,3V power and can work "properly", and the arduino can still send signal through UART.
I don't understand that. You are using your equipment regularly but I am not. You will need to provide a lot more detail.
Robin2:
Why are there all the garbage characters in the "long range" connection test? I would not be happy with even one of them.
Exactly, I have no idea why they appear.
Robin2:
I don't understand that. You are using your equipment regularly but I am not. You will need to provide a lot more detail.
Strictly speaking, there's no other way to test If the code is working on the transmiter. NRF module is connected directly to the power supply, not the arduino. Everything seems to be okay with that way.
I'm gonna try once more and then, I'll be replacing NRF module from the transmitter for the new one (short range, but without adapter, because it is impossible to fit one in), It's hard to solder out 8 pins at a time
I have good news. It works, but... in what cost. Here's the story.
On the yesterday's night I wanted to solder out this old NRF module from the transmiter. I completely destroyed 2 pins (copper tracks) on the board, but managed to take it out.
Today I decited to connect another nrf adapter that I bought with wired, directly to the arduino pro mini. It sure looks messy, but I was hoping it would work.
Then I ran simple connection test from the Robin's tutorial and It sure was different then with the old NRF.
After that I ran simple TX RX (from the same tutorial) hoping that this would work. It surely did, I got message that the packets were send. With that I mind I uploaded my code for the transmiter and receiver. I did not work. So I used one line from the Robin's code:
Changed the address of the communication, and It worked as smooth as butter.
here's the video1. video2.
I'm not happy with the results, but hey... It's working.
Thanks you guys for helping me.