Added support for the WNC M14A2A Cellular LTE Data Module.

Dependencies:   WNC14A2AInterface

Easy Connect

Easily add all supported connectivity methods to your mbed OS project

This project is derived from https://developer.mbed.org/teams/sandbox/code/simple-mbed-client-example/file/dd6231df71bb/easy-connect.lib. It give user the ability to switch between connectivity methods and includes support for the WNC14A2A Data Module. The `NetworkInterface` API makes this easy, but you still need a mechanism for the user to select the connection method, The selection is made by modifying the `mbed_app.json` file and using `easy_connect()` from your application.

Specifying connectivity method

To add support for the WNC14A2A, add the following to your ``mbed_app.json`` file:

mbed_app.json

{
    "config": {
        "network-interface":{
            "help": "options are ETHERNET,WIFI_ESP8266,WIFI_ODIN,MESH_LOWPAN_ND,MESH_THREAD,WNC14A2A",
            "value": "WNC14A2A"
        }
    },
}

After you choose `WNC14A2A` you'll also need to indicate if you want debug output or not by Enabling (true) or Disabling (false) WNC_DEBUG.

If WNC_DEBUG is enabled, there are 3 different levels of debug output (selected via bit settings). These debug levels are set using the following values:

ValueDescription
1Basic WNC driver debug output
2Comprehensive WNC driver debug output
4Network Layer debug output

You can have any combination of these three bit values for a total value of 0 – 7.

WNC Debug Settings

    "config": {
        "WNC_DEBUG": {
            "value": false
        },
        "WNC_DEBUG_SETTING": {
            "value": 4
        },
    }

Using Easy Connect from your application

Easy Connect has just one function which will either return a `NetworkInterface`-pointer or `NULL`:

Sample Code

#include "easy-connect.h"

int main(int, char**) {
    NetworkInterface* network = easy_connect(true); /* has 1 argument, enable_logging (pass in true to log to serial port) */
    if (!network) {
        printf("Connecting to the network failed... See serial output.\r\n");
        return 1;
    }
 
    // Rest of your program
}

Tested on

  • K64F with Ethernet.
  • AT&T Cellular IoT Starter Kit with WNC M14A2A Cellular Data Module

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

  • MPSS: M14A2A_v11.50.164451 APSS: M14A2A_v11.53.164451

License

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

http://www.apache.org/licenses/LICENSE-2.0

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.

Committer:
group-Avnet
Date:
Wed Apr 19 01:08:11 2017 +0000
Revision:
0:478cfd88041f
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
group-Avnet 0:478cfd88041f 1 /*!
group-Avnet 0:478cfd88041f 2 * Copyright (c) 2015, Freescale Semiconductor, Inc.
group-Avnet 0:478cfd88041f 3 * All rights reserved.
group-Avnet 0:478cfd88041f 4 *
group-Avnet 0:478cfd88041f 5 * \file MCR20Overwrites.h
group-Avnet 0:478cfd88041f 6 * Description: Overwrites header file for MCR20 Register values
group-Avnet 0:478cfd88041f 7 *
group-Avnet 0:478cfd88041f 8 * Redistribution and use in source and binary forms, with or without modification,
group-Avnet 0:478cfd88041f 9 * are permitted provided that the following conditions are met:
group-Avnet 0:478cfd88041f 10 *
group-Avnet 0:478cfd88041f 11 * o Redistributions of source code must retain the above copyright notice, this list
group-Avnet 0:478cfd88041f 12 * of conditions and the following disclaimer.
group-Avnet 0:478cfd88041f 13 *
group-Avnet 0:478cfd88041f 14 * o Redistributions in binary form must reproduce the above copyright notice, this
group-Avnet 0:478cfd88041f 15 * list of conditions and the following disclaimer in the documentation and/or
group-Avnet 0:478cfd88041f 16 * other materials provided with the distribution.
group-Avnet 0:478cfd88041f 17 *
group-Avnet 0:478cfd88041f 18 * o Neither the name of Freescale Semiconductor, Inc. nor the names of its
group-Avnet 0:478cfd88041f 19 * contributors may be used to endorse or promote products derived from this
group-Avnet 0:478cfd88041f 20 * software without specific prior written permission.
group-Avnet 0:478cfd88041f 21 *
group-Avnet 0:478cfd88041f 22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
group-Avnet 0:478cfd88041f 23 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
group-Avnet 0:478cfd88041f 24 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
group-Avnet 0:478cfd88041f 25 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
group-Avnet 0:478cfd88041f 26 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
group-Avnet 0:478cfd88041f 27 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
group-Avnet 0:478cfd88041f 28 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
group-Avnet 0:478cfd88041f 29 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
group-Avnet 0:478cfd88041f 30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
group-Avnet 0:478cfd88041f 31 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
group-Avnet 0:478cfd88041f 32 */
group-Avnet 0:478cfd88041f 33
group-Avnet 0:478cfd88041f 34 #ifndef OVERWRITES_H_
group-Avnet 0:478cfd88041f 35 #define OVERWRITES_H_
group-Avnet 0:478cfd88041f 36
group-Avnet 0:478cfd88041f 37 typedef struct overwrites_tag {
group-Avnet 0:478cfd88041f 38 char address;
group-Avnet 0:478cfd88041f 39 char data;
group-Avnet 0:478cfd88041f 40 }overwrites_t;
group-Avnet 0:478cfd88041f 41
group-Avnet 0:478cfd88041f 42
group-Avnet 0:478cfd88041f 43 /*****************************************************************************************************************/
group-Avnet 0:478cfd88041f 44 // This file is created exclusively for use with the transceiver 2.0 silicon
group-Avnet 0:478cfd88041f 45 // and is provided for the world to use. It contains a list of all
group-Avnet 0:478cfd88041f 46 // known overwrite values. Overwrite values are non-default register
group-Avnet 0:478cfd88041f 47 // values that configure the transceiver device to a more optimally performing
group-Avnet 0:478cfd88041f 48 // posture. It is expected that low level software (i.e. PHY) will
group-Avnet 0:478cfd88041f 49 // consume this file as a #include, and transfer the contents to the
group-Avnet 0:478cfd88041f 50 // the indicated addresses in the transceiver's memory space. This file has
group-Avnet 0:478cfd88041f 51 // at least one required entry, that being its own version current version
group-Avnet 0:478cfd88041f 52 // number, to be stored at transceiver's location 0x3B the
group-Avnet 0:478cfd88041f 53 // OVERWRITES_VERSION_NUMBER register. The RAM register is provided in
group-Avnet 0:478cfd88041f 54 // the transceiver address space to assist in future debug efforts. The
group-Avnet 0:478cfd88041f 55 // analyst may read this location (once device has been booted with
group-Avnet 0:478cfd88041f 56 // mysterious software) and have a good indication of what register
group-Avnet 0:478cfd88041f 57 // overwrites were performed (with all versions of the overwrites.h file
group-Avnet 0:478cfd88041f 58 // being archived forever at the Compass location shown above.
group-Avnet 0:478cfd88041f 59 //
group-Avnet 0:478cfd88041f 60 // The transceiver has an indirect register (IAR) space. Write access to this space
group-Avnet 0:478cfd88041f 61 // requires 3 or more writes:
group-Avnet 0:478cfd88041f 62 // 1st) the first write is an index value to the indirect (write Bit7=0, register access Bit 6=0) + 0x3E
group-Avnet 0:478cfd88041f 63 // 2nd) IAR Register #0x00 - 0xFF.
group-Avnet 0:478cfd88041f 64 // 3rd) The data to write
group-Avnet 0:478cfd88041f 65 // nth) Burst mode additional data if required.
group-Avnet 0:478cfd88041f 66 //
group-Avnet 0:478cfd88041f 67 // Write access to direct space requires only a single address, data pair.
group-Avnet 0:478cfd88041f 68
group-Avnet 0:478cfd88041f 69 overwrites_t const overwrites_direct[] ={
group-Avnet 0:478cfd88041f 70 {0x3B, 0x0C}, //version 0C: new value for ACKDELAY targeting 198us (23 May, 2013, Larry Roshak)
group-Avnet 0:478cfd88041f 71 {0x23, 0x17} //PA_PWR new default Power Step is "23"
group-Avnet 0:478cfd88041f 72 };
group-Avnet 0:478cfd88041f 73
group-Avnet 0:478cfd88041f 74 overwrites_t const overwrites_indirect[] ={
group-Avnet 0:478cfd88041f 75 {0x31, 0x02}, //clear MISO_HIZ_EN (for single SPI master/slave pair) and SPI_PUL_EN (minimize HIB currents)
group-Avnet 0:478cfd88041f 76 {0x91, 0xB3}, //VCO_CTRL1 override VCOALC_REF_TX to 3
group-Avnet 0:478cfd88041f 77 {0x92, 0x07}, //VCO_CTRL2 override VCOALC_REF_RX to 3, keep VCO_BUF_BOOST = 1
group-Avnet 0:478cfd88041f 78 {0x8A, 0x71}, //PA_TUNING override PA_COILTUNING to 001 (27 Nov 2012, D. Brown, on behalf of S. Eid)
group-Avnet 0:478cfd88041f 79 {0x79, 0x2F}, //CHF_IBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 80 {0x7A, 0x2F}, //CHF_QBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 81 {0x7B, 0x24}, //CHF_IRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 82 {0x7C, 0x24}, //CHF_QRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 83 {0x7D, 0x24}, //CHF_IL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 84 {0x7E, 0x24}, //CHF_QL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 85 {0x7F, 0x32}, //CHF_CC1 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 86 {0x80, 0x1D}, //CHF_CCL Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 87 {0x81, 0x2D}, //CHF_CC2 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 88 {0x82, 0x24}, //CHF_IROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 89 {0x83, 0x24}, //CHF_QROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 90 {0x64, 0x28}, //PA_CAL_DIS=1 Disabled PA calibration
group-Avnet 0:478cfd88041f 91 {0x52, 0x55}, //AGC_THR1 RSSI tune up
group-Avnet 0:478cfd88041f 92 {0x53, 0x2D}, //AGC_THR2 RSSI tune up
group-Avnet 0:478cfd88041f 93 {0x66, 0x5F}, //ATT_RSSI1 tune up
group-Avnet 0:478cfd88041f 94 {0x67, 0x8F}, //ATT_RSSI2 tune up
group-Avnet 0:478cfd88041f 95 {0x68, 0x61}, //RSSI_OFFSET
group-Avnet 0:478cfd88041f 96 {0x78, 0x03}, //CHF_PMAGAIN
group-Avnet 0:478cfd88041f 97 {0x22, 0x50}, //CCA1_THRESH
group-Avnet 0:478cfd88041f 98 {0x4D, 0x13}, //CORR_NVAL moved from 0x14 to 0x13 for 0.5 dB improved Rx Sensitivity
group-Avnet 0:478cfd88041f 99 {0x39, 0x3D} //ACKDELAY new value targeting a delay of 198us (23 May, 2013, Larry Roshak)
group-Avnet 0:478cfd88041f 100 };
group-Avnet 0:478cfd88041f 101
group-Avnet 0:478cfd88041f 102
group-Avnet 0:478cfd88041f 103 /* begin of deprecated versions
group-Avnet 0:478cfd88041f 104
group-Avnet 0:478cfd88041f 105 ==VERSION 1==
group-Avnet 0:478cfd88041f 106 (version 1 is empty)
group-Avnet 0:478cfd88041f 107
group-Avnet 0:478cfd88041f 108 ==VERSION 2==
group-Avnet 0:478cfd88041f 109 overwrites_t const overwrites_indirect[] ={
group-Avnet 0:478cfd88041f 110 {0x31, 0x02} //clear MISO_HIZ_EN (for single SPI master/slave pair) and SPI_PUL_EN (minimize HIB currents)
group-Avnet 0:478cfd88041f 111 };
group-Avnet 0:478cfd88041f 112
group-Avnet 0:478cfd88041f 113 ==VERSION 3==
group-Avnet 0:478cfd88041f 114 overwrites_t const overwrites_indirect[] ={
group-Avnet 0:478cfd88041f 115 {0x31, 0x02}, //clear MISO_HIZ_EN (for single SPI master/slave pair) and SPI_PUL_EN (minimize HIB currents)
group-Avnet 0:478cfd88041f 116 {0x91, 0xB3}, //VCO_CTRL1: override VCOALC_REF_TX to 3
group-Avnet 0:478cfd88041f 117 {0x92, 0x07} //VCO_CTRL2: override VCOALC_REF_RX to 3, keep VCO_BUF_BOOST = 1
group-Avnet 0:478cfd88041f 118 };
group-Avnet 0:478cfd88041f 119
group-Avnet 0:478cfd88041f 120 ==VERSION 4==
group-Avnet 0:478cfd88041f 121 overwrites_t const overwrites_direct[] ={
group-Avnet 0:478cfd88041f 122 {0x3B, 0x04} //version 04 is the current version: update PA_COILTUNING default
group-Avnet 0:478cfd88041f 123 };
group-Avnet 0:478cfd88041f 124
group-Avnet 0:478cfd88041f 125 overwrites_t const overwrites_indirect[] ={
group-Avnet 0:478cfd88041f 126 {0x31, 0x02}, //clear MISO_HIZ_EN (for single SPI master/slave pair) and SPI_PUL_EN (minimize HIB currents)
group-Avnet 0:478cfd88041f 127 {0x91, 0xB3}, //VCO_CTRL1: override VCOALC_REF_TX to 3
group-Avnet 0:478cfd88041f 128 {0x92, 0x07} //VCO_CTRL2: override VCOALC_REF_RX to 3, keep VCO_BUF_BOOST = 1
group-Avnet 0:478cfd88041f 129 {0x8A, 0x71} //PA_TUNING: override PA_COILTUNING to 001 (27 Nov 2012, D. Brown, on behalf of S. Eid)
group-Avnet 0:478cfd88041f 130 };
group-Avnet 0:478cfd88041f 131
group-Avnet 0:478cfd88041f 132 ==VERSION 5==
group-Avnet 0:478cfd88041f 133 overwrites_t const overwrites_direct[] ={
group-Avnet 0:478cfd88041f 134 {0x3B, 0x05} //version 05: updates Channel Filter Register set (21 Dec 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 135 };
group-Avnet 0:478cfd88041f 136
group-Avnet 0:478cfd88041f 137 overwrites_t const overwrites_indirect[] ={
group-Avnet 0:478cfd88041f 138 {0x31, 0x02}, //clear MISO_HIZ_EN (for single SPI master/slave pair) and SPI_PUL_EN (minimize HIB currents)
group-Avnet 0:478cfd88041f 139 {0x91, 0xB3}, //VCO_CTRL1 override VCOALC_REF_TX to 3
group-Avnet 0:478cfd88041f 140 {0x92, 0x07} //VCO_CTRL2 override VCOALC_REF_RX to 3, keep VCO_BUF_BOOST = 1
group-Avnet 0:478cfd88041f 141 {0x8A, 0x71} //PA_TUNING override PA_COILTUNING to 001 (27 Nov 2012, D. Brown, on behalf of S. Eid)
group-Avnet 0:478cfd88041f 142 {0x79, 0x2F} //CHF_IBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 143 {0x7A, 0x2F} //CHF_QBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 144 {0x7B, 0x24} //CHF_IRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 145 {0x7C, 0x24} //CHF_QRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 146 {0x7D, 0x24} //CHF_IL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 147 {0x7E, 0x24} //CHF_QL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 148 {0x82, 0x24} //CHF_IROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 149 {0x83, 0x24} //CHF_QROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 150 {0x7F, 0x32} //CHF_CC1 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 151 {0x80, 0x1D} //CHF_CCL Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 152 {0x81, 0x2D} //CHF_CC2 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 153 };
group-Avnet 0:478cfd88041f 154
group-Avnet 0:478cfd88041f 155 ==VERSION 6==
group-Avnet 0:478cfd88041f 156 overwrites_t const overwrites_direct[] ={
group-Avnet 0:478cfd88041f 157 {0x3B, 0x06} //version 06: disable PA calibration
group-Avnet 0:478cfd88041f 158 };
group-Avnet 0:478cfd88041f 159
group-Avnet 0:478cfd88041f 160 overwrites_t const overwrites_indirect[] ={
group-Avnet 0:478cfd88041f 161 {0x31, 0x02}, //clear MISO_HIZ_EN (for single SPI master/slave pair) and SPI_PUL_EN (minimize HIB currents)
group-Avnet 0:478cfd88041f 162 {0x91, 0xB3}, //VCO_CTRL1 override VCOALC_REF_TX to 3
group-Avnet 0:478cfd88041f 163 {0x92, 0x07} //VCO_CTRL2 override VCOALC_REF_RX to 3, keep VCO_BUF_BOOST = 1
group-Avnet 0:478cfd88041f 164 {0x8A, 0x71} //PA_TUNING override PA_COILTUNING to 001 (27 Nov 2012, D. Brown, on behalf of S. Eid)
group-Avnet 0:478cfd88041f 165 {0x79, 0x2F} //CHF_IBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 166 {0x7A, 0x2F} //CHF_QBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 167 {0x7B, 0x24} //CHF_IRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 168 {0x7C, 0x24} //CHF_QRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 169 {0x7D, 0x24} //CHF_IL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 170 {0x7E, 0x24} //CHF_QL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 171 {0x82, 0x24} //CHF_IROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 172 {0x83, 0x24} //CHF_QROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 173 {0x7F, 0x32} //CHF_CC1 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 174 {0x80, 0x1D} //CHF_CCL Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 175 {0x81, 0x2D} //CHF_CC2 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 176 {0x64, 0x28} //PA_CAL_DIS=1 Disabled PA calibration
group-Avnet 0:478cfd88041f 177 };
group-Avnet 0:478cfd88041f 178
group-Avnet 0:478cfd88041f 179 ==VERSION 7==
group-Avnet 0:478cfd88041f 180 overwrites_t const overwrites_direct[] ={
group-Avnet 0:478cfd88041f 181 {0x3B, 0x07} //version 07: updated registers for ED/RSSI
group-Avnet 0:478cfd88041f 182 };
group-Avnet 0:478cfd88041f 183
group-Avnet 0:478cfd88041f 184 overwrites_t const overwrites_indirect[] ={
group-Avnet 0:478cfd88041f 185 {0x31, 0x02}, //clear MISO_HIZ_EN (for single SPI master/slave pair) and SPI_PUL_EN (minimize HIB currents)
group-Avnet 0:478cfd88041f 186 {0x91, 0xB3}, //VCO_CTRL1 override VCOALC_REF_TX to 3
group-Avnet 0:478cfd88041f 187 {0x92, 0x07}, //VCO_CTRL2 override VCOALC_REF_RX to 3, keep VCO_BUF_BOOST = 1
group-Avnet 0:478cfd88041f 188 {0x8A, 0x71}, //PA_TUNING override PA_COILTUNING to 001 (27 Nov 2012, D. Brown, on behalf of S. Eid)
group-Avnet 0:478cfd88041f 189 {0x79, 0x2F}, //CHF_IBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 190 {0x7A, 0x2F}, //CHF_QBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 191 {0x7B, 0x24}, //CHF_IRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 192 {0x7C, 0x24}, //CHF_QRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 193 {0x7D, 0x24}, //CHF_IL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 194 {0x7E, 0x24}, //CHF_QL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 195 {0x82, 0x24}, //CHF_IROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 196 {0x83, 0x24}, //CHF_QROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 197 {0x7F, 0x32}, //CHF_CC1 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 198 {0x80, 0x1D}, //CHF_CCL Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 199 {0x81, 0x2D}, //CHF_CC2 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 200 {0x64, 0x28}, //PA_CAL_DIS=1 Disabled PA calibration
group-Avnet 0:478cfd88041f 201 {0x52, 0x73}, //AGC_THR1 RSSI tune up
group-Avnet 0:478cfd88041f 202 {0x53, 0x2D}, //AGC_THR2 RSSI tune up
group-Avnet 0:478cfd88041f 203 {0x66, 0x5F}, //ATT_RSSI1 tune up
group-Avnet 0:478cfd88041f 204 {0x67, 0x8F}, //ATT_RSSI2 tune up
group-Avnet 0:478cfd88041f 205 {0x68, 0x60}, //RSSI_OFFSET
group-Avnet 0:478cfd88041f 206 {0x69, 0x65} //RSSI_SLOPE
group-Avnet 0:478cfd88041f 207 };
group-Avnet 0:478cfd88041f 208
group-Avnet 0:478cfd88041f 209
group-Avnet 0:478cfd88041f 210 ==VERSION 8==
group-Avnet 0:478cfd88041f 211 overwrites_t const overwrites_direct[] ={
group-Avnet 0:478cfd88041f 212 {0x3B, 0x08} //version 08: updated registers for ED/RSSI
group-Avnet 0:478cfd88041f 213 };
group-Avnet 0:478cfd88041f 214
group-Avnet 0:478cfd88041f 215 overwrites_t const overwrites_indirect[] ={
group-Avnet 0:478cfd88041f 216 {0x31, 0x02}, //clear MISO_HIZ_EN (for single SPI master/slave pair) and SPI_PUL_EN (minimize HIB currents)
group-Avnet 0:478cfd88041f 217 {0x91, 0xB3}, //VCO_CTRL1 override VCOALC_REF_TX to 3
group-Avnet 0:478cfd88041f 218 {0x92, 0x07}, //VCO_CTRL2 override VCOALC_REF_RX to 3, keep VCO_BUF_BOOST = 1
group-Avnet 0:478cfd88041f 219 {0x8A, 0x71}, //PA_TUNING override PA_COILTUNING to 001 (27 Nov 2012, D. Brown, on behalf of S. Eid)
group-Avnet 0:478cfd88041f 220 {0x79, 0x2F}, //CHF_IBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 221 {0x7A, 0x2F}, //CHF_QBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 222 {0x7B, 0x24}, //CHF_IRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 223 {0x7C, 0x24}, //CHF_QRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 224 {0x7D, 0x24}, //CHF_IL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 225 {0x7E, 0x24}, //CHF_QL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 226 {0x82, 0x24}, //CHF_IROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 227 {0x83, 0x24}, //CHF_QROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 228 {0x7F, 0x32}, //CHF_CC1 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 229 {0x80, 0x1D}, //CHF_CCL Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 230 {0x81, 0x2D}, //CHF_CC2 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 231 {0x64, 0x28}, //PA_CAL_DIS=1 Disabled PA calibration
group-Avnet 0:478cfd88041f 232 {0x52, 0x73}, //AGC_THR1 RSSI tune up
group-Avnet 0:478cfd88041f 233 {0x53, 0x2D}, //AGC_THR2 RSSI tune up
group-Avnet 0:478cfd88041f 234 {0x66, 0x5F}, //ATT_RSSI1 tune up
group-Avnet 0:478cfd88041f 235 {0x67, 0x8F}, //ATT_RSSI2 tune up
group-Avnet 0:478cfd88041f 236 {0x69, 0x65} //RSSI_SLOPE
group-Avnet 0:478cfd88041f 237 {0x68, 0x61}, //RSSI_OFFSET
group-Avnet 0:478cfd88041f 238 {0x78, 0x03} //CHF_PMAGAIN
group-Avnet 0:478cfd88041f 239 };
group-Avnet 0:478cfd88041f 240
group-Avnet 0:478cfd88041f 241
group-Avnet 0:478cfd88041f 242 ==VERSION 9==
group-Avnet 0:478cfd88041f 243 overwrites_t const overwrites_direct[] ={
group-Avnet 0:478cfd88041f 244 {0x3B, 0x09} //version 09: updated registers for ED/RSSI and PowerStep
group-Avnet 0:478cfd88041f 245 {0x23, 0x17} //PA_PWR new default value
group-Avnet 0:478cfd88041f 246 };
group-Avnet 0:478cfd88041f 247
group-Avnet 0:478cfd88041f 248 overwrites_t const overwrites_indirect[] ={
group-Avnet 0:478cfd88041f 249 {0x31, 0x02}, //clear MISO_HIZ_EN (for single SPI master/slave pair) and SPI_PUL_EN (minimize HIB currents)
group-Avnet 0:478cfd88041f 250 {0x91, 0xB3}, //VCO_CTRL1 override VCOALC_REF_TX to 3
group-Avnet 0:478cfd88041f 251 {0x92, 0x07}, //VCO_CTRL2 override VCOALC_REF_RX to 3, keep VCO_BUF_BOOST = 1
group-Avnet 0:478cfd88041f 252 {0x8A, 0x71}, //PA_TUNING override PA_COILTUNING to 001 (27 Nov 2012, D. Brown, on behalf of S. Eid)
group-Avnet 0:478cfd88041f 253 {0x79, 0x2F}, //CHF_IBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 254 {0x7A, 0x2F}, //CHF_QBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 255 {0x7B, 0x24}, //CHF_IRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 256 {0x7C, 0x24}, //CHF_QRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 257 {0x7D, 0x24}, //CHF_IL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 258 {0x7E, 0x24}, //CHF_QL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 259 {0x7F, 0x32}, //CHF_CC1 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 260 {0x80, 0x1D}, //CHF_CCL Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 261 {0x81, 0x2D}, //CHF_CC2 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 262 {0x82, 0x24}, //CHF_IROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 263 {0x83, 0x24}, //CHF_QROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 264 {0x64, 0x28}, //PA_CAL_DIS=1 Disabled PA calibration
group-Avnet 0:478cfd88041f 265 {0x52, 0x55}, //AGC_THR1 RSSI tune up
group-Avnet 0:478cfd88041f 266 {0x53, 0x2D}, //AGC_THR2 RSSI tune up
group-Avnet 0:478cfd88041f 267 {0x66, 0x5F}, //ATT_RSSI1 tune up
group-Avnet 0:478cfd88041f 268 {0x67, 0x8F}, //ATT_RSSI2 tune up
group-Avnet 0:478cfd88041f 269 {0x68, 0x61}, //RSSI_OFFSET
group-Avnet 0:478cfd88041f 270 {0x78, 0x03} //CHF_PMAGAIN
group-Avnet 0:478cfd88041f 271 };
group-Avnet 0:478cfd88041f 272
group-Avnet 0:478cfd88041f 273 ==VERSION A==
group-Avnet 0:478cfd88041f 274 overwrites_t const overwrites_direct[] ={
group-Avnet 0:478cfd88041f 275 {0x3B, 0x0A} //version 0A: updated registers for CCA
group-Avnet 0:478cfd88041f 276 {0x23, 0x17} //PA_PWR new default Power Step is "23"
group-Avnet 0:478cfd88041f 277 };
group-Avnet 0:478cfd88041f 278
group-Avnet 0:478cfd88041f 279 overwrites_t const overwrites_indirect[] ={
group-Avnet 0:478cfd88041f 280 {0x31, 0x02}, //clear MISO_HIZ_EN (for single SPI master/slave pair) and SPI_PUL_EN (minimize HIB currents)
group-Avnet 0:478cfd88041f 281 {0x91, 0xB3}, //VCO_CTRL1 override VCOALC_REF_TX to 3
group-Avnet 0:478cfd88041f 282 {0x92, 0x07}, //VCO_CTRL2 override VCOALC_REF_RX to 3, keep VCO_BUF_BOOST = 1
group-Avnet 0:478cfd88041f 283 {0x8A, 0x71}, //PA_TUNING override PA_COILTUNING to 001 (27 Nov 2012, D. Brown, on behalf of S. Eid)
group-Avnet 0:478cfd88041f 284 {0x79, 0x2F}, //CHF_IBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 285 {0x7A, 0x2F}, //CHF_QBUF Adjust the gm-C filter gain (+/- 6dB) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 286 {0x7B, 0x24}, //CHF_IRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 287 {0x7C, 0x24}, //CHF_QRIN Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 288 {0x7D, 0x24}, //CHF_IL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 289 {0x7E, 0x24}, //CHF_QL Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 290 {0x7F, 0x32}, //CHF_CC1 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 291 {0x80, 0x1D}, //CHF_CCL Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 292 {0x81, 0x2D}, //CHF_CC2 Adjust the filter center frequency (+/- 1MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 293 {0x82, 0x24}, //CHF_IROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 294 {0x83, 0x24}, //CHF_QROUT Adjust the filter bandwidth (+/- 0.5MHz) (21 Dec, 2012, on behalf of S. Soca)
group-Avnet 0:478cfd88041f 295 {0x64, 0x28}, //PA_CAL_DIS=1 Disabled PA calibration
group-Avnet 0:478cfd88041f 296 {0x52, 0x55}, //AGC_THR1 RSSI tune up
group-Avnet 0:478cfd88041f 297 {0x53, 0x2D}, //AGC_THR2 RSSI tune up
group-Avnet 0:478cfd88041f 298 {0x66, 0x5F}, //ATT_RSSI1 tune up
group-Avnet 0:478cfd88041f 299 {0x67, 0x8F}, //ATT_RSSI2 tune up
group-Avnet 0:478cfd88041f 300 {0x68, 0x61}, //RSSI_OFFSET
group-Avnet 0:478cfd88041f 301 {0x78, 0x03} //CHF_PMAGAIN
group-Avnet 0:478cfd88041f 302 {0x22, 0x50} //CCA1_THRESH
group-Avnet 0:478cfd88041f 303 };
group-Avnet 0:478cfd88041f 304
group-Avnet 0:478cfd88041f 305 end of deprecated versions */
group-Avnet 0:478cfd88041f 306
group-Avnet 0:478cfd88041f 307
group-Avnet 0:478cfd88041f 308 #endif //OVERWRITES_H_
group-Avnet 0:478cfd88041f 309