summaryrefslogtreecommitdiffstats
path: root/rf_test
diff options
context:
space:
mode:
authorSadeep Madurange <sadeep@asciimx.com>2024-11-24 12:26:51 +0800
committerSadeep Madurange <sadeep@asciimx.com>2024-11-24 12:26:51 +0800
commit3c4596a68f141383b1b47cfbd6a01e1f3b998a26 (patch)
tree4a0f36127842ab38ca94dae7cfd1d224d2b88ad3 /rf_test
parent8747a5965e9ce87d088f4e3ae4785afba70be08e (diff)
downloadsmart-home-3c4596a68f141383b1b47cfbd6a01e1f3b998a26.tar.gz
Remove address filtering.
Diffstat (limited to 'rf_test')
-rw-r--r--rf_test/rfm.c21
-rw-r--r--rf_test/rfm.h2
2 files changed, 14 insertions, 9 deletions
diff --git a/rf_test/rfm.c b/rf_test/rfm.c
index b190e96..12d1f25 100644
--- a/rf_test/rfm.c
+++ b/rf_test/rfm.c
@@ -11,10 +11,12 @@
#define MISO_PIN PB4
#define SPI_DDR DDRB
-#define RX_MODE 0x10
-#define TX_MODE 0x0C
-#define SLEEP_MODE 0x00
-#define STDBY_MODE 0x04
+// RFM operation modes
+#define RX 0x10
+#define TX 0x0C
+#define SLEEP 0x00
+#define STDBY 0x04
+#define LISTEN_ON 0x40
static inline void spi_init(void)
{
@@ -57,20 +59,19 @@ static inline void set_mode(uint8_t mode)
;
}
-void rfm_init(uint8_t addr)
+void rfm_init(void)
{
spi_init();
- set_mode(STDBY_MODE);
+ set_mode(STDBY | LISTEN_ON);
// rx interrupt on DPIO0
write_reg(0x25, 0x40);
write_reg(0x26, 0x07);
- // packet format: 8 bits + whitening + crc + addr filtering
+ // packet format: 8 bits + whitening + crc
write_reg(0x37, 0x52);
write_reg(0x38, 0x08);
- write_reg(0x38, addr);
// disable encryption
write_reg(0x3D, 0x02);
@@ -98,3 +99,7 @@ void rfm_sendto(uint8_t addr, uint8_t *data, uint8_t n)
while (!((read_reg(0x28) >> 3) & 1))
;
}
+
+void rfm_recvfrom(void)
+{
+}
diff --git a/rf_test/rfm.h b/rf_test/rfm.h
index 467b2cb..8adaf3b 100644
--- a/rf_test/rfm.h
+++ b/rf_test/rfm.h
@@ -3,7 +3,7 @@
#include <stdint.h>
-void rfm_init(uint8_t addr);
+void rfm_init(void);
void rfm_sendto(uint8_t addr, uint8_t *data, uint8_t n);