summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJefferson Delfes <jefferson.delfes@openbossa.org>2012-02-28 08:53:20 -0400
committerJefferson Delfes <jefferson.delfes@openbossa.org>2012-02-28 16:01:15 -0400
commitb51f60130a42ee58bf7f231c53f83286ea95c35f (patch)
tree23846f52c9d45a971df0be58b87fe7ad19a73835
parent6eddc881d1b0fff273902e245fb97e8e8a47bd0a (diff)
downloadbluez-le-docs-b51f60130a42ee58bf7f231c53f83286ea95c35f.tar.gz
bluez-le-docs-b51f60130a42ee58bf7f231c53f83286ea95c35f.tar.xz
bluez-le-docs-b51f60130a42ee58bf7f231c53f83286ea95c35f.zip
bluez: add thermometer documentation
-rw-r--r--bluez.tex46
1 files changed, 46 insertions, 0 deletions
diff --git a/bluez.tex b/bluez.tex
index d116ada..7642e70 100644
--- a/bluez.tex
+++ b/bluez.tex
@@ -170,6 +170,49 @@ For Reporter role:
\end{enumerate}
\subsubsection{Thermometer}
+
+Profile used to interact with data gathered from thermal sensors. There are two
+roles in this profile: {\em Thermometer} and {\em Collector}.
+
+For devices that support {\em Thermometer Role}, thermal data is stored and
+exposed to {\em Collector}. It is mandatory to have {\em Device Information}
+\cite{dis} service (general device characteristics) and {\em Health
+Thermometer} \cite{hts} service (temperature measurements).
+
+The {\em Collector Role} connects to {\em Thermometer} to obtain health
+temperatures. {\em Device Information} \cite{dis} service is optional, but
+{\em Health Thermometer} \cite{hts} service is mandatory.
+
+{\em Thermometer} \cite{htp} profile is implemented in BlueZ and accessible via
+D-Bus (described in {\em doc/thermometer-api.txt}).
+
+Under \verb|org.bluez.Thermometer| interface, we have:
+\begin{enumerate}
+\item Methods: SetProperty(), GetProperties(), RegisterWatcher(),
+UnregisterWatcher(), EnableIntermediateMeasurement(),
+DisableIntermediateMeaturement()
+\item Signals: PropertyChanged()
+\item Properties: Intermediate, Interval, Maximum, Minimum
+\end{enumerate}
+
+The method \verb|RegisterWatcher| receives a Watcher. That object should
+implement the \verb|MeasurementReceived| method with a dict parameter:
+
+\begin{verbatim}
+{
+ "Exponent" : int8,
+ "Mantissa" : int32,
+ "Unit" : ("Celsius" or "Fahrenheit"),
+ "Time" : uint64,
+ "Type" : ("Armpit", "Body", "Ear", "Finger", "Intestines",
+ "Mouth", "Rectum", "Toe", "Tympanum"),
+ "Measurement" : ("Final" or "Intermediate")
+}
+\end{verbatim}
+
+The \verb|Time| value is expressed in seconds since epoch.
+The temperature value is represented by \verb|(mantissa) x (10**exponent)|.
+
\subsubsection{Time}
\section{Contact channels}
@@ -178,6 +221,9 @@ For Reporter role:
\bibitem{lls}Link Loss service. \url{https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=239391}
\bibitem{ias}Immediate Alert service. \url{https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=239390}
\bibitem{txp}TX Power service. \url{https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=239393}
+\bibitem{htp}Health Thermometer profile. \url{https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=238687}
+\bibitem{hts}Health Thermometer service. \url{https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=238688}
+\bibitem{dis}Device Information service. \url{https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=244369}
\end{thebibliography}
\end{document}