Nol.A SDK Library 26.11.2
For IoT System Software Development
Loading...
Searching...
No Matches
LoRaMacFrame Class Reference

LoRaWAN frame. More...

#include <LoRaMac.hpp>

Inheritance diagram for LoRaMacFrame:
RadioPacket Printable

Public Types

enum  FrameType_t { UNCONFIRMED , CONFIRMED , MULTICAST , PROPRIETARY }
enum  TxResult_t {
  NOT_STARTED = 0 , SUCCESS = 1 , FAIL_NO_ACK = 2 , FAIL_AIR_BUSY = 3 ,
  FAIL_TX_TIMEOUT = 4
}
Public Types inherited from RadioPacket
enum  Result_t {
  SUCCESS = 0 , FAIL = -1 , NOT_ENOUGH_MEMORY = -2 , CANCELED = -3 ,
  TOO_BIG = -4 , DROPPED = -7 , INVALID_ARGS = -8 , TOO_NOISY = -9 ,
  CHANNEL_BUSY = -10 , INIT = -127
}

Public Member Functions

 LoRaMacFrame (uint16_t sz=0)
size_t printPropertiesTo (Print &) const override
Public Member Functions inherited from RadioPacket
 RadioPacket (uint16_t len=0)
void operator= (const RadioPacket &)
virtual size_t printTo (Print &) const override

Public Attributes

FrameType_t type
 Frame type.
uint8_t port
 Port number.
uint8_t numTrials = 0
 전송 횟수
uint32_t fCnt
 Frame counter.
TxResult_t txResult [8]
 Tx 시도(attempt) 별 Tx 결과
int16_t power
 송신시 사용할 Tx power table index (LoRaMac::MaxTxPower ~ LoRaMac::MinTxPower), 송신 완료 콜백시 출력 세기(단위: dBm) 또는 수신 완료 콜백시 신호 세기(단위: dB)
union { 
   struct { 
      int8_t   snr 
 수신시의 Signal-to-Noise Ratio (SNR)
      Radio::LoRaSF_t   sf 
 송신시 사용할, 또는 수신시 사용된 spreading factor More...
      Radio::LoRaCR_t   cr 
 송신시 또는 수신시 사용된 coding rate More...
      Radio::LoRaBW_t   bw 
 송신시 사용할, 또는 수신시 사용된 bandwidth More...
      Radio::LoRaIQ_t   iq 
 송신시 또는 수신시 사용된 I&Q signal mode More...
   }   LoRa
 modulation 이 Radio::MOD_LORA 인 경우 사용되는 변수
   struct { 
      uint32_t   drBps 
 송신시 또는 수신시 사용된 data rate (단위: bps)
      uint32_t   bwHz 
 송신시 또는 수신시 사용된 bandwidth (단위: Hz)
      uint32_t   fDevHz 
 송신시 또는 수신시 사용된 frequency deviation (단위: Hz)
   }   FSK
 modulation 이 Radio::MOD_FSK 인 경우 사용되는 변수
} meta
 변복조 방식에 대한 속성
Public Attributes inherited from RadioPacket
Result_t result
 송신 또는 수신 패킷 처리 결과
int16_t power
 송신시 사용할 power (단위: dBm) 또는 수신시의 신호 세기 (단위: dB)
uint32_t freq
 송신시 사용할, 또는 수신시 사용된 주파수 (단위: Hz)
int64_t timestamp
 송신시 사용할, 또는 수신시의 타임스탬프
Radio::Modulation_t modulation
 송신시 사용할, 또는 수신시 사용된 변복조 방식
union { 
   struct { 
      int8_t   snr 
 수신시의 Signal-to-Noise Ratio (SNR)
      Radio::LoRaSF_t   sf 
 송신시 사용할, 또는 수신시 사용된 spreading factor
      Radio::LoRaCR_t   cr 
 송신시 사용할, 또는 수신시 사용된 coding rate
      Radio::LoRaBW_t   bw 
 송신시 사용할, 또는 수신시 사용된 bandwidth
      Radio::LoRaIQ_t   iq 
 송신시 사용할, 또는 수신시 사용된 I&Q signal mode
      uint16_t   preambleLength 
      Radio::AutoCRCOption_t   autoCrcOpt 
      Radio::FixedPayloadLengthOption_t   fixedPayloadLengthOpt 
      uint8_t   fixedPayloadLength 
      Radio::RxTimeoutOption_t   rxTimeoutOpt 
      uint16_t   rxTimeout 
   }   LoRa
 modulation 이 Radio::MOD_LORA 인 경우 사용되는 변수
   struct { 
      uint32_t   drBps 
 송신시 사용할, 또는 수신시 사용된 data rate (단위: bps)
      uint32_t   bwHz 
 송신시 사용할, 또는 수신시 사용된 bandwidth (단위: Hz)
      uint32_t   afcBwHz 
      uint32_t   fDevHz 
 송신시 사용할, 또는 수신시 사용된 frequency deviation (단위: Hz)
      uint16_t   preambleLength 
      Radio::AutoCRCOption_t   autoCrcOpt 
      Radio::FixedPayloadLengthOption_t   fixedPayloadLengthOpt 
      uint8_t   fixedPayloadLength 
      Radio::RxTimeoutOption_t   rxTimeoutOpt 
      uint16_t   rxTimeout 
   }   FSK
 modulation 이 Radio::MOD_FSK 인 경우 사용되는 변수
   struct { 
      uint8_t   corr 
 송신시 사용할, 또는 수신시 사용된 correlation
   }   DSSS
 modulation 이 Radio::MOD_DSSS 인 경우 사용되는 변수
} meta
 변복조 방식에 대한 속성
uint16_t len
uint8_t * buf

Detailed Description

Member Enumeration Documentation

◆ FrameType_t

Enumerator
UNCONFIRMED 

Unconfirmed frame

CONFIRMED 

Confirmed frame

MULTICAST 

Multicast frame (downlink only)

PROPRIETARY 

Proprietary frame (special purpose only)

92 {
94 CONFIRMED,
95 MULTICAST,
FrameType_t
Definition LoRaMac.hpp:92
@ MULTICAST
Definition LoRaMac.hpp:95
@ PROPRIETARY
Definition LoRaMac.hpp:96
@ UNCONFIRMED
Definition LoRaMac.hpp:93
@ CONFIRMED
Definition LoRaMac.hpp:94

◆ TxResult_t

Enumerator
NOT_STARTED 

Not started

SUCCESS 

Success

FAIL_NO_ACK 

Failed due to no Ack

FAIL_AIR_BUSY 

Failed due to busy air interface condition

FAIL_TX_TIMEOUT 

Failed due to Tx timeout

123 {
124 NOT_STARTED = 0,
125 SUCCESS = 1,
126 FAIL_NO_ACK = 2,
127 FAIL_AIR_BUSY = 3,
128 FAIL_TX_TIMEOUT = 4,
129 } TxResult_t;
TxResult_t
Definition LoRaMac.hpp:123
@ FAIL_TX_TIMEOUT
Definition LoRaMac.hpp:128
@ NOT_STARTED
Definition LoRaMac.hpp:124
@ FAIL_AIR_BUSY
Definition LoRaMac.hpp:127
@ SUCCESS
Definition LoRaMac.hpp:125
@ FAIL_NO_ACK
Definition LoRaMac.hpp:126

Member Function Documentation

◆ printPropertiesTo()

size_t LoRaMacFrame::printPropertiesTo ( Print & ) const
overridevirtual

Reimplemented from RadioPacket.

Member Data Documentation

◆ bw

◆ cr

Radio::LoRaCR_t LoRaMacFrame::cr

송신시 또는 수신시 사용된 coding rate

이 값은 송신시 사용되지 않습니다.

◆ iq

Radio::LoRaIQ_t LoRaMacFrame::iq

송신시 또는 수신시 사용된 I&Q signal mode

이 값은 송신시 사용되지 않습니다.

◆ [union]

◆ numTrials

◆ power

int16_t LoRaMacFrame::power

송신시 사용할 Tx power table index (LoRaMac::MaxTxPower ~ LoRaMac::MinTxPower), 송신 완료 콜백시 출력 세기(단위: dBm) 또는 수신 완료 콜백시 신호 세기(단위: dB)

LoRaMac::useADR 을 false 로 하면 지정한 Tx power table index 로 해당 프레임에 대한 출력이 설정됩니다. Tx power table 은 LoRaWAN Regional Parameters 문서를 참고하시기 바랍니다. 범위 밖의 값으로 설정된 경우 기본 값(0)으로 설정됩니다.

LoRaMac::onSendDone(), LoRaMac::onReceive() 에서 지정한 콜백함수와 함께 전달된 프레임의 이 변수는 실제 출력(단위: dBm) 또는 신호세기(단위: dB)를 의미합니다.

Examples
feather-m0/AMG88xx_IoT.own/main.cpp, feather-m0/LoRaWAN/main.cpp, feather-m0/TFMini-I2C/main.cpp, feather-m0/UltimateGPS+OLED/main.cpp, nordic-nrf52-dk/LoRaWAN-Class-A/main.cpp, plm100s/LoRaWAN-Class-A/main.cpp, plm100s/PLS100W_AM1005-P-485/main.cpp, plm100s/PLS100W_HRXL-MaxSonar-WR/main.cpp, plm100s/PLS100W_SSD1306-I2C/main.cpp, plm100s/PLS100W_T9602-I2C/main.cpp, plm100s/PLS100W_TFmini-UART/main.cpp, plm100s/veml6030/main.cpp, plm150/LoRaWAN-Class-A/main.cpp, plm150/PLS100W_RD-WSD-M-02/main.cpp, st-nucleo-f429zi/LoRaWAN/main.cpp, and st-nucleo-l152re/LoRaWAN-Class-A/main.cpp.

◆ sf


The documentation for this class was generated from the following file: