
Websockets demo sending mag and acc data to socket.io
Dependencies: EthernetInterface FXOS8700Q WebSocketClient mbed-rtos mbed
main.cpp@0:7d2e022bc1ad, 2015-10-09 (annotated)
- Committer:
- Spookmx
- Date:
- Fri Oct 09 23:37:05 2015 +0000
- Revision:
- 0:7d2e022bc1ad
WebSockets demos sending acc and mag data
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Spookmx | 0:7d2e022bc1ad | 1 | /* FXOS8700Q Example Program |
Spookmx | 0:7d2e022bc1ad | 2 | * Copyright (c) 2014-2015 ARM Limited |
Spookmx | 0:7d2e022bc1ad | 3 | * |
Spookmx | 0:7d2e022bc1ad | 4 | * Licensed under the Apache License, Version 2.0 (the "License"); |
Spookmx | 0:7d2e022bc1ad | 5 | * you may not use this file except in compliance with the License. |
Spookmx | 0:7d2e022bc1ad | 6 | * You may obtain a copy of the License at |
Spookmx | 0:7d2e022bc1ad | 7 | * |
Spookmx | 0:7d2e022bc1ad | 8 | * http://www.apache.org/licenses/LICENSE-2.0 |
Spookmx | 0:7d2e022bc1ad | 9 | * |
Spookmx | 0:7d2e022bc1ad | 10 | * Unless required by applicable law or agreed to in writing, software |
Spookmx | 0:7d2e022bc1ad | 11 | * distributed under the License is distributed on an "AS IS" BASIS, |
Spookmx | 0:7d2e022bc1ad | 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
Spookmx | 0:7d2e022bc1ad | 13 | * See the License for the specific language governing permissions and |
Spookmx | 0:7d2e022bc1ad | 14 | * limitations under the License. |
Spookmx | 0:7d2e022bc1ad | 15 | */ |
Spookmx | 0:7d2e022bc1ad | 16 | |
Spookmx | 0:7d2e022bc1ad | 17 | #include "mbed.h" |
Spookmx | 0:7d2e022bc1ad | 18 | #include "FXOS8700Q.h" |
Spookmx | 0:7d2e022bc1ad | 19 | #include "EthernetInterface.h" |
Spookmx | 0:7d2e022bc1ad | 20 | #include "Websocket.h" |
Spookmx | 0:7d2e022bc1ad | 21 | |
Spookmx | 0:7d2e022bc1ad | 22 | Serial pc(USBTX, USBRX); |
Spookmx | 0:7d2e022bc1ad | 23 | I2C i2c(PTE25, PTE24); |
Spookmx | 0:7d2e022bc1ad | 24 | |
Spookmx | 0:7d2e022bc1ad | 25 | FXOS8700QAccelerometer acc(i2c, FXOS8700CQ_SLAVE_ADDR1); // Configured for the FRDM-K64F with onboard sensors |
Spookmx | 0:7d2e022bc1ad | 26 | FXOS8700QMagnetometer mag(i2c, FXOS8700CQ_SLAVE_ADDR1); |
Spookmx | 0:7d2e022bc1ad | 27 | |
Spookmx | 0:7d2e022bc1ad | 28 | |
Spookmx | 0:7d2e022bc1ad | 29 | int main(void) |
Spookmx | 0:7d2e022bc1ad | 30 | { |
Spookmx | 0:7d2e022bc1ad | 31 | |
Spookmx | 0:7d2e022bc1ad | 32 | float faX, faY, faZ, fmX, fmY, fmZ; |
Spookmx | 0:7d2e022bc1ad | 33 | |
Spookmx | 0:7d2e022bc1ad | 34 | //Ethernet Interface |
Spookmx | 0:7d2e022bc1ad | 35 | EthernetInterface eth; |
Spookmx | 0:7d2e022bc1ad | 36 | eth.init(); |
Spookmx | 0:7d2e022bc1ad | 37 | eth.connect(); |
Spookmx | 0:7d2e022bc1ad | 38 | printf("IP Address is %s\n\r", eth.getIPAddress()); |
Spookmx | 0:7d2e022bc1ad | 39 | |
Spookmx | 0:7d2e022bc1ad | 40 | //Sockets |
Spookmx | 0:7d2e022bc1ad | 41 | Websocket ws("ws://node-red-spookmx.c9.io/ws/inputs"); |
Spookmx | 0:7d2e022bc1ad | 42 | ws.connect(); |
Spookmx | 0:7d2e022bc1ad | 43 | |
Spookmx | 0:7d2e022bc1ad | 44 | acc.enable(); |
Spookmx | 0:7d2e022bc1ad | 45 | mag.enable(); |
Spookmx | 0:7d2e022bc1ad | 46 | ws.send("{'success':true, 'payload':'Starting Socket TX'}"); |
Spookmx | 0:7d2e022bc1ad | 47 | printf("{'success':true, 'payload':'Starting Socket TX'}\n\r"); |
Spookmx | 0:7d2e022bc1ad | 48 | while (true) { |
Spookmx | 0:7d2e022bc1ad | 49 | acc.getX(faX); |
Spookmx | 0:7d2e022bc1ad | 50 | acc.getY(faY); |
Spookmx | 0:7d2e022bc1ad | 51 | acc.getZ(faZ); |
Spookmx | 0:7d2e022bc1ad | 52 | mag.getX(fmX); |
Spookmx | 0:7d2e022bc1ad | 53 | mag.getY(fmY); |
Spookmx | 0:7d2e022bc1ad | 54 | mag.getZ(fmZ); |
Spookmx | 0:7d2e022bc1ad | 55 | char output[500]; |
Spookmx | 0:7d2e022bc1ad | 56 | snprintf(output,500,"ACC: X=%1.4ff Y=%1.4ff Z=%1.4ff \t MAG: X=%4.1ff Y=%4.1ff Z=%4.1ff\r\n", faX, faY, faZ, fmX, fmY, fmZ); |
Spookmx | 0:7d2e022bc1ad | 57 | printf("ACC: X=%1.4ff Y=%1.4ff Z=%1.4ff \t MAG: X=%4.1ff Y=%4.1ff Z=%4.1ff\r\n", faX, faY, faZ, fmX, fmY, fmZ); |
Spookmx | 0:7d2e022bc1ad | 58 | ws.send(output); |
Spookmx | 0:7d2e022bc1ad | 59 | puts(""); |
Spookmx | 0:7d2e022bc1ad | 60 | //wait(5.0f); |
Spookmx | 0:7d2e022bc1ad | 61 | } |
Spookmx | 0:7d2e022bc1ad | 62 | } |