********************
Device Drivers
********************

A device driver in the iDigi Device Integration Application is a piece of
Python code which abstracts a physical device (such as a thermometer
or a light sensor) or some control logic (such as a virtual thermostat)
into a set of channel properties. 

Channel properties are exported to the channel database in order to be
consumed by other system services such as other device drivers, the
:ref:`logging sub-system <loggers>`, or various 
:ref:`presentation instances <presentations>`. Channels are named
in the channel database as "driver_instance.channel_name".

This is the list of device drivers that iDigi Dia includes

General Devices
--------------------

.. toctree::
   :maxdepth: 1

   alarm_clock
   ccwi9p9215_gpio
   gps
   local_io
   pulse_device
   rabbit/index
   settings_device
   system_device
   template_device
   transforms

Tank Devices
------------

.. toctree::
   :maxdepth: 1

   tanks/index

Vendor Devices
--------------

.. toctree::
   :maxdepth: 1

   vendors/index

XBee Devices
------------

.. toctree::
   :maxdepth: 1

   xbee/index
