LoRa_Miun_Lib

Dependents:   Smart_Miun

Revision:
4:522bba1c5fa1
Parent:
2:3ecde145ebf2
--- a/LoRa.h	Wed May 03 08:49:14 2017 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,177 +0,0 @@
-/**
- * @file    LoRa.h
- * @brief   Application call
- * @author  Bin Wang
- * @version 1.0
- */
- 
-#ifndef MIUN_LORA_H
-#define MIUN_LORA_H
-
-#include "mDot.h"
-#include "mDotEvent.h"
-
-
-namespace MIUN
-{
-    
-class LoRa;
-
-class MacCommandEvent : public mDotEvent
-{
-/*** CommandType ***/
-private:
-    enum CommmandType 
-    {
-        decreaseSF = 0x80,
-        increaseSF = 0x81,
-        changeSleepTime = 0x82,
-    };
-    
-    enum CommmandType_length 
-    {
-        decreaseSF_length = 1,
-        increaseSF_length = 1,
-        changeSleepTime_length = 5,
-    };
-    
-
-
-private:
-    LoRa& loraHandle;
-public:
-    MacCommandEvent(LoRa& loraHandle);
- 
-    virtual ~MacCommandEvent() {}
- 
-    virtual void RxDone(uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr, lora::DownlinkControl ctrl, uint8_t slot);
-
-    virtual uint8_t MeasureBattery(); 
-    
-private:
-    void processSFDecrease(uint8_t *payload);
-    void processSFIncrease(uint8_t *payload);
-    void processChangeSleepTm(uint8_t *macCommand);
-    void processqueryBatteryLevel(uint8_t *macCommand);
-    
-    void sendCommand (uint8_t* command, int commandLength);
-};
-
-class LoRa
-{
-/*** Parameters ***/
-private:
-    uint8_t rejoinTimes;
-    uint8_t retransTimes;
-    uint8_t installSF;
-    uint32_t sleepTime;
-    uint32_t defaultSleepTime;
-    
-    int receivePort;
-    
-    uint8_t batteryLevel;
-
-/*** component ***/
-private:
-    mDot* dot;
-    MacCommandEvent macCommandEvent;
-
-/*** constructor ***/
-public:
-    LoRa();
-
-/*** Handle Functins ***/
-
-public:
-    /*** Information ***/
-    void showInfo();
-    
-    /*** sleep ***/
-    void sleep(const uint32_t& interval_s);
-    void sleep();
-    void sleepWaitingNextFreeChannel();
-    
-    /*** Network ***/
-    void joinNetwork ();
-    bool send_basic(std::string input_data);
-    bool send(std::string input_data, int port);
-    std::string receive(int* port);
-    
-    /*** check ***/
-    bool checkSleepTime(uint32_t sleepTime);  
-       
-    /*** Setting ***/
-    void reset();
-    
-    void networkConfig(std::string network_name, 
-                                std::string network_passphrase, 
-                                uint8_t     retransTimes,
-                                uint8_t     joinDelay,
-                                bool        ADR,
-                                uint8_t     sf,
-                                uint32_t    defaultSleepTime); // Include reset and setting save.
-    
-    /*** getting ***/
-    
-        
-    /*** Setting ***/
-public:
-
-    void setBatteryLevel(uint8_t batteryLevel);
-
-    void setFPending(bool isPending);
-    
-    void setDefaultSleepTime(uint32_t inSleepTime);
-    
-    void setSleepTime(uint32_t inSleepTime);
-    
-    bool increaseSF();
-    
-    bool decreaseSF();
-    
-    void resetSF();
-
-    void changeSF(const uint8_t& sf);
-
-    void changeAdaptSF(bool adaptSF);
-
-    void changeModeToAUTO_OTA();
-    
-    void changeNetworkName(const std::string& network_name);
-    
-    void changePassword(const std::string& networkKey);
-    
-    void changeAck(const uint8_t& retries);
-    
-    void changeJoinDelay(uint8_t joinDelay);
-    
-    void changePublicNetwork(bool isPublicNetwork);    
-    
-    /*** Save & get***/
-private:
-    void saveSetting();
-    void saveSleepTime(uint32_t sleepTime);
-    uint32_t readSleepTime();
-
-
-    
-    /*** Get ***/
-public:
-    mDot& getHandler();
-    
-/*** Private Functions ***/
-private:
-    void tryConnectNet();
-    
-friend class MacCommandEvent;
-};
-
-
-
-
-
-} // CLOSE NAMESPACE
-
-
-
-#endif
\ No newline at end of file