1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/drivers/sx1280/include/sx1280_constants.h
2022-05-18 17:06:12 +02:00

76 lines
2.0 KiB
C

/*
* Copyright (C) 2022 Inria
* Copyright (C) 2020-2022 Université Grenoble Alpes
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
* directory for more details.
*/
/**
* @ingroup drivers_sx1280
* @{
*
* @file
* @brief Internal addresses, registers and constants
*
* @author Aymeric Brochier <aymeric.brochier@univ-grenoble-alpes.fr>
*
*/
#ifndef SX1280_CONSTANTS_H
#define SX1280_CONSTANTS_H
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief SX1280 Single RX mode.
*
* sx1280_set_rx constant to be in single mode
*
* There is a known issue about this in some circonstances described in section 16.1 of the datasheet:
* https://manualzz.com/doc/55353537/semtech-sx1280-2.4-ghz-transceiver-datasheet
*
* When subjected to a high co-channel traffic conditions
* (for example in BLE mode when the SX1280 receives more than 220 packets per second)
* and only when configured in continuous receiver
* The SX1280 busy line will remain high and the radio unresponsive.
*
* If the radio may be subject to high levels of BLE traffic, to allow the radio to remain in operation RX single mode must be used
*/
#define SX1280_RX_SINGLE_MODE 0x0000
/**
* @brief SX1280 Continuous RX mode.
*
* @note This addresses a known issue detailed in section 16.1 of the datasheet, see
* @ref SX1280_RX_SINGLE_MODE for more details.
*
* sx1280_set_rx require this constant to be in continuous mode
*
*/
#define SX1280_RX_CONTINUOUS_MODE 0xFFFF
/**
* @brief SX1280 wakeup time in ms
* @note From the datasheet wakeup time is usually 1200us but rounded up to 2 to only use the ZTIMER_MSEC
*
*/
#define SX1280_WAKEUP_TIME_MS 2
/**
* @brief SX1280 reset time in ms
* hold NRST pin low for 1ms, nothing is specified in the datasheet, 1ms worked fine
*
*/
#define SX1280_RESET_MS 1
#ifdef __cplusplus
}
#endif
#endif /* SX1280_CONSTANTS_H */
/** @} */