drivers/nrf24l01+ : added low-level functions for nrf24l01+ transceiver#1704
Conversation
|
Looking great! Will test soon. |
tests/nrf24l01_test_lowlevel/main.c
Outdated
There was a problem hiding this comment.
I think it might make sense to define these externally in the Makefile.
There was a problem hiding this comment.
Hm, I think the Makefile is maybe not the right place because this seems so unfelxible. Correct me if I'm wrong? A comprise could be the definition of e.g. SPI_PORT, CS_PIN, CE_PIN, IRQ_PIN on top of the script, what do you think?
tests/nrf24l01_test_lowlevel/main.c
Outdated
There was a problem hiding this comment.
Now that you un-disabled auto_init this is unnecessary at best.
|
I addressed your comments @LudwigOrtmann |
|
Travis says: |
drivers/nrf24l01p/nrf24l01p.c
Outdated
There was a problem hiding this comment.
missing newline according to git
|
You still need to either use auto_init OR initialize vtimer (possibly more, didn't look). |
tests/test_spi/main.c
Outdated
|
Could you rebase (now that the SPI driver is merged)? Thx! |
8965047 to
f1d986f
Compare
4106341 to
3034caa
Compare
drivers/include/nrf24l01p.h
Outdated
There was a problem hiding this comment.
Remove the file name, doxygen is better off without it.
|
I deleted a blocking while loop and added a delay for the "on-air" transmission after the transmit command. This managed the hanging state on the arduino-due. Also it turned out, that |
6df720d to
154c4e8
Compare
|
rebased and already squashed |
|
RIOT/drivers/Makefile.include:27: *** missing `endif'. Stop. Da ist dir in der viert letzten Zeile ein |
|
Uuuuups, I corrected this |
|
No problem. Using and a stm32f4discovery and a stm32f0discovery the test application still crashes. I am not sure, but I suspect the SPI driver for the F0. I will run another test using two stm32f4discoverys once I am back in the office... |
|
I once had this setup and it worked. However, I'll also try this in this forenoon. |
f2a26c8 to
0e8bcff
Compare
|
If you look at 0e8bcff I increased a delay value for this code line so the driver also runs on the stm32f0. On the stm32f4 the driver works fine without this change. However, I think we can live with 10 us longer delay and merge this PR but we should be aware that this has nothing to do with #1956 or similar. |
|
Now it works perfectly, very cool! ACK when squashed. |
0946db2 to
d8a26d5
Compare
|
Squashed |
|
and go |
drivers/nrf24l01+ : added low-level functions for nrf24l01+ transceiver
|
Hooray! |
|
Congrats! |
|
:) |
The delays were introduced in an attempt to fix "inexplicable timing errors", although the errors were in the SPI bus driver rather than the nrf24l01p driver. See also: - RIOT-OS#1704 - RIOT-OS#2315 Signed-off-by: Joakim Gebart <[email protected]>
The delays were introduced in an attempt to fix "inexplicable timing errors", although the errors were in the SPI bus driver rather than the nrf24l01p driver. See also: - RIOT-OS#1704 - RIOT-OS#2315 Signed-off-by: Joakim Gebart <[email protected]>
@PeterKietzmann It's been a while - any news? |
|
Unfortunately not. |
This PR contains multiple low-level functions for the nrf24l01+ driver. Maybe some of them seem useless here but these are interesting when it comes to bind the driver to the general network driver interface, which will be part of another PR soon. Furthermore there are some functions on which I'm not sure if they are necessary. Feel free to discuss :-) !
Depends on #1584(merged)