TOOTHPIC RF Solutions, TOOTHPIC Datasheet - Page 46

MODULE, BLUETOOTH, DATA ACQUISITION

TOOTHPIC

Manufacturer Part Number
TOOTHPIC
Description
MODULE, BLUETOOTH, DATA ACQUISITION
Manufacturer
RF Solutions
Datasheet

Specifications of TOOTHPIC

Svhc
No SVHC (15-Dec-2010)
Initialization
When the application starts, the I/O is initialized and Bluetooth security is set to authenticated and encrypted.
The authentication PIN is set to the pin used to access the FlexiPanel user interface.
Main Program Loop
In the main program loop, the software detects whether the pushbutton has been pressed. If it has, it
identifies whether this is a short press, a series of short presses or a long press.
The action taken on a short press depends on how OpenTooth is configured. If automatic triggering mode is
configured, it will start the ‘sleep’ mode because a user is staying in the vicinity. If manual triggering mode is
configured, the relay is triggered if a trusted device is in the vicinity. If in Weigand card reader mode, it will
transmit Weigand data.
If there have been five short presses, OpenTooth enters ‘new user’ mode where it lets a new user pair with it.
To do this it sets the PIN to the ‘new user’ PIN, cancels any current enquiry cycle and goes into slave mode.
While in ‘new user’ mode, it will wait 5 minutes for a new user to connect. If they do not do so, OpenTooth
resets.
If there was a long press, OpenTooth enters ‘setup’ mode where it lets a FlexiPanel client connect to it. To do
this it cancels any current enquiry cycle and starts the FlexiPanel server. While in ‘setup’’ mode, it will wait 5
minutes for a FlexiPanel client to connect. If they do not do so, OpenTooth resets.
If none of the above pushbutton events occur, OpenTooth will start a device enquiry to scan for devices. This
will result in a BMTE_Found for each device found and a BMTE_OK event when the scan is complete.
If a once-per-minute semaphore is raised to start an expired users check, OpenTooth checks all registered
users to decide whether any have expired. If they have, it deletes them from the table of registered users.
High Interrupt
No high priority interrupts are expected nor provided for.
Low Interrupt
Two types of low priority interrupts are provided for: when the clock ticks and if data is received from a remote
device.
Every second, a SWI_Tick software interrupt will be received. OpenTooth first checks that the ‘In DST no’
flag is up to date. Then, if the seconds value is zero, a semaphore will be raised so that, in the main program
loop, an expired users check will be executed.
It is possible that a malevolent user might try to connect to OpenTooth in ‘new user’ mode and then try to
send data to it. This will generate a SWI_BMTData software interrupt and OpenTooth immediately resets.
Page 46
• The I/O pins, semaphore flags, relay trigger modes, Weigand data modes and access log modes are
• Two structures are defined for Bluetooth devices. UserEntry2 is used to store the results of device
• Two UserEntry2 arrays of devices are declared for device enquiry. pInquiryTable stores the
• One UserEntry10 array is declared called pUserList which stores the registered users. This is held
#defined.
enquiry, contains the Bluetooth address and the device name. UserEntry10 is used to store
registered users, also stores expiry data and timed access information.
devices while device inquiry is in progress. When device enquiry is complete, pInquiryTable is
copied to pVicinityTable, which is a record of the all the devices found in the last complete inquiry.
in ROM memory from 0x01C000.
9-Apr-06
Toothpick 3.0.00007
DS380-8
© FlexiPanel Ltd
Patents apply and/or pending
www.FlexiPanel.com

Related parts for TOOTHPIC