The WDCInterface is is a drop-in replacement for an EthernetInterface class that allows the user to connect to the Internet with a Wistron NeWeb Corporation (WNC) M14A2A Series data module using the standard network Socket API's. This interface class is used in the AT&T Cellular IoT Starter Kit which is sold by Avnet (http://cloudconnectkits.org/product/att-cellular-iot-starter-kit).
Dependencies: WncControllerK64F
Dependents: WNCProximityMqtt Pubnub_ATT_IoT_SK_WNC_sync BluemixDemo BluemixQS ... more
See the WNCInterface README in the Wiki tab for detailed information on this library.
Diff: WNCInterface.cpp
- Revision:
- 3:1d7e6ed11269
- Parent:
- 0:55ec71dc0347
- Child:
- 4:99e7aeaceae7
--- a/WNCInterface.cpp Tue Sep 27 16:29:16 2016 +0000 +++ b/WNCInterface.cpp Tue Sep 27 19:16:22 2016 +0000 @@ -57,30 +57,18 @@ static MODSERIAL mdmUart(PTD3,PTD2,256,4096); //UART for WNC Module -#if WNC_DEBUG == 1 -static MODSERIAL debugUart(USBTX,USBRX,256,256); //UART used for stdio/stderr -static WncControllerK64F wnc(&wncPinList, &mdmUart, &debugUart); -#else -static WncControllerK64F wnc(&wncPinList, &mdmUart, NULL); -#endif - -WncControllerK64F *WNCInterface::_pwnc = &wnc; +WncControllerK64F *WNCInterface::_pwnc; WncIpStats WNCInterface::myNetStats; string WNCInterface::mac; WNCInterface::WNCInterface() { -#if WNC_DEBUG == 1 - debugUart.baud(115200); // set stdio/stderr. use 115.2K since the WNC part uses this--keep up. -#endif } void WNCInterface::doDebug( int v ) { -#if WNC_DEBUG == 1 //basic debug = 0x01 //more debug = 0x02 //all debug = 0x03 _pwnc->enableDebug( (v&1), (v&2) ); -#endif } // @@ -94,20 +82,18 @@ // Returns: 0 if unable to initialize the WNC module // -1 if successfully initialized // -int WNCInterface::init(const char* apn, int debug) { +int WNCInterface::init(const char* apn, MODSERIAL * debug) { int ret = 0; _pwnc = &wnc; //set the pointer to the WNC controller class. Used for all WNC accesses + if( debug ) + _pwnc = new WncControllerK64F_fk::WncControllerK64F::WncControllerK64F(&wncPinList, &mdmUart, debug); + else + _pwnc = new WncControllerK64F_fk::WncControllerK64F::WncControllerK64F(&wncPinList, &mdmUart, NULL); + if( apn==NULL ) apn = APN_DEFAULT; -#if WNC_DEBUG == 1 - if( debug ) - _pwnc->enableDebug( (debug&1), (debug&2) ); -#else - debug=debug; //keep the compiler from complaining. -#endif - ret = ( _pwnc->powerWncOn(apn,40) )? 2:0; ret |= ( _pwnc->setApnName(apn) )? 1:0; ret |= ( _pwnc->getWncNetworkingStats(&myNetStats) )? 4:0; @@ -184,3 +170,4 @@ return NULL; } +