Simblee by RF Digital

Similar documents
IS187x_BM7x - BLEDK3 v1.01 Release Note

Data Acquisition Module with I2C interface «I2C-FLEXEL» User s Guide

Table 1 below is a complete list of MPTH commands with descriptions. Table 1 : MPTH Commands. Command Name Code Setting Value Description

Brunata Optuna W (171)

Bluetooth SMART Advertise-Only Beacon Reference Design

Bluetooth for device discovery. Networking Guide

USER GUIDE EDBG. Description

RFID MODULE Mifare Reader / Writer SL030 User Manual Version 2.6 Nov 2012 StrongLink

Data sheet Wireless UART firmware version 4.02

SKYEMODULE GEMINI DATASHEET VERSION

Introduction the Serial Communications Huang Sections 9.2, 10.2 SCI Block User Guide SPI Block User Guide

Condemn the copycat company copied behavior on HM-10!!!!!! If you buy a fake, please apply for a refund guarantee your legitimate rights

PN532 NFC RFID Module User Guide

In-System Programmer USER MANUAL RN-ISP-UM RN-WIFLYCR-UM

RN-131-PICTAIL & RN-171-PICTAIL Evaluation Boards

Interface Protocol v1.2

FLYPORT Wi-Fi G

Implementing SPI Master and Slave Functionality Using the Z8 Encore! F083A

Embedded Systems Design Course Applying the mbed microcontroller

Wireless Communication With Arduino

RFID MODULE Mifare Reader / Writer SL031 User Manual Version 2.7 Nov 2012 StrongLink

USB2.0 <=> I2C V4.4. Konverter Kabel und Box mit Galvanischetrennung

TURBO PROGRAMMER USB, MMC, SIM DEVELOPMENT KIT

Web Site: Forums: forums.parallax.com Sales: Technical:

APPLICATION NOTE. Atmel AT03188: Performance Test EVK with External FEM. Atmel MCU Wireless. Features. Description

GM862 Arduino Shield

SAH2217 Enhanced ATHEROS GPS Module with ultra high sensitivity and antenna open/short detection/protection

UniPi technical documentation REV 1.1

10. XBee Command Reference Tables

Microcontroller Programming Beginning with Arduino. Charlie Mooney

MeshBee Open Source ZigBee RF Module CookBook

GTS-4E Hardware User Manual. Version: V1.1.0 Date:

SRF08 Ultra sonic range finder Technical Specification

Hagenberg Linz Steyr Wels. API Application Programming Interface

AT15007: Differences between ATmega328/P and ATmega328PB. Introduction. Features. Atmel AVR 8-bit Microcontrollers APPLICATION NOTE

BLE113 DEVELOPMENT KIT

BLUETOOTH SERIAL PORT PROFILE. iwrap APPLICATION NOTE

Application Note. Introduction AN2471/D 3/2003. PC Master Software Communication Protocol Specification

AN601 I2C 2.8 Communication Protocol. SM130 SM130 - Mini APPLICATION NOTE

NHD-0420D3Z-FL-GBW-V3

SYMETRIX SOLUTIONS: TECH TIP August 2015

SG Miniature Wi-Fi Radio

WiFly Command Reference, Advanced Features & Applications User s Guide

Adafruit MCP9808 Precision I2C Temperature Sensor Guide

AN3187 Application note

Lab Experiment 1: The LPC 2148 Education Board

Smart Wireless Devices. LAN-WMBUS-G Wireless MBUS, high performance Temperature, Humidity and Pulse counting device.

User s Manual of Board Microcontroller ET-MEGA2560-ADK ET-MEGA2560-ADK

ESP 8266: A BREAKTHROUGH IN WIRELESS SENSOR NETWORKS AND INTERNET OF THINGS

Raspberry Pi. Hans- Petter Halvorsen, M.Sc.

Wireless Temperature

Arduino ADK Back. For information on using the board with the Android OS, see Google's ADK documentation.

Serial Communications

Design and Implementation of Home Monitoring System Using RF Technology

ATBTLC1000 BluSDK USER GUIDE. Bluetooth Low Energy API: Software Development. Description

Sensor Technology Interface

AN UART/SPI/I 2 C code examples. Document information. Abstract Simple code examples are provided for UART0, SPI and I 2 C.

Universal EXTension connector (UEXT)

RFID MODULE Mifare Reader / Writer SL032 User Manual Version 1.5 Nov 2012 StrongLink

Bluetooth HID Profile

Using Xbee in Serial Communication

Bluetooth UART/RS232 Module

Consult protocol, Nissan Technical egroup, Issue 6

EnOcean Serial Protocol 3 (ESP3)

RN-131-PICTAIL & RN-171-PICTAIL Web-Server Demo Application

1. Summary. 2. Module Application Instruction. DFPLayer Mini. 1.2.Features. 1.3.Application Specification Description

QSG108: Blue Gecko Bluetooth Smart Software Quick-Start Guide

SPI I2C LIN Ethernet. u Today: Wired embedded networks. u Next lecture: CAN bus u Then: wireless embedded network

NB3H5150 I2C Programming Guide. I2C/SMBus Custom Configuration Application Note

Hardware Prerequisites Atmel SAM W25 Xplained Pro Evaluation Kit Atmel IO1 extension Micro-USB Cable (Micro-A / Micro-B)

EARTH PEOPLE TECHNOLOGY SERIAL GRAPH TOOL FOR THE ARDUINO UNO USER MANUAL

PM0237 Programming manual

Internal Oscillator. I 2 C Interface. SPI Interface. Controller. Internal Registers Port Controller. Eight I/O Pins. Figure 1.

A RF18 Remote control receiver MODULE

LCD I 2 C/Serial RX Backpack. Data Sheet. LCD to I2C/Serial RX Backpack I2C or Serial RX communication with Standard 16 Pin LCD modules

3-Channel 0-20mA analyzer with CAN bus and logic output. A2C-mA-M12-X. General Description. Features. Specifications

DISCONTINUED. AtlasScientific. as of 10/21/13. E.C. Circuit. Biology Technology. Features

Waspmote Digimesh. Networking Guide

Sample EHG CL and EHG SL10 16-bit Modbus RTU Packet

Please refer to the chapters below for detailed information about all aspects of the products usage.

Guangzhou HC Information Technology Co., Ltd. Product Data Sheet

DS1621 Digital Thermometer and Thermostat

ARM Thumb Microcontrollers. Application Note. Software ISO 7816 I/O Line Implementation. Features. Introduction

76-77 GHz RF Transmitter Front-end for W-band Radar Applications

Part 1. MAX BIT DAC with an Arduino Board. MIDI to Voltage Converter Part1

CB-OLP425 DEVELOPMENT KIT GETTING STARTED

Part Number Description Packages available

Hacking Medical Devices for Fun and Insulin: Breaking the Human SCADA System Jerome Radcliffe

nblue TM BR-LE4.0-D2A (CC2564)

How To Use An Adh8012 Gsm Gprs Module With A Gsm (Gsm) Gpros (Gsp) Gpls (Geo) Gsp (Gpl) Gs

AN588 ENERGY HARVESTING REFERENCE DESIGN USER S GUIDE. 1. Kit Contents. 2. Introduction. Figure 1. Energy Harvesting Sensor Node

Introducing the Adafruit Bluefruit LE Sniffer

MCB3101 (Class I) WiRobot Serial Bluetooth Wireless Module User Manual

MXL5007T TUNER RADIO

Pmod peripheral modules are powered by the host via the interface s power and ground pins.

RPDO 1 TPDO 1 TPDO 5 TPDO 6 TPDO 7 TPDO 8

APPLICATION NOTE. Atmel AT02607: Wireless Product Development Using Atmel Studio and ASF. Atmel MCU Wireless. Description.

Serial Communications (Chapter 10) RS232, SPI, I2C

Technical description MX-1 VB Edge

VirtualWire. Copyright (C) Mike McCauley. 1.0 Introduction. 2.0 Overview

Transcription:

10mm Simblee by RF Digital BLE Functions 7mm 2mm RFD77101 Simblee Module SIMBLEE BLE FUNCTIONS REFERENCE Simblee BLE Stack - SimbleeBLE.begin() This function starts the BLE Stack and begins advertising. SimbleeBLE.begin(); - SimbleeBLE.end() This function stops the BLE Stack and stops advertising. SimbleeBLE.end(); - SimbleeBLE.deviceName This variable allows you to set the BLE device name as it will appear when advertising SimbleeBLE.deviceName = Simblee ; //Sets the device name to Simblee - SimbleeBLE.advertismentData This variable allows you to set the BLE advertisment data. SimbleeBLE.advertismentData = Unit A ; //Will include Unit A in the advertisement packet. Note: Advertisment length and devicename length must be <= 18 bytes - SimbleeBLE.advertisementInterval This variable allows you to set the BLE advertisment interval in milliseconds. SimbleeBLE.advertisementInterval = 100; //Sets the interval to 100ms - SimbleeBLE.txPowerLevel This variable allows you to set the BLE transmit power in dbm. You can select any value between -20 to +4 dbm in 4dBm increments. (ex. -20, -16, -12, -8, -4, 0, +4) SimbleeBLE.txPowerLevel = +4; //Sets the transmit power to max +4dBm - SimbleeBLE.send() This function allows you to send data via BLE. SimbleeBLE.send(char data) or SimbleeBLE.send(const char *data, int len); SimbleeBLE.send = (1); //Sends a 1 or SimbleeBLE.send = (myarray, 5); //Sends a character array called myarray with a length of 5

BLE Stack Simblee BLE Stack Continued - SimbleeBLE.sendByte() This function allows you to send a Byte via BLE. uint8_t mybyte = 50; SimbleeBLE.sendByte = (mybyte); //Sends mybyte - SimbleeBLE.sendInt() This function allows you to send a INT via BLE. int mybyte = 5000; SimbleeBLE.sendInt = (mybyte); //Sends mybyte - SimbleeBLE.sendFloat() This function allows you to send a float via BLE. float mynumber = 16.49; SimbleeBLE.sendFloat = (mynumber); //Sends mynumber - SimbleeBLE.radioActive This function allows you to check whether the radio is active or not. Since the radio take priority over resources when it is active, this is very useful in timing critical applications, where you can wait until the radio is off to run your critical code. // Wait while the Radio is active while (SimbleeBLE.radioActive) ; // Timing Critical Code goes here

Callbacks Simblee BLE Callbacks - SimbleeBLE_onAdvertisement() This function allows you to run a piece of code everytime the radio advertises. void SimbleeBLE_onAdvertisement(bool start){ // Insert code here - SimbleeBLE_onConnect() This function allows you to run a piece of code everytime you connect to the radio. void SimbleeBLE_onConnect(){ // Insert code - SimbleeBLE_onDisconnect() This function allows you to run a piece of code everytime you disconnect to the radio. void SimbleeBLE_onDisconnect(){ // Insert code here - SimbleeBLE_onReceive() This function returns data from the radio. void SimbleeBLE_onReceive(char *data, int len){ uint8_t mybyte = data[0]; // store first char in array to mybyte Serial.println(myByte); // print mybyte via serial - SimbleeBLE_onRSSI() This function returns the dbm signal strength after connecting void SimbleeBLE_onRSSI(int rssi){ Serial.println(rssi); // print rssi value via serial

Sleep and Wake Simblee Sleep and Wake - Simblee_ULPDelay() This function sets the module in an ultra low power delay for the amount of time specified. Simblee_ULPDelay(uint64_t ms); Simblee_ULPDelay(350); // 350 milliseconds Simblee_ULPDelay(SECONDS(350)); //350 seconds Simblee_ULPDelay(MINUTES(350)); //350 minutes Simblee_ULPDelay(HOURS(10)); // 10 hours Simblee_ULPDelay(DAY(3)); // 3 days Simblee_ULPDelay(INFINITE); // Stay in ultra low power mode until interrupt from the BLE or pin Wake() - Simblee_pinWake() This function configures a pin to wake up the device pinmode(5, INPUT); // set pin 5 to input Simblee_pinWake(5, HIGH); // configures pin 5 to wake up device on a high signal - Simblee_pinWoke() This function allows you to test whether a pin caused a wakeup Simblee_ULPDelay(INFINITE); // stay in ULP forever if (Simblee_pinWoke(5)) //do something here if pin 5 caused us to wake up Simblee_resetPinWake(5); // reset state of pin that caused wakeup Note: You must resetpinwake otherwise you will be stuck in the pinwoke loop. - Simblee_resetPinWake() This function resets the state of apin that caused a wakeup. You must reset this after using a pinwoke function otherwise you will be stuck in your pinwoke loop. if (Simblee_pinWoke(5)) //do something here if pin 5 caused us to wake up Simblee_resetPinWake(5); // reset state of pin that caused wakeup

Sleep and Wake continued Simblee Sleep and Wake continued - Simblee_pinWakeCallback() This function configures a pin to wake the device and execute a callback. Simblee_pinWakeCallback( uint32_t ulpin, uint32_t dwwake, pin_callback_t callback ) ; pinmode(6, INPUT); // set pin 6 to input Simblee_pinWakeCallback(6, HIGH, mypincallback); // configure pin 6 to wake up the device and run function mypincallback - Simblee_systemReset() This function resets the system. Simblee_systemReset(); - Simblee_systemOff() This function turns the system off into an ultra low power state where it can wake up via a pinwake. Simblee_systemOff();

ibeacon Simblee ibeacon SimbleeBLE.iBeacon = true; //Enable ibeacon advertising SimbleeBLE.begin(); //Start BLE stack Example with custom UUID, Major, Minor and Measured Power: SimbleeBLE.iBeacon = true; //Enable ibeacon advertising uint8_t uuid[16] = {0xE2, 0xC5, 0x6D, 0xB5, 0xDF, 0xFB, 0x48, 0xD2, 0xB0, 0x60, 0xD0, 0xF5, 0xA7, 0x10, 0x96, 0xE0; //Custom ibeacon UUID memcpy(simbleeble.ibeaconuuid, uuid, sizeof(simbleeble.ibeaconuuid)); SimbleeBLE.iBeacon Major = 1234; //Custom ibeacon Major SimbleeBLE.iBeaconMinor = 5678; //Custom ibeacon Minor SimbleeBLE.iBeaconMeasuredPower = 0xC6; //2 s complement ibeacon Power Measurement at 1 Meter (default is 0xC5 = -59dBm SimbleeBLE.begin(); //Start BLE stack

Simblee Miscellaneous Functions Simblee Miscellaneous Functions - Simblee_temperature() This function returns a sample from the on-chip temperature sensor. Simblee_temperature(int scale) float temp = Simblee_temperature(CELSIUS); // returns temperature in Celsius and stores in float temp or float temp = Simblee_temperature(FAHRENHEIT); // returns temperature in Celsius and stores in float temp - Serial.begin (baud, RX pin, TX pin) This function is a standard Arduino function, but the Simblee allows you to map the UART to any of the available GPIOs, to map them to GPIOs other than the default GPIO 0 and GPIO 1 you can use this function. Serial.begin(9600, 2, 3); // Starts the UART at 9600 with RX on GPIO 2 and TX on GPIO 3 -Wire.beginOnPins (SCL pin, SDA pin) This function allows you to map the I2C pins from the default GPIO 5 and GPIO 6 to any of the available GPIOs. Wire.beginOnPins(2, 3); // Starts the I2C interface with SCL on GPIO 2 and SDA on GPIO 3 -Remapping the SPI pins To remap the SPI pins from the default MISO (GPIO 3), SCK (GPIO 4), MOSI (GPIO 5), SS/CS (GPIO 6) to any of the available GPIOs open up the variant.h file in the /variants/simblee folder and modify the following definitions: #define PIN_SPI_SS (6u) #define PIN_SPI_MOSI (5u) #define PIN_SPI_MISO (3u) #define PIN_SPI_SCK (4u) For more information on programming the Simblee modules, please see: Simblee Quick Start Guide Simblee User Guide Getting Started with SimbleeCOM Getting Started with Simblee for Mobile