Frame 10: Tiny Frame
This example creates a BINARY Tiny frame with simple and multiple data and shows it.
Required Materials
1 x Waspmote 1 x Battery 1 x MiniUSB wire
Code
/*
* ------ FRAME_10_tiny_frame - WaspFrame Generate Tiny Frame --------
*
* Explanation: This type of frame has been designed to create short
* frames with data. The purpose of implementing tiny frames is to be
* able to create sensor data frames which can be send via short-payload
* protocols, like Sigfox or LoRaWAN.
*
* Meshlium does not support this frame format.
*
* Copyright (C) 2019 Libelium Comunicaciones Distribuidas S.L.
* http://www.libelium.com
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* Version: 3.0
* Design: David Gascón
* Implementation: Isabel Burillo
*/
#include <WaspFrame.h>
void setup()
{
// Init USB port
USB.ON();
USB.println(F("Start program"));
// init ACC
ACC.ON();
}
void loop()
{
// Create new frame
frame.createFrame(BINARY);
// set frame fields (multiple)
frame.addSensor(SENSOR_ACC, ACC.getX(), ACC.getY(), ACC.getZ());
// set frame fields
frame.addSensor(SENSOR_BAT, PWR.getBatteryLevel());
// Print frame
frame.showFrame();
// Generate Tiny Frame
frame.generateTinyFrame();
USB.print(F("- Tiny frame generated:"));
USB.printHexln(frame.bufferTiny, frame.lengthTiny);
delay(5000);
}
Output
#
Start program
===============================
Current BINARY Frame:
Length: 31
Frame Type: 6
frame (HEX): 3C3D3E061A5284BC32C8913E276E6F64655F303123003FEBFFB4FFCC03345D
frame (STR): <=>R��2ȑ>'node_01#?�����4]
===============================
- Tiny frame generated:000B3FEBFFB4FFCC03345D
===============================
Current BINARY Frame:
Length: 31
Frame Type: 6
frame (HEX): 3C3D3E061A5284BC32C8913E276E6F64655F303123013FF3FFBDFFD003345D
frame (STR): <=>R��2ȑ>'node_01#?�����4]
===============================
- Tiny frame generated:010B3FF3FFBDFFD003345D
===============================
Current BINARY Frame:
Length: 31
Frame Type: 6
frame (HEX): 3C3D3E061A5284BC32C8913E276E6F64655F303123023FECFFCFFFCC03345D
frame (STR): <=>R��2ȑ>'node_01#?�����4]
===============================
- Tiny frame generated:020B3FECFFCFFFCC03345D
===============================
Current BINARY Frame:
Length: 31
Frame Type: 6
frame (HEX): 3C3D3E061A5284BC32C8913E276E6F64655F303123033FE0FFC4FFC703345D
frame (STR): <=>R��2ȑ>'node_01#?�����4]
===============================
- Tiny frame generated:030B3FE0FFC4FFC703345D
===============================
Current BINARY Frame:
Length: 31
Frame Type: 6
frame (HEX): 3C3D3E061A5284BC32C8913E276E6F64655F303123043FE7FFBDFFBB03345D
frame (STR): <=>R��2ȑ>'node_01#?�����4]
===============================
- Tiny frame generated:040B3FE7FFBDFFBB03345D
===============================
Current BINARY Frame:
Length: 31
Frame Type: 6
frame (HEX): 3C3D3E061A5284BC32C8913E276E6F64655F303123053FEEFFCCFFCA03345D
frame (STR): <=>R��2ȑ>'node_01#?�����4]
===============================
- Tiny frame generated:050B3FEEFFCCFFCA03345D
===============================
Current BINARY Frame:
Length: 31
Frame Type: 6
frame (HEX): 3C3D3E061A5284BC32C8913E276E6F64655F303123063FE0FFBEFFBE03345D
frame (STR): <=>R��2ȑ>'node_01#?�����4]
===============================
- Tiny frame generated:060B3FE0FFBEFFBE03345D
Last updated