sigfox
Fork of Sigfox by
Sigfox.h@6:799a482a7024, 2017-05-29 (annotated)
- Committer:
- Raffaello
- Date:
- Mon May 29 19:42:14 2017 +0000
- Revision:
- 6:799a482a7024
- Parent:
- 5:66e05787ad5c
- Child:
- 7:48396d48ae12
Added voltage message reader
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| Raffaello | 0:5e0ae613c18c | 1 | /* Copyright (c) 2015 ARM Limited |
| Raffaello | 0:5e0ae613c18c | 2 | * |
| Raffaello | 0:5e0ae613c18c | 3 | * Licensed under the Apache License, Version 2.0 (the "License"); |
| Raffaello | 0:5e0ae613c18c | 4 | * you may not use this file except in compliance with the License. |
| Raffaello | 0:5e0ae613c18c | 5 | * You may obtain a copy of the License at |
| Raffaello | 0:5e0ae613c18c | 6 | * |
| Raffaello | 0:5e0ae613c18c | 7 | * http://www.apache.org/licenses/LICENSE-2.0 |
| Raffaello | 0:5e0ae613c18c | 8 | * |
| Raffaello | 0:5e0ae613c18c | 9 | * Unless required by applicable law or agreed to in writing, software |
| Raffaello | 0:5e0ae613c18c | 10 | * distributed under the License is distributed on an "AS IS" BASIS, |
| Raffaello | 0:5e0ae613c18c | 11 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| Raffaello | 0:5e0ae613c18c | 12 | * See the License for the specific language governing permissions and |
| Raffaello | 0:5e0ae613c18c | 13 | * limitations under the License. |
| Raffaello | 0:5e0ae613c18c | 14 | * |
| Raffaello | 0:5e0ae613c18c | 15 | * @section DESCRIPTION |
| Raffaello | 0:5e0ae613c18c | 16 | * |
| Raffaello | 0:5e0ae613c18c | 17 | * Send command to Sigfox |
| Raffaello | 0:5e0ae613c18c | 18 | * |
| Raffaello | 0:5e0ae613c18c | 19 | */ |
| Raffaello | 6:799a482a7024 | 20 | #ifndef SIGFOX_H |
| Raffaello | 6:799a482a7024 | 21 | #define SIGFOX_H |
| Raffaello | 0:5e0ae613c18c | 22 | |
| Raffaello | 0:5e0ae613c18c | 23 | #include "ATParser.h" |
| Raffaello | 0:5e0ae613c18c | 24 | #include "mbed.h" |
| Raffaello | 0:5e0ae613c18c | 25 | |
| Raffaello | 6:799a482a7024 | 26 | typedef struct _sigfoxvoltage { |
| Raffaello | 6:799a482a7024 | 27 | double current; |
| Raffaello | 6:799a482a7024 | 28 | double last; |
| Raffaello | 6:799a482a7024 | 29 | } sigfoxvoltage_t; |
| Raffaello | 6:799a482a7024 | 30 | |
| Raffaello | 0:5e0ae613c18c | 31 | class Sigfox |
| Raffaello | 0:5e0ae613c18c | 32 | { |
| Raffaello | 0:5e0ae613c18c | 33 | private: |
| Raffaello | 0:5e0ae613c18c | 34 | ATParser *_at; |
| Raffaello | 2:d07e3b39ff74 | 35 | char ID[9]; |
| Raffaello | 2:d07e3b39ff74 | 36 | char PAC[17]; |
| Raffaello | 6:799a482a7024 | 37 | char tmp[12]; |
| Raffaello | 0:5e0ae613c18c | 38 | |
| Raffaello | 0:5e0ae613c18c | 39 | public: |
| Raffaello | 0:5e0ae613c18c | 40 | Sigfox(ATParser &at) : _at(&at) { |
| Raffaello | 0:5e0ae613c18c | 41 | |
| Raffaello | 0:5e0ae613c18c | 42 | }; |
| Raffaello | 0:5e0ae613c18c | 43 | |
| Raffaello | 0:5e0ae613c18c | 44 | bool ready(); |
| Raffaello | 0:5e0ae613c18c | 45 | |
| Raffaello | 3:279bed56f354 | 46 | bool send(const char *data, char* response=NULL); |
| Raffaello | 4:c77d5019b264 | 47 | /** |
| Raffaello | 4:c77d5019b264 | 48 | * true = public |
| Raffaello | 4:c77d5019b264 | 49 | * false = private |
| Raffaello | 4:c77d5019b264 | 50 | */ |
| Raffaello | 4:c77d5019b264 | 51 | bool setKey(bool type); |
| Raffaello | 1:93450d8b2540 | 52 | |
| Raffaello | 2:d07e3b39ff74 | 53 | bool setPower(uint8_t power=15); |
| Raffaello | 2:d07e3b39ff74 | 54 | |
| Raffaello | 1:93450d8b2540 | 55 | bool setPowerMode(uint8_t power); |
| Raffaello | 1:93450d8b2540 | 56 | |
| Raffaello | 2:d07e3b39ff74 | 57 | void wakeup(DigitalInOut sig_rst, float time=0.2); |
| Raffaello | 1:93450d8b2540 | 58 | |
| Raffaello | 5:66e05787ad5c | 59 | bool saveConfig(); |
| Raffaello | 5:66e05787ad5c | 60 | |
| Raffaello | 2:d07e3b39ff74 | 61 | char *getID(); |
| Raffaello | 2:d07e3b39ff74 | 62 | |
| Raffaello | 2:d07e3b39ff74 | 63 | char *getPAC(); |
| Raffaello | 6:799a482a7024 | 64 | |
| Raffaello | 6:799a482a7024 | 65 | sigfoxvoltage_t getVoltages(); |
| Raffaello | 6:799a482a7024 | 66 | }; |
| Raffaello | 6:799a482a7024 | 67 | |
| Raffaello | 6:799a482a7024 | 68 | #endif /* SIGFOX_H */ |
