Changes

no edit summary
Line 103: Line 103:  
====Auto calibration rework and improvements from firmware version 03.25.07.Rev.00.====
 
====Auto calibration rework and improvements from firmware version 03.25.07.Rev.00.====
   −
*Exponential moving average (EMI) Filter added.
+
Accelerometer auto calibration functionality has one purpose - determine how FMB device is mounted in a vehicle. After the calibration process ''eco driving'' functionality becomes active and calibration data will be used to determine harsh acceleration, braking and cornering events.
 +
 
 +
Auto calibration task is launched on one of these conditions (assume calibration is enabled in configuration):
 +
*Every time device turns on, it checks whether it was previously calibrated and has calibration stored in flash. If device has no calibration in flash, auto calibration task is started.
 +
*Device calibration was previously disabled by configuration and now is enabled.
 +
*SMS “auto_calibrate:set” is received. Note: SMS response is sent after calibration has been acquired.
 +
This SMS triggers an SMS response to be sent. Response is sent when calibration is acquired. When 1 hour passes without successful calibration, failed SMS response is sent.
 +
*Calibrated device’s mean axes of set interval differ more than set amount from desired (0,0,1) calibration is considered inaccurate. Calibration is deleted from flash and auto calibration task started.
 +
After auto calibration task has been started, it will go on indefinitely until satisfactory calibration is acquired.<br />
    
=====Auto-calibration Improvement=====
 
=====Auto-calibration Improvement=====
Line 127: Line 135:  
Once both buffers are full, auto calibration is attempted. If calibrated values pass calibration quality threshold, calculated calibration is written to flash as current calibration – device is calibrated. <br>
 
Once both buffers are full, auto calibration is attempted. If calibrated values pass calibration quality threshold, calculated calibration is written to flash as current calibration – device is calibrated. <br>
 
Note: If GPS fix is lost or ignition is turned off, buffers’ data is dumped and must be gathered from 0 again.<br>
 
Note: If GPS fix is lost or ignition is turned off, buffers’ data is dumped and must be gathered from 0 again.<br>
 +
 +
At this point calibration is successfully ended as indication device sends an SMS/GPRS message with ''Device is calibrated, to recalibrate send:auto_calibrate:set.<br>''
 +
 +
''Note: SMS/GPRS message will be sent only if auto calibration functionality was triggered by SMS/GPRS message.''
 +
For user convenience in case auto calibration functionality fails then notification message will be sent. For exact messages, check algorithm section.<br>
 +
''Note: SMS/GPRS message will be sent only if auto calibration functionality was triggered by SMS/GPRS message.''
 +
To get current calibration status ''auto_calibrate:get'' SMS/GPRS command must be sent to the device. If device is calibrated it will respond with ''Calibration state: calibrated'' or otherwise ''Calibration state: not calibrated''. Also this command returns saved Ground and Side vectors.<br>
 +
    
=====Re-Calibration=====
 
=====Re-Calibration=====
   −
When calibration is present, device checks for re-calibration every 60s indefinitely. Re-calibration requires fix and ignition to run also re-calibration is turned off when vehicle is stopped for more than 15s until conditions are satisfied again. When calibrated device’s mean axes of set interval(calibrated accelerometer data) differ more than set amount from desired (0,0,1) (perfect vehicle’s axes) calibration is considered inaccurate, or device’s position has changed and re-calibration is needed. Calibration is cleared from flash and auto calibration task is started.<br>
+
When calibration is present, device checks for re-calibration every 60s indefinitely. Re-calibration requires fix and ignition to run also re-calibration is turned off when vehicle is stopped for more than 15s until conditions are satisfied again. When calibrated device’s mean axes of set interval(calibrated accelerometer data) differ more than set amount from desired (0,0,1) (perfect vehicle’s axes) calibration is considered inaccurate, or device’s position has changed and re-calibration is needed. Calibration is cleared from flash and auto calibration task is started.<br/>
 
+
Note: turning device around calibrated Z axis will not trigger re-calibration, after turning device around Z axis manual re-calibration is advised. After calibration if quality value is less than 0.80, calibration update functionality is run. Calibration update constantly tries calibrating device in background until 0.80 quality is reached. Calibration update functionality does not change calibration if calculated new calibration quality is less than 0.80.<br/>
Note: turning device around calibrated Z axis will not trigger re-calibration, after turning device around Z axis manual re-calibration is advised.
  −
After calibration if quality value is less than 0.80, calibration update functionality is run. Calibration update constantly tries calibrating device in background until 0.80 quality is reached. Calibration update functionality does not change calibration if calculated new calibration quality is less than 0.80.
   
{{{excessive_idling|
 
{{{excessive_idling|