Library for controlling the WNC 14A2A from the K64F Freedom Board. It fulfills platform specific pure virtual methods from the WncControllerLibrary.

Dependencies:   WncControllerLibrary

Dependents:   WNC14A2AInterface

Fork of WncControllerK64F by Fred Kellerman

Use this interface to connect to and interact with the WNC M14A2A LTE Cellular Data Module which is provided by Wistron NeWeb Corporation (WNC) when using ARMmbed v5. The interface provides a Networking interface that can be used with the AT&T Cellular IoT Starter Kit that is sold by Avnet (

To demonstrate the use of the Interface, a series of example programs have been provided. Links to these examples are provided below. All examples can be compiled using both the on-line compiler and the ARMmbed CLI (command line interface, see

NOTE: This library/class is specific to the AT&T Cellular IoT Starter Kit which uses a FRDM-K64F. The users compiler should be configured to use the FRDM-K64F platform.

Example Programs

Import the example programs below and follow the in each to run the example program.

  • several examples of the interface using easy_connect.
  • SMS demonstration program that demonstrates SMS usage
  • Sockets demonstration program demonstrating using TCP sockets to interact with others
  • As new example program are developed, this README will be updated


The WNCInterface class currently supports the following version(s):

  • MPSS: M14A2A_v11.21.162331 APSS: M14A2A_v11.27.162331


This library is released under the Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License and may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Revisions of WncControllerK64F.cpp

Revision Date Message Actions
33:0ec8be33d86d 2017-06-22 waitUs() was calling wait_ms(), fixed now. Nothing was using waitUs() yet anyways, so the bug is benign. File  Diff  Annotate
32:93703ebed512 2017-04-19 Debug output was using the UART which caused collisions with stdio who may be using the same UART. Implemented a WNCDebug class that allows the user to define where to send the debug info--UART, STDOUT, STDERR. File  Diff  Annotate
31:d9558aefb9e0 2017-04-17 The changes in this commit only update the UART serial routines from MODSERIAL to BufferedSerial. The BufferedSerial library has better support in mbed v5. MODSERIAL doesn't compile properly. File  Diff  Annotate
30:11d88f24cde3 2017-04-06 ... File  Diff  Annotate
29:76e8acbafc80 2017-04-06 Switched to standard 'Serial' used in Mbed v5.4 File  Diff  Annotate
23:43a36c66c574 2016-11-17 Removed direct usage of debug UART for debug. Added check for debug uart NULL pointer. File  Diff  Annotate
22:9b9cb0d95f51 2016-11-16 Added check for NULL for debug uart for toggle of wake-pin. File  Diff  Annotate
20:fcc6b61a5610 2016-10-07 Added toggle of wakeup pin to try an prevent the drop of the 'A'.; Added cmd to turn off power saving mode, this is thought to maybe be the cause of the no response. File  Diff  Annotate
15:68d73d402cb0 2016-09-16 Fixed prior bug with term. File  Diff  Annotate
13:ef379cdd57aa 2016-09-16 term mode interface change. File  Diff  Annotate
0:98d149685c95 2016-09-02 Separate library for platform specific WNC controlling. File  Diff  Annotate