Ottawa Bootcamp Publish
Dependencies: SX127x lorawan1v1
Diff: SerialDisplay.h
- Revision:
- 0:62e456e60083
- Child:
- 5:53cd6c24a4ab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/SerialDisplay.h Wed Feb 28 14:06:17 2018 -0800 @@ -0,0 +1,97 @@ +/* + / _____) _ | | +( (____ _____ ____ _| |_ _____ ____| |__ + \____ \| ___ | (_ _) ___ |/ ___) _ \ + _____) ) ____| | | || |_| ____( (___| | | | +(______/|_____)_|_|_| \__)_____)\____)_| |_| + (C)2015 Semtech + +Description: VT100 serial display management + +License: Revised BSD License, see LICENSE.TXT file include in the project + +Maintainer: Miguel Luis and Gregory Cristian +*/ +#ifndef __SERIAL_DISPLAY_H__ +#define __SERIAL_DISPLAY_H__ + +#include "vt100.h" +#include "LoRaMac.h" + +#ifdef ENABLE_VT100 + +#define ROW_START 5 +#ifdef LORAWAN_JOIN_EUI + #define ROW_DEVEUI ROW_START + #define ROW_JOINEUI (ROW_DEVEUI+1) + #define ROW_NWKKEY (ROW_JOINEUI+1) + #ifdef OPTNEG + #define ROW_APPKEY (ROW_JOINEUI+2) + #define ROW_NwkId (ROW_JOINEUI+5) + #else + #define ROW_NwkId (ROW_JOINEUI+4) + #endif +#else + #define ROW_NwkId ROW_START /* ABP */ +#endif /* LORAWAN_JOIN_EUI */ + +#define ROW_DevAddr (ROW_NwkId+1) +#define ROW_FNwkSIntKey (ROW_NwkId+2) +#ifdef OPTNEG + #define ROW_SNwkSIntKey (ROW_NwkId+3) + #define ROW_NwkSEncKey (ROW_NwkId+4) + #define ROW_AppSKey (ROW_NwkId+5) +#else + #define ROW_AppSKey (ROW_NwkId+3) +#endif + +#define ROW_FrameType (ROW_AppSKey+2) +#define ROW_ADR (ROW_AppSKey+3) +#define ROW_DUTY (ROW_AppSKey+4) +#define ROW_PUBLIC (ROW_AppSKey+6) +#ifdef LORAWAN_JOIN_EUI + #define ROW_JOINED (ROW_PUBLIC+1) + #define ROW_UPLINK_ACKED (ROW_PUBLIC+3) +#else + #define ROW_UPLINK_ACKED (ROW_PUBLIC+2) +#endif /* LORAWAN_JOIN_EUI */ + +#define ROW_UPLINK_DR (ROW_UPLINK_ACKED+1) +#define ROW_UPLINK_FCNT (ROW_UPLINK_DR+1) +#define ROW_UPLINK_PORT (ROW_UPLINK_DR+2) +#define ROW_UPLINK_PAYLOAD (ROW_UPLINK_DR+3) + +#define ROW_DOWNLINK_RSSI (ROW_UPLINK_PAYLOAD+5) +#define ROW_DOWNLINK_SNR (ROW_DOWNLINK_RSSI+1) +#define ROW_DOWNLINK_FCNT (ROW_DOWNLINK_SNR+1) +#define ROW_DOWNLINK_FPORT (ROW_DOWNLINK_FCNT+1) +#define ROW_DOWNLINK_PAYLOAD (ROW_DOWNLINK_FPORT+1) + +#define ROW_END (ROW_DOWNLINK_PAYLOAD+6) + +void SerialDisplayInit( void ); +void SerialDisplayUplink(uint8_t fport, const uint8_t* buffer, uint8_t bufferSize ); +void SerialDisplayMcpsConfirm( const McpsConfirm_t*); +void SerialDisplayMcpsIndication(const McpsIndication_t* mi); +void SerialDisplayPrintCheckBox( bool activated ); +#ifdef LORAWAN_JOIN_EUI +void SerialDisplayUpdateActivationMode( bool otaa ); +void SerialDisplayUpdateEui( uint8_t line, const uint8_t *eui ); +void SerialDisplayUpdateNetworkIsJoined( bool state ); +#endif /* LORAWAN_JOIN_EUI */ +void SerialDisplayUpdateKey( uint8_t line, const uint8_t *key ); +void SerialDisplayUpdateNwkId( uint8_t id ); +void SerialDisplayUpdateDevAddr( uint32_t addr ); +void SerialDisplayUpdateFrameType( bool confirmed ); +void SerialDisplayUpdateAdr( bool adr ); +void SerialDisplayUpdateDutyCycle( bool dutyCycle ); +void SerialDisplayUpdatePublicNetwork( bool network ); +void SerialDisplayUpdateData( const uint8_t *buffer ); +void SerialDisplayUpdateUplinkAcked( bool state ); +void SerialDisplayUpdateDonwlinkRxData( bool state ); +bool SerialDisplayReadable( void ); +uint8_t SerialDisplayGetChar( void ); +extern VT100 vt; +#endif /* ENABLE_VT100 */ + +#endif // __SERIAL_DISPLAY_H__