tinygo.org/x/drivers@v0.27.1-0.20240509133757-7dbca2a54349/sx127x/registers.go (about) 1 package sx127x 2 3 const ( 4 // registers 5 SX127X_REG_FIFO = 0x00 6 SX127X_REG_OP_MODE = 0x01 7 SX127X_REG_FRF_MSB = 0x06 8 SX127X_REG_FRF_MID = 0x07 9 SX127X_REG_FRF_LSB = 0x08 10 SX127X_REG_PA_CONFIG = 0x09 11 SX127X_REG_PA_RAMP = 0x0a 12 SX127X_REG_OCP = 0x0b 13 SX127X_REG_LNA = 0x0c 14 SX127X_REG_FIFO_ADDR_PTR = 0x0d 15 SX127X_REG_FIFO_TX_BASE_ADDR = 0x0e 16 SX127X_REG_FIFO_RX_BASE_ADDR = 0x0f 17 SX127X_REG_FIFO_RX_CURRENT_ADDR = 0x10 18 SX127X_REG_IRQ_FLAGS_MASK = 0x11 19 SX127X_REG_IRQ_FLAGS = 0x12 20 SX127X_REG_RX_NB_BYTES = 0x13 21 SX127X_REG_PKT_SNR_VALUE = 0x19 22 SX127X_REG_PKT_RSSI_VALUE = 0x1a 23 SX127X_REG_RSSI_VALUE = 0x1b 24 SX127X_REG_MODEM_CONFIG_1 = 0x1d 25 SX127X_REG_MODEM_CONFIG_2 = 0x1e 26 SX127X_REG_SYMB_TIMEOUT_LSB = 0x1f 27 SX127X_REG_PREAMBLE_MSB = 0x20 28 SX127X_REG_PREAMBLE_LSB = 0x21 29 SX127X_REG_PAYLOAD_LENGTH = 0x22 30 SX127X_REG_MAX_PAYLOAD_LENGTH = 0x23 31 SX127X_REG_HOP_PERIOD = 0x24 32 SX127X_REG_MODEM_CONFIG_3 = 0x26 33 SX127X_REG_FREQ_ERROR_MSB = 0x28 34 SX127X_REG_FREQ_ERROR_MID = 0x29 35 SX127X_REG_FREQ_ERROR_LSB = 0x2a 36 SX127X_REG_RSSI_WIDEBAND = 0x2c 37 SX127X_REG_DETECTION_OPTIMIZE = 0x31 38 SX127X_REG_INVERTIQ = 0x33 39 SX127X_REG_DETECTION_THRESHOLD = 0x37 40 SX127X_REG_SYNC_WORD = 0x39 41 SX127X_REG_INVERTIQ2 = 0x3b 42 SX127X_REG_DIO_MAPPING_1 = 0x40 43 SX127X_REG_DIO_MAPPING_2 = 0x41 44 SX127X_REG_VERSION = 0x42 45 SX127X_REG_PA_DAC = 0x4d 46 // PA config 47 SX127X_PA_BOOST = 0x80 48 49 // Bits masking the corresponding IRQs from the radio 50 SX127X_IRQ_LORA_RXTOUT_MASK = uint8(0x80) 51 SX127X_IRQ_LORA_RXDONE_MASK = uint8(0x40) 52 SX127X_IRQ_LORA_CRCERR_MASK = uint8(0x20) 53 SX127X_IRQ_LORA_HEADER_MASK = uint8(0x10) 54 SX127X_IRQ_LORA_TXDONE_MASK = uint8(0x08) 55 SX127X_IRQ_LORA_CDDONE_MASK = uint8(0x04) 56 SX127X_IRQ_LORA_FHSSCH_MASK = uint8(0x02) 57 SX127X_IRQ_LORA_CDDETD_MASK = uint8(0x01) 58 59 // DIO function mappings D0D1D2D3 60 SX127X_MAP_DIO0_LORA_RXDONE = uint8(0x00) // 00------ 61 SX127X_MAP_DIO0_LORA_TXDONE = uint8(0x40) // 01------ 62 SX127X_MAP_DIO1_LORA_RXTOUT = uint8(0x00) // --00---- 63 SX127X_MAP_DIO1_LORA_NOP = uint8(0x30) // --11---- 64 SX127X_MAP_DIO2_LORA_NOP = uint8(0xC0) // ----11-- 65 66 SX127X_PAYLOAD_LENGTH = uint8(0x40) 67 68 // Low Noise Amp 69 SX127X_LNA_MAX_GAIN = uint8(0x23) 70 SX127X_LNA_OFF_GAIN = uint8(0x00) 71 SX127X_LNA_LOW_GAIN = uint8(0x20) 72 73 // Bandwidth 74 SX127X_LORA_BW_7_8 = uint8(0x00) 75 SX127X_LORA_BW_10_4 = uint8(0x01) 76 SX127X_LORA_BW_15_6 = uint8(0x02) 77 SX127X_LORA_BW_20_8 = uint8(0x03) 78 SX127X_LORA_BW_31_25 = uint8(0x04) 79 SX127X_LORA_BW_41_7 = uint8(0x05) 80 SX127X_LORA_BW_62_5 = uint8(0x06) 81 SX127X_LORA_BW_125_0 = uint8(0x07) 82 SX127X_LORA_BW_250_0 = uint8(0x08) 83 SX127X_LORA_BW_500_0 = uint8(0x09) 84 // Automatic gain control 85 SX127X_AGC_AUTO_OFF = uint8(0x00) 86 SX127X_AGC_AUTO_ON = uint8(0x01) 87 // Operation modes 88 SX127X_OPMODE_LORA = uint8(0x80) 89 SX127X_OPMODE_MASK = uint8(0x07) 90 SX127X_OPMODE_SLEEP = uint8(0x00) 91 SX127X_OPMODE_STANDBY = uint8(0x01) 92 SX127X_OPMODE_FSTX = uint8(0x02) 93 SX127X_OPMODE_TX = uint8(0x03) 94 SX127X_OPMODE_FSRX = uint8(0x04) 95 SX127X_OPMODE_RX = uint8(0x05) 96 SX127X_OPMODE_RX_SINGLE = uint8(0x06) 97 SX127X_OPMODE_CAD = uint8(0x07) 98 99 SX127X_LORA_MAC_PUBLIC_SYNCWORD = 0x34 100 SX127X_LORA_MAC_PRIVATE_SYNCWORD = 0x14 101 )