Frequency-based Vehicle Idling Detection

Frequency-based Vehicle Idling Detection

Kai-Chao Yang*, Chih-Ting Kuo, Chun-Yu Chen, Chih-Chyau Yang, Chien-Ming Wu, and Chun-Ming Huang

National Chip Implementation Center, Taiwan

(Received 29 November 2013; Accepted 28 January 2014; Published on line 1 March 2014)
*Corresponding author:
DOI: 10.5875/ausmt.v4i1.399

Abstract: Continuous increases in fuel prices and environmental awareness have raised the importance of reducing vehicle emissions, with many national governments passing anti-idling laws. To reduce air pollution and fuel consumption, we propose a frequency-based vehicle idling detection method to remind drivers to turn off the engine vehicle idling exceeds a certain time threshold. The method is implemented in existing handheld devices without any modification to the car or engine, making the solution cheap and simple to implement in any type of motor vehicle. Experimental results show the proposed method can effectively differentiate idling, engine-off, and moving conditions. Two implementation cases are presented to demonstrate the feasibility and performance of the proposed method.

Keywords: Idling speed; anti-idling; accelerometer; frequency analysis


In the last decade, the world population has grown from 6 billion to 7 billion. At the same time, living standards in many parts of the developing world have improved, driving increased sales of automobiles and thus increased engine emissions including pollutants and greenhouse gases such as carbon monoxide, nitrogen oxide, volatile organic compounds, and soot. Aside from their contribution to climate change, these pollutants contribute directly to a range of health problems, with a recent study indicating that in the United States 53,000 early deaths occur annually because of vehicle emissions [1].

Driven by increased environmental awareness and fuel prices, many vehicle manufacturers today are committed to reducing vehicle emissions, in particular while the vehicle is idling. For example, start-stop systems automatically shut down and restart the engine when the vehicle is stopped to reduce idling [2, 3]. While idling and at low speeds, hybrid electric vehicles are powered by an electric motor rather than the internal combustion engine [4]. Other technologies allow for reduced fuel consumption without damaging the engine, and reduce or eliminate emissions [5-7].

Government initiatives to reduce emissions have included anti-idling laws [9]. For example, drivers of vehicles idling for over a certain time limit can in Taiwan can be fined up to NT$60,000. Such measures, however, are difficult to enforce without the ability to accurately detect and record vehicle idling time. Tradition methods for detecting engine conditions focus on detecting transmission gear engagement, sensing torque or pulse signals from the vehicle engine compartment, detecting air input or displacement, or monitoring the temperature in the vehicle engine compartment or its surroundings. Then a speed signal is retrieved from the velocity meter to determine whether the vehicle is idling. However, such detection methods inevitably require potentially expensive modifications to the engine and vehicle, and are thus impractical.

This paper describes low-cost and simple idling detection through the use of a standalone device or existing handheld device, thus requiring no modification to the vehicle or its engine. The use of such devices could encourage drivers to voluntarily reduce idling, thus reducing air pollution and fuel consumption.

The proposed method requires a 3-axis accelerometer, a computing unit, and an output unit all of which can be found in many existing mobile devices. Instead of contact-type detectors, we use the acceleration to sense vehicle vibration, which can be detected anywhere within the vehicle. Then acceleration features are then extracted from vibration, and can tell us the vehicle is moving, idling, or engine-off. Thus the device can calculate idling time and remind the driver to turn off the engine.

The remainder of this paper is organized as follows. Section 2 describes the proposed method, including the hardware/software structure, tilt correction, vibration analysis, and overall detection algorithm. Two hardware/software implementation cases are described in Section 3, and conclusions are drawn in Section 4.

Frequency-based Idling Detection

Hardware and Software Structure

The proposed method uses vibration frequency to determine vehicle traveling conditions. Many techniques have been developed to sense object vibration, such as Piezo-film [10], Piezoelectric [11], Piezoresistive [12], and Capacitive sensing [13]. In fact, they all observe the same phenomenon, namely object acceleration. Accelerometers are now commonly embedded in many devices, such as smart phones and vehicle travel recorders, making it easy to obtain vibration information from a vehicle.

Figure 2 shows the proposed hardware structure, including a bracket, a 3-axis accelerometer, a computing unit, and an output unit. The bracket holds the entire hardware assembly to ensure stable sensing. The 3-axis accelerometer senses the vibration level of the vehicle. The computing unit analyzes vibration information to determine vehicle travel conditions, and then calculates idling time, with results displayed by the output unit.

Note that this hardware structure can be realized either in a standalone device or an existing device, such as smart phone, tablet PC, GPS, or vehicle travel recorder.

Figure 3 shows the proposed software flow chart. Original sensed data from the accelerometer cannot reflect the real vibration due to the tilt problem, so a correction process is needed to first obtain real vibration data. Then vibration is transformed from the time domain to frequency domain in which we extract features and categorize vehicle conditions. An alarm is triggered if the idling time exceeds a pre-defined $T$. The following sub-section describes each process in detail.

Tilt Correction of the Accelerometer

Figure 4 (a) shows the three dimensions that can be sensed by a 3-axis accelerometer, where ${{A}_{x}}$ and ${{A}_{y}}$ are the horizontal components and ${{A}_{z}}$ is the vertical component of sensed acceleration signal. With the 3-axis accelerometer, we can record a vehicle’s vibration and direction of movement. However, the accelerometer is very sensitive to device tilt and heading direction, which influences the accuracy of vertical and horizontal vibration analysis. Thus we require initial calibration to obtain accurate vibration measurements along each dimension. Here we solve only the tile problem because only vibration along the vertical direction is used.

When the 3-axis accelerometer rests on a flat horizontal surface, it can sense gravitational acceleration from the earth, as shown in Figure 4 (a). In this situation, ${{A}_{z}}$ = $g$ and ${{A}_{x}}$ = ${{A}_{y}}$ = 0.The direction of the gravitational acceleration is absolute, so it can be used to calculate the tilt angle of the accelerometer. Figure 4 (b) shows a case of tilt along the x direction. In this case, the tilt angle ${{\theta}_{x}}$ is related to ${{A}_{x}}$ and Az as follows:

\[{{\theta }_{x}}={{\tan }^{-1}}\frac{{{A}_{x}}}{{{A}_{z}}};{{A}_{x}}=g\sin {{\theta }_{x}};{{A}_{z}}=g\cos {{\theta }_{x}}.\tag{1}\]

Figure 4 (c) shows another case of tilt along they direction. In this case, the tilt angle ${{\theta}_{y}}$ is related to ${{A}_{y}}$ and ${{A}_{z}}$ as follows:

\[{{\text{ }\!\!\theta\!\!\text{ }}_{y}}={{\tan }^{-1}}\frac{{{A}_{y}}}{{{A}_{z}}};{{A}_{y}}=g\sin {{\theta }_{y}};{{A}_{z}}=g\cos {{\theta }_{y}}.\tag{2}\]

Considering the case of tilt along both the $x$ and $y$ directions, we can combine (1) and (2) to obtain real horizontal and vertical components, noted as $A{{'}_{x}}$, $A{{'}_{y}}$, and $A{{'}_{z}}$. Finally the following equations are used to correct the sensed acceleration.

\[\left\{ \begin{matrix} A{{'}_{x}}={{A}_{x}}-g\sin {{\theta }_{x}} \\ A{{'}_{y}}={{A}_{y}}-g\sin {{\theta }_{y}} \\ A{{'}_{z}}={{A}_{z}}-g\cos {{\theta }_{x}}\cos {{\theta }_{y}} \\ \end{matrix} \right.\tag{3}\]

Frequency-based Vibration Analysis

A vehicle’s vibration is mainly caused by engine vibration, vehicle motion, and road conditions. When the vehicle is moving, two facts can be observed. First, $A{{'}_{x}}$ ≠ 0 or $A{{'}_{y}}$ ≠ 0 due to horizontal movement. Second, vibration level and frequency are unstable due to various road conditions, where ‘unstable’ means the variance is obvious. Therefore, we can differentiate whether a vehicle is moving or still from the above observation.

The difficult part of idling detection is in determining whether the engine is on or off when the vehicle is still. Theoretically, the accelerometer should not sense any vibration when the engine is off. However, accelerometer inaccuracy and small ground vibrations can still result in nonzero sensed data. This signal could be treated as white noise, so no apparent features should be observed in the frequency domain. This situation will be illustrated in experiments described later in this paper.

An engine idles at between 600 to 1000 rpm, causing regular vibration, the frequency of which can be recognized to indicate vehicle idling. Discrete Fourier Transform (DFT) is used to transform sensed data from the time domain to the frequency domain.

\[f\left( k \right)=\underset{t=0}{\overset{N-1}{\mathop \sum }}\,{{A}^{'}}_{z}(t)\times {{e}^{-i2\pi kt/N}}.\tag{4}\]

In (4), ${{A}^{'}}_{z}(t)$ is the vertical vibration at time t, f(k) stands for the frequency representation of A’z(t), and N is the observation period. In the implementation, we use Fast Fourier Transform (FFT) [14] to make the transformation more efficient.

We demonstrate several cases with sensed data and frequency after transformation. The experimental environment is in a Toyota Altis 2.0. The sampling rate of the accelerometer is 100Hz. The observation period $N$ is set to 1800. All sensed data will be corrected first to ensure more precise vibration detection in the $x$, $y$, and $z$ directions. Figure 5 (a) shows vibration in the time domain when the engine is off, and Figures 5 (b)-(d) respectively show its FFT the in $x$, $y$, and $z$ directions. It can be seen that the accelerometer still sensed vibration in the time domain despite the engine being off. After transformation, signals are equally distributed to each frequency. This means the difference between each frequency and the mean value is close to the variance. Thus we can use the following constraint to recognize engine-off conditions.

\[\left| f\left( k \right)-\mu \right|<\sigma +{{h}_{1}}\text{ for all }k.\tag{5}\]

In (5), $\mu$ and $\sigma$ respectively denote the mean and variance of function $f$. ${{h}_{1}}$ is the given tolerance, in this case less than 2×10-4.

When the vehicle is idling, the accelerometer senses data very similar to that sensed in the previous situation, as seen in Figure 6 (a). However, differences can be found after FFT is performed. In Figures 6 (b)-(d), we can observe two obvious spikes that might be regarded as the feature of idling speed.

One more situation should be taken into account: When a vehicle is idling, the driver may turn on some energy-consuming equipment(e.g., lights, radio, or air conditioner) thus changing engine speed. Here we use the air conditioner as atest because it consumes about 20% to 30% of total energy during vehicle travel and thus adds a heavy load to the engine. Figure 7 shows signals measured with the air conditioner on. Figures7 (b)-(d) show additional spikes, but the original spikes are still the most prominent. Thus we can say that other equipment will also not seriously influence the feature of idling speed in the frequency domain.

Therefore, spikes are always apparent as long as the vehicle is idling, thus we use the following constraint to find the spikes to determine vehicle idling.

\[\left| f\left( k' \right)-\mu \right|>{{h}_{2}}\times \sigma \text{ for some }k'.\tag{6}\]

In (6), ${{h}_{2}}$ is a given threshold that is much larger than the variance $\sigma$. If (6) is true for some $k’$, the spikes produced by vehicle idling exist, thus the vehicle is idling.

Idling Detection Method

Based on the above observations and formulae, Table 1 presents the proposed idling detection algorithm which is an infinite loop. At the outset, sensed information (${{A}_{x}}$, ${{A}_{y}}$, ${{A}_{z}}$) is retrieved from the 3-axis accelerometer. After tilt correction, we get horizontal vibrations $A{{’}_{x}}$ and $A{{’}_{y}}$. Let h be the sensing error bound of the accelerometer. Apparently the vehicle is moving if $A{{’}_{x}}>h$ or $A{{’}_{y}}>h$. Otherwise, FFT is performed on ${{A}_{z}}(0)$ to ${{A}_{z}}(N)$ to get $f(k)$. Then the mean $\mu $ and variance $\sigma$ of $f(k)$ can be found. With $\mu $ and $\sigma$, Line 13-20 can be formulated to the following terms that represent the three vehicle conditions.

\[\begin{matrix} \sigma >h' \\ \left| f\left( k \right)-\mu \right|<\sigma +{{h}_{1}}~for~all~k \\ \left| f\left( k' \right)-\mu \right|>{{h}_{2}}\times \sigma ~for~some~k' \\ \end{matrix}\begin{matrix} \text{Moving} \\ \text{EngineOff} \\ \text{Idle} \\ \end{matrix}.\tag{7}\]

Finally, the alarm will be triggered if idling time Time is greater than a pre-defined $T$.


This section presents two cases implementing the proposed method, using an Android phone and a standalone device.

Implementation on Android Phone

We chose Android as our target platform since Android provides a comprehensive platform-independent development environment (via Eclipse), while special hardware is needed to develop apps for iOS. The Android APIs provided by Google offer a convenient way to use sensors embedded in the mobile devices. Table 2 below lists the supported sensor types in Android 4.x.

Sensed data from the embedded 3-axis accelerometer are needed to detect vehicle travel conditions. Figure 8 shows the software architecture used to detect idling and provide the user with visual or audible feedback.

The app first gathers data sent from the Android API and arranges it into a special data structure for frequency (spectrum) analysis. The raw data is then processed and displayed on the screen. When sufficient data has been collected for detection, a specific amount of data is processed through the idling detection algorithm, and features are extracted to determine vehicle conditions. Once the condition is detected as “idling”, the idling duration counter is activated. When the counter exceeds the idling time limit, the app will set of an alarm to alert the user. If the condition is detected as “engine-off” or “moving”, the idling duration counter will is reset. The user interface is updated every time the latest motion status is determined, displaying easy-to-understand visual status indicators.

Figure 9 shows our software interface with (a) to (d) respectively representing engine-off, idling (not timeout), moving, and idling (timeout). Figure 9 (e) shows the user interface on an HTC One, with the device held in a dashboard-mounted bracket.

Implementation on Standalone Device

This implementation combines a car charger, a MCU board, an accelerometer sensor board, and a 1.5” OLED into a standalone device which can be powered by the car’s cigarette lighter. The MCU board contains a MCU core TI MSP430 and an ADC chipM430F5438A which converts analog acceleration signals into digital signals. The MSP430 contains an embedded version of the proposed idling detection algorithm. Final results are displayed on the OLED. The software architecture for both devices is similar (see Figure 10).

The installation of the standalone device is illustrated in Figure 11. The white cable draws power from the car charger.


A frequency-based vehicle idling detection method is proposed. A vehicle’s vibration information is analyzed to determine the vehicle is moving, idling, or engine off. Unlike traditional idling detection methods, the proposed method does not require any modification to the vehicle, and can be implemented using any handheld device with a 3-axis accelerometer, including smart phones and tablet computers. Some problems remain to be resolved. For example, different vehicles have various features in the frequency domain, which may require system calibration. In addition, variation in device placement may influence detection accuracy, thus a standard bracket is needed to hold the device. Future work will focus on addressing these issues.


  1. F. Caiazzo, A. Ashok, L. A. Waitz, S. H. L. Yim, and S. R. H. Barrett, &quot;Air pollution and early deaths in the united states. Part i: Quantifying the impact of major sectors in 2005,&quot; <span class="em">Atmospheric Environment, </span>vol. 79, pp. 198-208, 2013.<br />doi: <a href="" title="Air pollution and early deaths in the united states. Part i: Quantifying the impact of major sectors in 2005" target="_blank">10.1016/j.atmosenv.2013.05.081</a>
  2. M. Prucka, "Development of an Engine Stop/Start at Idle System," SAE 2005 World Congress & Exhibition, 2005.
    doi: 10.4271/2005-01-0069
  3. Y. C. Liu and, L. Sun, "City Bus Idle Stop-Start System Simulation Analysis," International Conference on Mechatronic Science, Electric Engineering and Computer, 2011, pp. 763-766.
    doi: 10.1109/MEC.2011.6025576
  4. J.R. Wagner, D.M. Dawson, and Z. Liu, "Nonlinear Air-to-Fuel Ratio and Engine Speed Control for Hybrid Vehicles," IEEE Transactions on Vehicular Technology, Vol. 52, No. 1, pp. 184-195, 2003.
    doi: 10.1109/TVT.2002.807156
  5. Z. Ye, "Modeling, Identification, Design, and Implementation of Nonlinear Automotive Idle Speed Control Systems-An Overview," IEEE Transactions on Systems, Man, and Cybernetics-Part C: Applications and Review, Vol. 37, No.6, pp. 1137-1151, 2007.
    doi: 10.1109/TSMCC.2007.905810
  6. R. Sharma, D. Nesic, and C. Manzie, "Sampled Data Model Predictive Idle Speed Control of Ultra-Lean Burn Hydrogen Engines," IEEE Transactions on Control Systems Technology, Vol. 21, No. 2, pp. 538-545, 2013.
    doi: 10.1109/TCST.2012.2185238
  7. U.S. Department of Energy.
  8. D. Struan, "Breath Deep: Highways Closed in Beijing Due To Intense Smog," in HEADLINE ASIA, 2014.
  9. American Transportation Research Institute.
  10. D. L. Halvorsen, "Properties and Applications of Piezo Film Transducers," IEEE Electronics and Power, Vol. 32, No. 10, pp. 744-746, 1986.
    doi: 10.1049/ep.1986.0432
  11. K. Motoo, F. Arai, and T. Fukuda, "Piezoelectric Vibration-Type Tactile Sensor Using Elasticity and Viscosity Change of Structure," IEEE Sensors Journal, Vol. 7, No. 7, pp. 1044-1051, 2007.
    doi: 10.1109/JSEN.2007.895973
  12. E. Peiner, D. Scholz, K. Fricke, and A. Schlachetzki, "Microelectromechanical Vibration Sensor with Optical Interconnects," Journal of Microelectromechanical Systems, Vol. 7, No. 1, pp. 56-61, 1998.
    doi: 10.1109/84.661384
  13. S.V. Iyer, H. Lakdawala, R.S. Sinha, E.J. Zacherl, R.T. Unetich, D.M. Gaugel, D. F. Guillou, and L.R. Carley, "A 0.5 mm2 Integrated Capacitive Vibration Sensor with sub-10 zF/rt-Hz Noise Floor," IEEE Custom Integrated Circuits Conference, pp. 93-96, 2005.
    doi: 10.1109/CICC.2005.1568616
  14. J. W. Cooley and J. W. Tukey, "An Algorithm for the Machine Calculation of Complex Fourier Series," Mathematics of Computation, Vol. 19, No. 90, pp. 297-301, 1965.
    doi: 10.1090/S0025-5718-1965-0178586-1


  • There are currently no refbacks.

Copyright © 2011-2018 AUSMT ISSN: 2223-9766