First program for SmartCampus LoRaWan

Committer:
mbed_official
Date:
Thu Mar 08 17:46:15 2018 +0000
Revision:
0:7037ed05f54f
Fix construction of LoRaWANInterface object

Since radio object is constructed by another source file, we have a
race condition. In order to prevent this race condition, LoRaWANInterface
object is now created in main().

.
Commit copied from https://github.com/ARMmbed/mbed-os-example-lorawan

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 0:7037ed05f54f 1 Apache License
mbed_official 0:7037ed05f54f 2 Version 2.0, January 2004
mbed_official 0:7037ed05f54f 3 http://www.apache.org/licenses/
mbed_official 0:7037ed05f54f 4
mbed_official 0:7037ed05f54f 5 TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
mbed_official 0:7037ed05f54f 6
mbed_official 0:7037ed05f54f 7 1. Definitions.
mbed_official 0:7037ed05f54f 8
mbed_official 0:7037ed05f54f 9 "License" shall mean the terms and conditions for use, reproduction, and
mbed_official 0:7037ed05f54f 10 distribution as defined by Sections 1 through 9 of this document.
mbed_official 0:7037ed05f54f 11
mbed_official 0:7037ed05f54f 12 "Licensor" shall mean the copyright owner or entity authorized by the copyright
mbed_official 0:7037ed05f54f 13 owner that is granting the License.
mbed_official 0:7037ed05f54f 14
mbed_official 0:7037ed05f54f 15 "Legal Entity" shall mean the union of the acting entity and all other entities
mbed_official 0:7037ed05f54f 16 that control, are controlled by, or are under common control with that entity.
mbed_official 0:7037ed05f54f 17 For the purposes of this definition, "control" means (i) the power, direct or
mbed_official 0:7037ed05f54f 18 indirect, to cause the direction or management of such entity, whether by
mbed_official 0:7037ed05f54f 19 contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the
mbed_official 0:7037ed05f54f 20 outstanding shares, or (iii) beneficial ownership of such entity.
mbed_official 0:7037ed05f54f 21
mbed_official 0:7037ed05f54f 22 "You" (or "Your") shall mean an individual or Legal Entity exercising
mbed_official 0:7037ed05f54f 23 permissions granted by this License.
mbed_official 0:7037ed05f54f 24
mbed_official 0:7037ed05f54f 25 "Source" form shall mean the preferred form for making modifications, including
mbed_official 0:7037ed05f54f 26 but not limited to software source code, documentation source, and configuration
mbed_official 0:7037ed05f54f 27 files.
mbed_official 0:7037ed05f54f 28
mbed_official 0:7037ed05f54f 29 "Object" form shall mean any form resulting from mechanical transformation or
mbed_official 0:7037ed05f54f 30 translation of a Source form, including but not limited to compiled object code,
mbed_official 0:7037ed05f54f 31 generated documentation, and conversions to other media types.
mbed_official 0:7037ed05f54f 32
mbed_official 0:7037ed05f54f 33 "Work" shall mean the work of authorship, whether in Source or Object form, made
mbed_official 0:7037ed05f54f 34 available under the License, as indicated by a copyright notice that is included
mbed_official 0:7037ed05f54f 35 in or attached to the work (an example is provided in the Appendix below).
mbed_official 0:7037ed05f54f 36
mbed_official 0:7037ed05f54f 37 "Derivative Works" shall mean any work, whether in Source or Object form, that
mbed_official 0:7037ed05f54f 38 is based on (or derived from) the Work and for which the editorial revisions,
mbed_official 0:7037ed05f54f 39 annotations, elaborations, or other modifications represent, as a whole, an
mbed_official 0:7037ed05f54f 40 original work of authorship. For the purposes of this License, Derivative Works
mbed_official 0:7037ed05f54f 41 shall not include works that remain separable from, or merely link (or bind by
mbed_official 0:7037ed05f54f 42 name) to the interfaces of, the Work and Derivative Works thereof.
mbed_official 0:7037ed05f54f 43
mbed_official 0:7037ed05f54f 44 "Contribution" shall mean any work of authorship, including the original version
mbed_official 0:7037ed05f54f 45 of the Work and any modifications or additions to that Work or Derivative Works
mbed_official 0:7037ed05f54f 46 thereof, that is intentionally submitted to Licensor for inclusion in the Work
mbed_official 0:7037ed05f54f 47 by the copyright owner or by an individual or Legal Entity authorized to submit
mbed_official 0:7037ed05f54f 48 on behalf of the copyright owner. For the purposes of this definition,
mbed_official 0:7037ed05f54f 49 "submitted" means any form of electronic, verbal, or written communication sent
mbed_official 0:7037ed05f54f 50 to the Licensor or its representatives, including but not limited to
mbed_official 0:7037ed05f54f 51 communication on electronic mailing lists, source code control systems, and
mbed_official 0:7037ed05f54f 52 issue tracking systems that are managed by, or on behalf of, the Licensor for
mbed_official 0:7037ed05f54f 53 the purpose of discussing and improving the Work, but excluding communication
mbed_official 0:7037ed05f54f 54 that is conspicuously marked or otherwise designated in writing by the copyright
mbed_official 0:7037ed05f54f 55 owner as "Not a Contribution."
mbed_official 0:7037ed05f54f 56
mbed_official 0:7037ed05f54f 57 "Contributor" shall mean Licensor and any individual or Legal Entity on behalf
mbed_official 0:7037ed05f54f 58 of whom a Contribution has been received by Licensor and subsequently
mbed_official 0:7037ed05f54f 59 incorporated within the Work.
mbed_official 0:7037ed05f54f 60
mbed_official 0:7037ed05f54f 61 2. Grant of Copyright License.
mbed_official 0:7037ed05f54f 62
mbed_official 0:7037ed05f54f 63 Subject to the terms and conditions of this License, each Contributor hereby
mbed_official 0:7037ed05f54f 64 grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free,
mbed_official 0:7037ed05f54f 65 irrevocable copyright license to reproduce, prepare Derivative Works of,
mbed_official 0:7037ed05f54f 66 publicly display, publicly perform, sublicense, and distribute the Work and such
mbed_official 0:7037ed05f54f 67 Derivative Works in Source or Object form.
mbed_official 0:7037ed05f54f 68
mbed_official 0:7037ed05f54f 69 3. Grant of Patent License.
mbed_official 0:7037ed05f54f 70
mbed_official 0:7037ed05f54f 71 Subject to the terms and conditions of this License, each Contributor hereby
mbed_official 0:7037ed05f54f 72 grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free,
mbed_official 0:7037ed05f54f 73 irrevocable (except as stated in this section) patent license to make, have
mbed_official 0:7037ed05f54f 74 made, use, offer to sell, sell, import, and otherwise transfer the Work, where
mbed_official 0:7037ed05f54f 75 such license applies only to those patent claims licensable by such Contributor
mbed_official 0:7037ed05f54f 76 that are necessarily infringed by their Contribution(s) alone or by combination
mbed_official 0:7037ed05f54f 77 of their Contribution(s) with the Work to which such Contribution(s) was
mbed_official 0:7037ed05f54f 78 submitted. If You institute patent litigation against any entity (including a
mbed_official 0:7037ed05f54f 79 cross-claim or counterclaim in a lawsuit) alleging that the Work or a
mbed_official 0:7037ed05f54f 80 Contribution incorporated within the Work constitutes direct or contributory
mbed_official 0:7037ed05f54f 81 patent infringement, then any patent licenses granted to You under this License
mbed_official 0:7037ed05f54f 82 for that Work shall terminate as of the date such litigation is filed.
mbed_official 0:7037ed05f54f 83
mbed_official 0:7037ed05f54f 84 4. Redistribution.
mbed_official 0:7037ed05f54f 85
mbed_official 0:7037ed05f54f 86 You may reproduce and distribute copies of the Work or Derivative Works thereof
mbed_official 0:7037ed05f54f 87 in any medium, with or without modifications, and in Source or Object form,
mbed_official 0:7037ed05f54f 88 provided that You meet the following conditions:
mbed_official 0:7037ed05f54f 89
mbed_official 0:7037ed05f54f 90 You must give any other recipients of the Work or Derivative Works a copy of
mbed_official 0:7037ed05f54f 91 this License; and
mbed_official 0:7037ed05f54f 92 You must cause any modified files to carry prominent notices stating that You
mbed_official 0:7037ed05f54f 93 changed the files; and
mbed_official 0:7037ed05f54f 94 You must retain, in the Source form of any Derivative Works that You distribute,
mbed_official 0:7037ed05f54f 95 all copyright, patent, trademark, and attribution notices from the Source form
mbed_official 0:7037ed05f54f 96 of the Work, excluding those notices that do not pertain to any part of the
mbed_official 0:7037ed05f54f 97 Derivative Works; and
mbed_official 0:7037ed05f54f 98 If the Work includes a "NOTICE" text file as part of its distribution, then any
mbed_official 0:7037ed05f54f 99 Derivative Works that You distribute must include a readable copy of the
mbed_official 0:7037ed05f54f 100 attribution notices contained within such NOTICE file, excluding those notices
mbed_official 0:7037ed05f54f 101 that do not pertain to any part of the Derivative Works, in at least one of the
mbed_official 0:7037ed05f54f 102 following places: within a NOTICE text file distributed as part of the
mbed_official 0:7037ed05f54f 103 Derivative Works; within the Source form or documentation, if provided along
mbed_official 0:7037ed05f54f 104 with the Derivative Works; or, within a display generated by the Derivative
mbed_official 0:7037ed05f54f 105 Works, if and wherever such third-party notices normally appear. The contents of
mbed_official 0:7037ed05f54f 106 the NOTICE file are for informational purposes only and do not modify the
mbed_official 0:7037ed05f54f 107 License. You may add Your own attribution notices within Derivative Works that
mbed_official 0:7037ed05f54f 108 You distribute, alongside or as an addendum to the NOTICE text from the Work,
mbed_official 0:7037ed05f54f 109 provided that such additional attribution notices cannot be construed as
mbed_official 0:7037ed05f54f 110 modifying the License.
mbed_official 0:7037ed05f54f 111 You may add Your own copyright statement to Your modifications and may provide
mbed_official 0:7037ed05f54f 112 additional or different license terms and conditions for use, reproduction, or
mbed_official 0:7037ed05f54f 113 distribution of Your modifications, or for any such Derivative Works as a whole,
mbed_official 0:7037ed05f54f 114 provided Your use, reproduction, and distribution of the Work otherwise complies
mbed_official 0:7037ed05f54f 115 with the conditions stated in this License.
mbed_official 0:7037ed05f54f 116
mbed_official 0:7037ed05f54f 117 5. Submission of Contributions.
mbed_official 0:7037ed05f54f 118
mbed_official 0:7037ed05f54f 119 Unless You explicitly state otherwise, any Contribution intentionally submitted
mbed_official 0:7037ed05f54f 120 for inclusion in the Work by You to the Licensor shall be under the terms and
mbed_official 0:7037ed05f54f 121 conditions of this License, without any additional terms or conditions.
mbed_official 0:7037ed05f54f 122 Notwithstanding the above, nothing herein shall supersede or modify the terms of
mbed_official 0:7037ed05f54f 123 any separate license agreement you may have executed with Licensor regarding
mbed_official 0:7037ed05f54f 124 such Contributions.
mbed_official 0:7037ed05f54f 125
mbed_official 0:7037ed05f54f 126 6. Trademarks.
mbed_official 0:7037ed05f54f 127
mbed_official 0:7037ed05f54f 128 This License does not grant permission to use the trade names, trademarks,
mbed_official 0:7037ed05f54f 129 service marks, or product names of the Licensor, except as required for
mbed_official 0:7037ed05f54f 130 reasonable and customary use in describing the origin of the Work and
mbed_official 0:7037ed05f54f 131 reproducing the content of the NOTICE file.
mbed_official 0:7037ed05f54f 132
mbed_official 0:7037ed05f54f 133 7. Disclaimer of Warranty.
mbed_official 0:7037ed05f54f 134
mbed_official 0:7037ed05f54f 135 Unless required by applicable law or agreed to in writing, Licensor provides the
mbed_official 0:7037ed05f54f 136 Work (and each Contributor provides its Contributions) on an "AS IS" BASIS,
mbed_official 0:7037ed05f54f 137 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied,
mbed_official 0:7037ed05f54f 138 including, without limitation, any warranties or conditions of TITLE,
mbed_official 0:7037ed05f54f 139 NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are
mbed_official 0:7037ed05f54f 140 solely responsible for determining the appropriateness of using or
mbed_official 0:7037ed05f54f 141 redistributing the Work and assume any risks associated with Your exercise of
mbed_official 0:7037ed05f54f 142 permissions under this License.
mbed_official 0:7037ed05f54f 143
mbed_official 0:7037ed05f54f 144 8. Limitation of Liability.
mbed_official 0:7037ed05f54f 145
mbed_official 0:7037ed05f54f 146 In no event and under no legal theory, whether in tort (including negligence),
mbed_official 0:7037ed05f54f 147 contract, or otherwise, unless required by applicable law (such as deliberate
mbed_official 0:7037ed05f54f 148 and grossly negligent acts) or agreed to in writing, shall any Contributor be
mbed_official 0:7037ed05f54f 149 liable to You for damages, including any direct, indirect, special, incidental,
mbed_official 0:7037ed05f54f 150 or consequential damages of any character arising as a result of this License or
mbed_official 0:7037ed05f54f 151 out of the use or inability to use the Work (including but not limited to
mbed_official 0:7037ed05f54f 152 damages for loss of goodwill, work stoppage, computer failure or malfunction, or
mbed_official 0:7037ed05f54f 153 any and all other commercial damages or losses), even if such Contributor has
mbed_official 0:7037ed05f54f 154 been advised of the possibility of such damages.
mbed_official 0:7037ed05f54f 155
mbed_official 0:7037ed05f54f 156 9. Accepting Warranty or Additional Liability.
mbed_official 0:7037ed05f54f 157
mbed_official 0:7037ed05f54f 158 While redistributing the Work or Derivative Works thereof, You may choose to
mbed_official 0:7037ed05f54f 159 offer, and charge a fee for, acceptance of support, warranty, indemnity, or
mbed_official 0:7037ed05f54f 160 other liability obligations and/or rights consistent with this License. However,
mbed_official 0:7037ed05f54f 161 in accepting such obligations, You may act only on Your own behalf and on Your
mbed_official 0:7037ed05f54f 162 sole responsibility, not on behalf of any other Contributor, and only if You
mbed_official 0:7037ed05f54f 163 agree to indemnify, defend, and hold each Contributor harmless for any liability
mbed_official 0:7037ed05f54f 164 incurred by, or claims asserted against, such Contributor by reason of your
mbed_official 0:7037ed05f54f 165 accepting any such warranty or additional liability.