We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF or read online on Scribd
You are on page 1/ 19
Ble805Fc - Elektra WikiBle805Fc - Elektra Wiki
Ble805Fc-2014-12-12-095034
Bles05Fc..
Ble80SFc/DataFormat, 8
BleB0SFc/Radiolntertace..nnnrnnn 2
Ble805Fc/MiscimplementationDetails.
16Ble805Fc
1. Description
1. Details
2, Subpages
3. Over the air updating 805FC radio
4, Updating 805FC firmware
5, Entering FCC Mode (only included in special builds)
1. Description
+ Summary The 805FC will need a radio module (CO2540) with modified firmware similar to the IR Adapter
(irg00FC)
+ Repository yiteyit.sesy. fluke. com: igdev/projects/elektra/sw/cc254x
* Project Owner Ryan Carney
1.1. Details
‘The main processor used in the 805 and 805FC is the K60
2. Subpages
Reference
+ /DataFormat
+ /Radiointerface
Implementation Details
* /MiscimplementationDetails
Other
+ /PlanningAndScoping
* /SoftwareTesting
3. Over the air updating 805FC radio
Required: Access oc254x git repository
‘The pyFWUpdate.py script is in tools/py
4. Updating 805FC firmware
+ Hold setup + right buttons
+ Plug unit into a computer
* Unit should be in firmware update mode
* Copy update file (must be named FLKB05_Img.bin) into the 805 drive recognized by your computer
* Unplug unit from computer and restart the unit
* Unit should then update i's own firmware
Ble805Fc 12/12/14 09:50:36 1Ble805Fe
5. Entering FCC Mode (only included in special builds)
+ Hold setup + right buttons on start up
last edited 2014-11-18 22:11:06 by RyanCamey
Ble805Fc 12/12/14 09:50:36Ble805Fc/DataFormat
1, Format of the record data being sent to radio
2. Decoding Raw Data
1. Severity Scale
2. Crest Factor (CFs Value)
3. Machine Category
4. Temperature Units
5. Measurement Units
6. RPM
7. Material Emissivity
8. Unit Conversion formulas
1. Acceleration Units
2. Velocity Units
3. Displacement Units
4. HF-Acceleration Units
8. Temperature Units,
3. Displayed Values
1. Bearing
2. HF Acceleration
3. Acceleration
4. Velocity
5. Displacement
6. Misc
1. Format of the record data being sent to radio
bb_Recordinto:
adi;
‘The main structure named savedDataToRadio is being sent to Radio and is what is downloaded using the 805FC BLE
interface. The size of the entire structure that is sent out the radio is 92 Bytes with padding (89 Bytes without padding)
‘The savedDataToRadio structure is made up of two structures first is the the structure named Record. Itis being used
by 805FC in order to save reading information to the 805FCs internal database. The Record structure contains the
DATE_STRUCT that contains the 805FCs representation of the current date and time,
‘The second structure st_parameters_t contains parameters like materialEmissivily, severityScale, etc. grouped together
in The structure named DATE_STRUCT in the Record structure shall be as follows: typedef struct date_struct
1 J Prinary Nene
1; 77 Secondary Name
J noveleration RMS
Ble805Fc/DataFormat 12/12/14 09:50:36Ble805Fc/DataFormat
temps 1) Teper
J excernal/ Internal Sensor Sensitivity
U1 1 pyce of pads: °
secords
nouk; —// 0-23,
i 110-58
raverialiniseiy J Naver:
reassrementUnits; /// Default measurement to display
tenperaturevnits; // Default temperature type to display (Celsiu
‘The parameters Acceleration Peak, Acceleration RMS, Velocity RMS, Displacement RMS, HF—Acceleration Peak,
HF—Acceleration RMS etc., are the raw ADC counts in volts and the Mobile application has to calculate the actual value
using the corresponding formula with respect to the measurementUnits that is being sent
‘The Sen_Sensitivity variable holds the sensitivity of either Internal or External Sensor as only one sensor will be active at
the same time. In the existing 805 device, user has an option of selecting the sensitivity of only the External Sensor
whereas the sensitivity of Internal sensor shall be taken from calibration data. It shall NOT be a€-0a€"™ if external sensor
is not being used.
2. Decoding Raw Data
Ble805Fc/DataFormat 12/12/14 09:50:36 4High Frequency
4,000 He to 20,000 Hz
Overall Vibration
Frequency Range:
10 Hz to 1,000 Hz
Temperature
-20°C to. 200°C
2.1, Severity Scale
Ble805Fc/DataFormat
eg play
Bearing
Bearing Vibration
(Cr+)
Overall Vibration
Temperature
68.7 °F
ID:
TYPE : Recip Chiller IR Temperature
RPM : >600
Severity Scale
No repair action is recommended.
No immediate repair action is required. Increase the frequency
of measurements and monitor the condition of the machine.
Have a knowledgeable vibration technician conduct
more advanced tests at the earliest opportunity. Consider
maintenance action at the next planned downtime or
maintenance period.
Have a knowledgeable vibration technician conduct more
advanced tests as soon as possible. Consider immediate
shutdown of the machine to make repairs and prevent failure.
‘The corresponding code value for the severity scale shall be update din the structure variable severityScale of the record
structure that is sent to Radio.
4 The severity scale can be ignored when a machine category is set to 38 of "Skip"
Ble805Fc/DataFormat
12/12/14 09:50:36 5Ble805Fc/DataFormat
Code | Severity Scale
1 |"a000"
‘SATISFACTORY’
'UNSATISFACTORY"
UNACCEPTABLE”
2
3
4
2.2. Crest Factor (CF+ Value)
‘The Meter operates with a proprietary algorithm called Crest Factor + (CF+). To make interpretation easy for the user, the
CFs value shows a severity range. The higher the CF+ value is, the more the bearing damage. The CF+ value shows for
‘each measurement in the Bearing field on the Meter display. Push left and right to toggle between the CF+ value and the
high frequency vibration level in units of acceleration.
But the "cfplus” variable in the record structure shall contain the value of bearing fault factor that range from 0-20 usually.
‘The Crest Factor or C+ value shall be displayed on the LCD as the top severly scale. The cfplus value ranges as follows:
Code Ranges |CF+ Severity
<5 (g0oD
>Sand<=10 | SATISFACTORY
>10 and <=15 [UNSATISFACTORY
>15 UNACCEPTABLE
2.3. Machine Category
In the Category column data part would be numbers from 1 to $8 and for each category specitic number should be
substituted as mentioned below. The CSV Data mentioned below shall be updated in the record structure for the variable
“category” and sent to Radio.
Code |Machine Category
1__ [Axial Flow Fan
Belt Drive (Motor & Fan)
Belt-Driven Fans 1800-3600 RPM
Belt-Driven Fans 600-1799 RPM
Boiler Feed Pump
Centrifugal Chillers
Centif Air Comp-int Gear (Axial)
Centrif Air Comp-int Gear (Radial)
Centif Air Compressor
10 _ [Direct Drive (Motor & Fan)
11 __ [Direct Drive Fans
e]@|s]@]@]=]e]|=
12 _ | Forced Draft Fans-Fim bros
13 [Gearbox input
Ble805Fc/DataFormat 12/12/14 09:50:36 6Ble805Fc/DataFormat
14 _ [Gearbox Output
15 |Horiz Centrif Double Suction
16 _ [Horiz Centrif Single Suction
17__| Induced Draft Fans—Film bros
18 _|Long, Hollow Drive Shatt (Motor)
19 _ [Machine Tool Motor
20 {Multi-Stage Centrit Blower
21 _ [Pos Disp Gear Pump
22 _|Pos Disp Piston Pump
23 _ | Recip Chillers (Hermetic Motor)
24 | Recip Chillers (Open Motor)
25 | Reciprocating Air Compressors
26 _ [Rotary Lobe Blower
27 _ | Rotary Screw Air Compressors
28 _ [Shaft Mounted Integral Fan
29 _ [Single Stage Gearbox
30 | Spindle-Critical Finishing
31 |Spindle-Machine Finishing
32__ | Spindle-Roughing Operation
33 _ | Vacuum Blowers (Belt or Direct)
34 | Vertical Pumps (0'-5' Height)
35 _ | Vertical Pumps (12'-20" Height)
36 _ | Vertical Pumps (5'-8' Height)
37 |Vertical Pumps (8'-12' Height)
38 [Skip
Example
+ If user wants to select
1, "Centrifugal Chillers" category then in CSV file Column should have data as 6.
2, "Rotary Screw Air Compressors" category then in CSV file Column should have data as 27.
2.4, Temperature Units
The user selected temperature unit shall be saved into “temperatureUnits" variable that is being sent through record
structure.
Code | Default Temperature Unit
0 [Fahrenheit
1 [celsius
Ble805Fc/DataFormat 12/12/14 09:50:36Ble805Fc/DataFormat
2.5, Measurement Units
‘The "measurementUnits" variable holds the unit that is selected by the user in device settings—>units-> menu. This
variable saves one of the following selections
Code [Measurment Units
1 __[ACCLRN_PEAK_IN_G.
‘ACCLRN_CAL_PEAK IN_G
‘ACCLRN_RMS_IN_G
ACCLRN_PEAK_IN_MPS2
‘ACCLRN_CAL_PEAK_IN_MPS2
‘ACCLRN_RMS_IN_MPS2
VELOCITY_CAL_PEAK_IN_IPS
VELOCITY_RMS_IN_IPS
VELOCITY_CAL_PEAK_IN_MMPS
10__|VELoctTy_RMS_IN_MMPS.
11__[DISPLACEMENT_RMS_IN_MILS
12 __ |DISPLACEMENT_RMS_IN_MICRON
13 [DISPLACEMENT_CAL_PK_PK_IN_MILS
14 _ |DISPLACEMENT_CAL_PK_PK_IN_MICRON
@]®]~]@]@]=]@]~
2.6. RPM
‘The key data for RPM selection is as below
Code [RPM Ranges
0 |>600
1 [<600
Example: If user wants to select: 1. A€ce> 6008€ then A€ceRPMA€ variable in record structure is updated with 0.
2.7. Material Emissivity
Code [Material Emissivity
0 [Aluminum (e = 0.30)
1 __ [Steet (e = 0.80)
2 [Won(e=0.70)
3__ [Paint (e = 0.93)
[4 [Wood (e = 0.94)
5 [Concrete (e = 0.95)
Ble805Fc/DataFormat 12/12/14 09:50:36Ble805Fc/DataFormat
The record variable A€cematerialEmissivityA€ is updated with the key data. It ranges between 0-5. The corresponding
emissivity values are given above in the table. For example, the key data for Aluminum is 4€"0€™ and the corresponding
emissivity value is e = 0.30.
2.8. Unit Conversion formulas
All the conversion formulas for the parameters of Record structure are mentioned below Some of these calculations are
not even used on the 80SFC
Note
9 1.414218 = sqrt(2)
=9.8067 .cceleration due to earths gravity
+ 39.3700787 = number of inches per meter
2.8.1. Acceleration Units
+ Rms(q) = Aco_Rms / Sen_Sensitvity
* Peak(g) = Acc_Pk / Sen Sensitivity
+ Peak-Peak(g) = (Acc Pk * 2) / Sen_ Sensitivity
* Cal Peak(a) = Ams(g) * 1.414213
+ Rms(m/sA%) = (Acc_Rms * 9.8067) | Sen_Sensitvity
+ Poak(m/sA2) = (Acc_Pk * 9.8067) / Son_Sonsitvity
+ Poak-Poak(m/sA®) = (Acc_Pk* 2 * 9.8067) / Son_Sonsitvity
* Cal Peak(m/sA*) = Rms(misAe) * 1.414213
228.2, Velocity Units
2.8.3,
2.8.4,
‘* Rms(in/s) = ((Vel_Rms * 9.8067) / Sen_Sensitivity) * 39.3700787
Cal Peak(inis) = ((Vel_Rms * 1.414213 * 9,8067) / Sen_Sensitivity) * 39.3700787
* Cal Peak(in/s) = Rms(in/s) * 1.414213
* Cal Peak—Peak(in’s) = ((Vel_Rms * 2 * 1.414213 * 9.8067) / Sen_Sensitivity) * 39.700787
‘+ Rms(mmis) = ((Vel_Rms * 9.8067) / Sen_Sensitivity) * 1000
* Cal Peak(mmis) = ((Vel_Rms * 1.414213 * 9.8067) / Sen_Sensitivity) * 1000
* Cal Peak(mm/s) = Rms(mm/s) * 1.414213
* Cal Peak-Peak(mmis) = ((Vel_Rms * 2 * 1.414213 * 9.8067) / Sen_Sensitivity) * 1000
Displacement Units
+ Rms(mils) = ((Disp_Rms * 9.8067) / Sen_Sensitivty) * 39370.0787
* Cal Peak(mils) = ((Disp_Rms * 1.414213 * 9.8067) / Sen_Sensitivity) * 39370.0787
* Cal Peak-Peak(mils) = ((Disp_Rms * 2 * 1.414218 * 9.8067) / Sen_Sensitvity) * 39370.0787
* Cal Peak-Peak(rils) = Rms(mils) * 1.414213 * 2
+ Rms(Aum) = ((Disp_Rms * 9.8067) / Sen_Sensitviy) * 1000000
* Cal Peak(Aum) = ((Disp_Rms * 1.414213 * 9.8067) / Sen_Sensitvity) * 1000000
* Cal Peak-Peak(Aum) = ((Disp_Rms * 2 * 1.414213 * 9.8067) / Sen, Sensitivity) * 1000000
* Cal Peak_Peak(Aum) = Rms(Aum) * 1.414213 “2
HF-Acceleration Units
+ Rms(g) = Ht_Ace_Rms
+ Peak(g) = Hi_Acc_Pk
+ Peak-Peak(g) = (Ht_Acc_Pk™ 2)
+ Rms(misA?) = (H{_Acc_Rms” 9.8087)
+ Peak(m/sA?) = (H{_Acc_Pk * 9.8067)
+ Peak-Peak(misA’) = (Hi_Acc_Pk * 2 * 9.8067)
Ble805Fc/DataFormat 12/12/14 09:50:36 9Ble805Fc/DataFormat
2.8.5, Temperature Units
(temp * 9) /5) + 82
3. Displayed Values
‘The following values are what is displayed on the 805FC. These values come from both the raw data structure, as well as,
the calculated measurement values
Key
* pk = Peak
+ pk-pk = Peak-Peak
3.1. Bearing
* CF + (Bearing Condition)
3.2. HF Acceleration
+10 (ok) HE
#4 (ems) HE
+ mish? (pk) HF
+ mish? (rms) HF
3.3. Acceleration
+9 (0%)
+9 (cal ph)
+ (rms)
sis? (pk)
+ mis (cal pk)
+ mish? (ems)
3.4. Velocity
‘invs (cal pk)
*inis (rms)
‘= mms (cal pk)
‘= mmis (rms)
3.5. Displacement
‘* mils (rms)
um (rms)
+ mils (cal pk-pk)
‘*um (cal pk—pk)
3.6. Mise
+ Overall Vibration: severity rating
* Temperature: (either degrees C or degrees F)
1D: (:Primay i Secondary Name)
Ble805Fc/DataFormat 12/12/14 09:50:36 10Ble805Fc/DataFormat
+ TYPE: (Machine Category)
‘+ RPM: (RPM Range)
* Date
+ material emissivity
+ sensor sensitivity
last edited 2014-12-12 17:49:49 by RyanCamey
Ble805Fc/DataFormat 12/12/14 09:50:36
"1Ble805Fc/Radiolnterface
1. Overview
2. Communication Sequence Notes
3. Getting Data From 805FC Example
4, Other Notes
1. Data available Flag
2. Cleared Data
1. Overview
slaithe Advertsing service for 805FC
+ Custom Characteristics
#[2lcontrol Point
+ 18Download Butter
#12Data Available Flag
2. Communication Sequence Notes
1, When K60 has data available (when SAVE button is pressed), K60 shall send a SP! notification packet (0x1) this will
increment the the newly created “data available flag" characteristic by 1
* Service UUID = 0x1806
* Characteristic UID = 0x291c
* Data Available Flag= 0x00-OxFF (the value dosn't really matter all that matters is it changes)
+ The Incrementing of the above characteristic will notify the iPhone that data is available, and action will need to be
taken to retrieve it, On the BLE device monitor you will be able to see the characteristic value increment by one
after the save button on the k60 is pressed.
2, iPhone upon receiving the BLE notitication shall request for buffer size by writing to the radio's control point.
* Service UUID = 0x1806
* Characteristic UID = ox281a
* Control point= 0x80
Setting the above in BLE device monitor causes radio code to send out a SP! DCC packet
FWCS_DEV_CMD_ADAPTER_CMD (0x31) with control point value set to 0x80. K60 shall respond with a SDT packet
with 4 bytes of data size and the response code. The radio will then put the received data size from the K60 into the
control point jetting the iPhone know how much data Is available for download.
3. The iphone will then send the command to the radio to get data from the K60 Setting the following in the control point
will cause the radio to send out a SP! DCC packet FWCS_DEV_CMD_REQUEST_LOG_DATA (0x1C). K60 shall respond
with SDT packet with the requested number of bytes in the payload. This data will go into the 805 bulk data butter
characteristic, This process will be repeated if necessary until all data is read out
+= Service UUID = 0x1806
* Characteristic UID = 0x291a
= Control point = 0x82
4, Now that all the data is read out the iPhone sends out the clear buffer command by writing to the radio's control point.
* Service UUID = 0x1806
Ble805Fc/RadioInterface 12/12/14 09:50:36 12Ble805Fc/Radiointerface
* Characteristic UID = 0x21
* Control point = 0x81
Setting the above in BLE device monitor causes the radio code to send out a SP! DCC packet
FWCS_DEV_CMD_ADAPTER_CMD (0x31) with control point value set to 0x81.
3. Getting Data From 805FC Example
1, Open Texas Instruments Device Monitor
2. Tum on Fluke Connect on 805FC
3. Connect 805FC with Device monitor
4, Tum on notify for the 3 characteristics in the 805FC service (0x28
¢ Texas Insturments Device Monitor Log:
y for last 3 characterise,
“ediced, 69 01:00
5, Take a measurement on the 805FC and save the measurment to the 80SFC
6. Get notify that there is new data:
7. Get data with the 805, last characteristic should notify on the save with a index number.
# Texas Insturments Device Monitor Log:
buffer size using the contrel point by entering
azar Fedited, 65
3:28:13.84 HandleValueNot ification: status-0 he§5 n-6
8, Notice that the command returned 02 80 SC 00 00 00 effectvly saying command '80" returned with success code
‘02! and returned the buffer size '5C000000°
9. Ask for the data using the control point by entering 82:00:00:00:00:5¢:00:00:00 into attribute 65
¢ Texas Insturments Device Monitor Log:
aeValue: be65 v-82... ne
015100
> ater edited, 65 62700100700.
19.490 > ATTLMrsteRep
3
3
3
31:191434 > ATT HanaleValueNot ification: ata!
511191435 > ATT HandlevalueNot ification: sta!
31:19.879 > ATT HanéleValueNot ification.
31:19.979 > ATT HandleValueNot ification
10. Collect the data from the Texas Instruments Device Monitor Connection Log
Ble805Fc/RadioInterface 12/12/14 09:50:36 13Ble805Fc/Radiointerface
¢ Texas Insturments Device Monitor Log:
a1 3s 28 42 29 00
28 00 09 00 00 09 0 00 00 0 00 47 be 13 3a
98 #¢ 47 3D Sc AF cc 41 Cb CC CC 3 DE G7 OA 00 02 00 02 09
11. Parse the data once all data is sent
¢ Texas Insturments Device Monitor Log:
impor> required nedules
>>> amper= struct
cet text data
>>> a = "31 35 28 41 29 00 00 60 00 00 GD 00 00 09 00 0D 31 35 28 41 29 00 00 90 G0 00 99 00 06 9
Break apart by bytes
boob Saveplic(t
ee Inte & formas that the ate,
paste
So tor 4 in b:
6 $= Binasciiagk_hex (i)
nodule Likes
sha
"15 (A) \x00\x00\x00\x00\x00\x00\x00\x00\ x00 x00\x0015 {A) \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x
Use ecru
to separate data into it's conponents based on the structs provided by LéT
do> fhe struct unpack ("1621 GoRBHEfE£2 £21 THBSERER",
print i
asiay
asia
38
eooersezenesao8
SassvaieiaTe-oF
gooitesist97
seoosoezes
Ble805Fo/RadioInterface 12/12/14 09:50:36 14Ble805Fe/Radiointertace
4, Other Notes
4.1. Data available Flag
‘The “data available"&€_fiag is incremented every time a new record is saved to the database. The value of the “data
available" flag is sent under the notification packet — Ox1E. The value of the "data available" flag is NOT reset to 0 and is
allowed to overflow to 0x00. The value of the "data available" flag is NOT reset i the radio is unbound, When radio is
bound again, the “data available" flag increments from the previous value,
4.2, Cleared Data
* The cleared data command may not be needed, since every time a new measurement is saved it overwrites the exiting
‘one in the buffer * Upon disconnection from an 805FC the buffer is cleared * Enabling and disabling FC on a 805FC also
clears the butter
last edited 2014-11-18 20:44:51 by RyanCamey
Ble805Fc/RadioInterface 12/12/14 09:50:36 15Ble805Fc/MisclmplementationDetails
1. Info
Device Id string
Ble Address Cmd NCC
Device ID String
The device ID string is notified to the radio in the format
User String
Battery Level Notification
Data available Flag
Radio MAC address
1. Info
1.1. Device Id string
more information about the structure of this notfication command to the radio can be see here i
htipz/fengwiki.tc.fluke.com/igdevielektra/RadioSpiPackets -~ TODO make this a wiki path 2014-12-12 17:50:36
1.2. Ble Address Cmd NCC
Sends the unique address of the ble device
+ Uses the NCC (Network Control Command) value of Ox1C
* returns a 6 byte long string using (interrupt thingy) 2
1.3. Device ID String
‘= Mode! number: Maximum length = 29 bytes. The Model number is not saved as a NULL terminated string
‘Thereby all the 29 bytes can be non-NULL characters. The model number is hard-coded in firmware to "Fluke
805FC"
‘Firmware Version: Maximum length = 10 bytes. The firmware version is saved as "xx.xx.xx". Again the firmware
version is not saved as a NULL terminated string. Although the size of the Firmware version array is 10, the actual
firmware version sent to radio will be fixed to 8 bytes (including ASCII A€”.a€™),
* Serial number: Maximum length =29 bytes. The serial number is already maintained by the original 805 firmware,
Ifthe unit is not calibrated or the serial number is not set, the default value was being set to "NA" (Not Available)
As per the request, the default value has now been modified to "0001". The original 805 implementation accepts
only 9 bytes of serial number (and +1 for NULL}.
1.4. The device ID string is notified to the radio in the format
<> < Firmware Version> <,>
1.5. User String
User String: Maximum length = 89 bytes, The user string is not saved as a NULL terminated string. Thereby all the 89
bytes can be non-NULL characters, The default value is set to "Fluke 805FC”, For maintaining the user string between
power-cycles, the user string is saved in a file in external flash along with checksum of the data saved in the file, The
‘checksum is validated during power up. If the checksum does not match, the user string is re-set to default - "Fluke
‘805FC", If the file does not exist, a new file is created with the user string set to default ~ “Fluke 805FC”.
Ble805Fc/MisclmplementationDetails 12/12/14 09:50:36 16Ble805Fc/MisclmplementationDetails
1.6, Battery Level Notification
‘The 805 firmware updates the battery level roughly every 10 minutes. If there is a change in the battery level, the same is
sent as a notification packet to the radio firmware.
1.7. Data available Flag
‘The “data available"4€ flag is incremented every time a new record is saved to the database. The value of the “data
available" flag is sent under the notification packet — Ox1E. The value of the "data available’ flag is NOT reset to 0 and is
allowed to overflow to 0x00. The value of the "data available" flag is NOT reset if the radio is unbound. When radio is
bound again, the “data available" flag increments from the previous value.
1.8. Radio MAC address
‘The radio MAC address is read by K60. The MAC address is made available on the VCOM interface. The command to
read the MAC address is: 0x95 0x02. The response is the MAC address - .... The length of the MAC.
address is fixed to 6 bytes.
last edited 2014-10-28 19:27:24 by BradeyHonsinger
Ble805Fc/MisclmplementationDetails 12/12/14 09:50:36 17