sx127x_internal.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2016 Unwired Devices <info@unwds.com>
3  * 2017 Inria Chile
4  * 2017 Inria
5  *
6  * This file is subject to the terms and conditions of the GNU Lesser
7  * General Public License v2.1. See the file LICENSE in the top level
8  * directory for more details.
9  */
10 
11 #pragma once
12 
24 #include <inttypes.h>
25 #include "sx127x.h"
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
35 #if defined(MODULE_SX1272)
36 #define SX127X_RSSI_OFFSET (-139)
37 #else /* MODULE_SX1276 */
38 #define SX127X_RSSI_OFFSET_LF (-164)
39 #define SX127X_RSSI_OFFSET_HF (-157)
40 #endif
47 #if defined(MODULE_SX1272)
48 #define SX127X_POR_ACTIVE_LOGIC_LEVEL (1)
49 #else /* MODULE_SX1276 */
50 #define SX127X_POR_ACTIVE_LOGIC_LEVEL (0)
51 #endif
63 
71 void sx127x_reg_write(const sx127x_t *dev, uint8_t addr, uint8_t data);
72 
81 uint8_t sx127x_reg_read(const sx127x_t *dev, uint8_t addr);
82 
91 void sx127x_reg_write_burst(const sx127x_t *dev, uint8_t addr, uint8_t *buffer,
92  uint8_t size);
93 
102 void sx127x_reg_read_burst(const sx127x_t *dev, uint8_t addr, uint8_t *buffer,
103  uint8_t size);
104 
112 void sx127x_write_fifo(const sx127x_t *dev, uint8_t *buffer, uint8_t size);
113 
121 void sx127x_read_fifo(const sx127x_t *dev, uint8_t *buffer, uint8_t size);
122 
130 int16_t sx127x_read_rssi(const sx127x_t *dev);
131 
132 #if defined(MODULE_SX1276)
141 void sx1276_rx_chain_calibration(sx127x_t *dev);
142 #endif
143 
144 #ifdef __cplusplus
145 }
146 #endif
147 
Adds include for missing inttype definitions.
SX127X device descriptor.
Definition: sx127x.h:239
Public interface for SX127X driver.
uint8_t sx127x_reg_read(const sx127x_t *dev, uint8_t addr)
Reads the radio register at specified address.
int16_t sx127x_read_rssi(const sx127x_t *dev)
Reads the current RSSI value.
void sx127x_reg_write_burst(const sx127x_t *dev, uint8_t addr, uint8_t *buffer, uint8_t size)
Writes multiple radio registers starting at address (burst-mode).
void sx127x_reg_read_burst(const sx127x_t *dev, uint8_t addr, uint8_t *buffer, uint8_t size)
Reads multiple radio registers starting at address.
int sx127x_check_version(const sx127x_t *dev)
Check the transceiver version.
void sx127x_write_fifo(const sx127x_t *dev, uint8_t *buffer, uint8_t size)
Writes the buffer contents to the SX1276 FIFO.
void sx127x_read_fifo(const sx127x_t *dev, uint8_t *buffer, uint8_t size)
Reads the contents of the SX1276 FIFO.
void sx127x_reg_write(const sx127x_t *dev, uint8_t addr, uint8_t data)
Writes the radio register at specified address.