SEAN O CONNELL / Mbed 2 deprecated mDot_LoRa_Sensornode

Dependencies:   libmDot mbed-rtos mbed

Fork of mDot_LoRa_Sensornode by Adrian Mitevski

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers LoRaConfig.cpp Source File

LoRaConfig.cpp

00001 /*
00002  * LoRaConfig.cpp
00003  *
00004  *  Created on: Jun 11, 2016
00005  *      Author: Adrian
00006  */
00007 
00008 #include "LoRaConfig.h "
00009 
00010 //LoRaConfig::LoRaConfig(){
00011 //
00012 //}
00013 //
00014 //LoRaConfig::~LoRaConfig(){
00015 //
00016 //}
00017 
00018 void LoRaConfig::build(LORA_MODE desiredMode){
00019     setLORA_MODE(desiredMode);
00020 
00021     switch(desiredMode){
00022 
00023         case LORA_MODE_0_OFF:
00024             setNetworkPublicity(true);
00025             setActivity(false);
00026             setNetworkName(LORA_NETWORK_NAME);
00027             setNetworkPassphrase(LORA_NETWORK_PASSPHRASE);
00028             setFrequencySubBand(LORA_SUBBAND_0);
00029             setSpreadingFactor(LORA_SPREADING_FACTOR_7);
00030             setTxPowerdBm(LORA_TX_POWER_16_DBM);
00031             setAcknowledgeRetries(LORA_ACKNOWLEDGE_RETRIES_1);
00032             break;
00033 
00034         case LORA_MODE_1:
00035             setNetworkPublicity(true);
00036             setActivity(true);
00037             setNetworkName(LORA_NETWORK_NAME);
00038             setNetworkPassphrase(LORA_NETWORK_PASSPHRASE);
00039             setFrequencySubBand(LORA_SUBBAND_0);
00040             setSpreadingFactor(LORA_SPREADING_FACTOR_7);
00041             setTxPowerdBm(LORA_TX_POWER_16_DBM);
00042             setAcknowledgeRetries(LORA_ACKNOWLEDGE_RETRIES_1);
00043             break;
00044 
00045         case LORA_MODE_2:
00046             setNetworkPublicity(true);
00047             setActivity(true);
00048             setNetworkName(LORA_NETWORK_NAME);
00049             setNetworkPassphrase(LORA_NETWORK_PASSPHRASE);
00050             setFrequencySubBand(LORA_SUBBAND_0);
00051             setSpreadingFactor(LORA_SPREADING_FACTOR_12);
00052             setTxPowerdBm(LORA_TX_POWER_16_DBM);
00053             setAcknowledgeRetries(LORA_ACKNOWLEDGE_RETRIES_1);
00054             break;
00055 
00056         case LORA_MODE_3:
00057             setNetworkPublicity(true);
00058             setActivity(true);
00059             setNetworkName(LORA_NETWORK_NAME);
00060             setNetworkPassphrase(LORA_NETWORK_PASSPHRASE);
00061             setFrequencySubBand(LORA_SUBBAND_0);
00062             setSpreadingFactor(LORA_SPREADING_FACTOR_7);
00063             setTxPowerdBm(LORA_TX_POWER_16_DBM);
00064             setAcknowledgeRetries(LORA_ACKNOWLEDGE_RETRIES_1);
00065             break;
00066 
00067         case LORA_MODE_4:
00068             setNetworkPublicity(true);
00069             setActivity(true);
00070             setNetworkName(LORA_NETWORK_NAME);
00071             setNetworkPassphrase(LORA_NETWORK_PASSPHRASE);
00072             setFrequencySubBand(LORA_SUBBAND_0);
00073             setSpreadingFactor(LORA_SPREADING_FACTOR_7);
00074             setTxPowerdBm(LORA_TX_POWER_16_DBM);
00075             setAcknowledgeRetries(LORA_ACKNOWLEDGE_RETRIES_1);
00076             break;
00077 
00078         case LORA_MODE_5:
00079             setNetworkPublicity(true);
00080             setActivity(true);
00081             setNetworkName(LORA_NETWORK_NAME);
00082             setNetworkPassphrase(LORA_NETWORK_PASSPHRASE);
00083             setFrequencySubBand(LORA_SUBBAND_0);
00084             setSpreadingFactor(LORA_SPREADING_FACTOR_7);
00085             setTxPowerdBm(LORA_TX_POWER_20_DBM);
00086             setAcknowledgeRetries(LORA_ACKNOWLEDGE_RETRIES_1);
00087             break;
00088 
00089         default:
00090             setNetworkPublicity(true);
00091             setActivity(false);
00092             setNetworkName(LORA_NETWORK_NAME);
00093             setNetworkPassphrase(LORA_NETWORK_PASSPHRASE);
00094             setFrequencySubBand(LORA_SUBBAND_0);
00095             setSpreadingFactor(LORA_SPREADING_FACTOR_7);
00096             setTxPowerdBm(LORA_TX_POWER_16_DBM);
00097             setAcknowledgeRetries(LORA_ACKNOWLEDGE_RETRIES_1);
00098             break;
00099     }
00100 }
00101 
00102 bool LoRaConfig::isPublic(){
00103     return publicity;
00104 }
00105 
00106 bool LoRaConfig::isActiv(){
00107     return activity;
00108 }
00109 
00110 std::string LoRaConfig::getNetworkName(){
00111     return *networkName;
00112 }
00113 
00114 std::string LoRaConfig::getNetworkPassphrase(){
00115     return *networkPassphrase;
00116 }
00117 
00118 uint8_t LoRaConfig::getFrequencySubBand(){
00119     return frequencySubBand;
00120 }
00121 
00122 uint8_t LoRaConfig::getSpreadingFactor(){
00123     return spreadingFactor;
00124 }
00125 
00126 uint8_t LoRaConfig::getTxPowerdBm(){
00127     return txPowerdBm;
00128 }
00129 
00130 uint8_t LoRaConfig::getAcknowledgeRetries(){
00131     return acknowledgeRetries;
00132 }
00133 
00134 LORA_MODE LoRaConfig::getLORA_MODE(){
00135     return loraMode;
00136 }
00137 
00138 void LoRaConfig::setNetworkPublicity(bool publicity){
00139     this->publicity = publicity;
00140 }
00141 
00142 void LoRaConfig::setActivity(bool activity){
00143     this->activity = activity;
00144 }
00145 
00146 void LoRaConfig::setNetworkName(char* networkName){
00147     this->networkName = new std::string(networkName);
00148 }
00149 
00150 void LoRaConfig::setNetworkPassphrase(char* networkPassphrase){
00151     this->networkPassphrase = new std::string(networkPassphrase);
00152 }
00153 
00154 void LoRaConfig::setFrequencySubBand(uint8_t frequencySubBand){
00155     this->frequencySubBand = frequencySubBand;
00156 }
00157 
00158 void LoRaConfig::setSpreadingFactor(uint8_t spreadingFactor){
00159     this->spreadingFactor = spreadingFactor;
00160 }
00161 
00162 void LoRaConfig::setTxPowerdBm(uint8_t txPowerdBm){
00163     this->txPowerdBm = txPowerdBm;
00164 }
00165 
00166 void LoRaConfig::setAcknowledgeRetries(uint8_t acknowledgeRetries){
00167     this->acknowledgeRetries = acknowledgeRetries;
00168 }
00169 
00170 void LoRaConfig::setLORA_MODE(LORA_MODE loraMode){
00171     this->loraMode = loraMode;
00172 }
00173 
00174