\documentclass[lettersize,conference]{IEEEtran}
\usepackage{biblatex}
\usepackage{hyperref}

\addbibresource{../references.bib}

\title{
	Analog Gauge Driver with CAN Interface \\
	\large \textsc{Comp} 490 Final Report
}

\author{
	\IEEEauthorblockN{Sam Anthony}
	\IEEEauthorblockA{Concordia University\\
		Student ID: 40271987\\
		Email: sam@samanthony.xyz}
	\and
	\IEEEauthorblockN{Supervised by Hovhannes Harutyunyan, PhD}
	\IEEEauthorblockA{Concordia University\\
		Department of Computer Science and Software Engineering\\
		Email: haruty@encs.concordia.ca}
}

\begin{document}

\maketitle

\begin{abstract}
	TODO
\end{abstract}

\tableofcontents


\section{Introduction}

Combustion engines, such as those used to power passenger cars, require precise control over their operation in order to run efficiently and reliably.
Since the early 1970s, car engines have been electronically controlled by an EMS (engine management system) \cite{JapanSemi}.
An EMS is an embedded system consisting of an ECU (electronic control unit), sensors, and actuators.
The actuators include fuel injectors and spark plugs.
The sensors measure things such as crankshaft angle, intake manifold pressure, coolant temperature, and so on.
The ECU features a microcontroller that uses feedback from these sensor data to operate the actuators, thus allowing the engine to run.

Sensor data are sent not only to the ECU, but also to a display system mounted in the cabin so that the driver may monitor the engine's health.
The display system is typically a set of gauges showing, for instance, engine speed, oil pressure, oil pressure, and coolant temperature, among other things.

The sensor data are transported about the car via a network; CAN (controller area network) \cite{can20b} is ubiquitous.
Introduced by Bosch in the early 1990s and standardized by ISO 11898 \cite{CanHistory}, all cars sold in the United States are required to be equiped with a CAN bus \cite{CFR40.86.1806-05}.

The display system in the cabin must convey sensor data to the driver.
Each datum represents the instantaneous value of a continuous quantity---speed, temperature, pressure, etc.
These data are visually encoded by the display system and shown to the driver.
Each datum is most effectively encoded as a graduated radial analog scale with the instantaneous value marked on said scale \cite{Panchal2025}.
The graduated scale takes advantage of vernier acuity: our ability to discern slight misalignment between line segments \cite{Strasburger2018}, while the radial marker leverages the hypercolumnar acuity of vision: our ability to detect minute changes in angle of a line segment \cite{Hubel1962}.
Put simply, an analog needle gauge is the best way to display information to the driver.
It is the reason why even modern digital display systems are often just skeuomorphs of analog gauges \cite{LifeRacingDisplays}.



TODO


\section{Objectives}

TODO


\section{Hardware}

TODO


\section{Firmware}

TODO


\section{Software}

TODO


\section{Testing}

TODO


\section{Conclusion}

TODO


\newpage
\printbibliography
\vfill

\end{document}
