\contentsline {chapter}{\numberline {1}Introduction}{6} \contentsline {section}{\numberline {1.1}How to get this document}{6} \contentsline {chapter}{\numberline {2}Using the hardware}{8} \contentsline {section}{\numberline {2.1}Getting started quickly}{8} \contentsline {subsection}{\numberline {2.1.1}Connecting the wires}{8} \contentsline {subsection}{\numberline {2.1.2}Running some quick tests}{9} \contentsline {section}{\numberline {2.2}If you encounter problems \dots }{9} \contentsline {section}{\numberline {2.3}If your board needs new firmware \dots }{9} \contentsline {section}{\numberline {2.4}Kluges required for rev.\ 1 boards}{12} \contentsline {section}{\numberline {2.5}Testing}{12} \contentsline {section}{\numberline {2.6}Calibration}{12} \contentsline {chapter}{\numberline {3}Hacking the hardware}{14} \contentsline {section}{\numberline {3.1}Regulators}{14} \contentsline {section}{\numberline {3.2}Temperature interlock}{14} \contentsline {section}{\numberline {3.3}Clock and control fan-out}{14} \contentsline {section}{\numberline {3.4}Data multiplexing}{14} \contentsline {section}{\numberline {3.5}Clock return}{16} \contentsline {section}{\numberline {3.6}Microprocessor/USB controller}{16} \contentsline {subsection}{\numberline {3.6.1}USB interface}{16} \contentsline {subsection}{\numberline {3.6.2}Microprocessor {\sc i/o}}{19} \contentsline {subsection}{\numberline {3.6.3}``Firmware regulation''}{20} \contentsline {subsection}{\numberline {3.6.4}Microprocessor firmware}{20} \contentsline {chapter}{\numberline {4}libsurf}{22} \contentsline {section}{\numberline {4.1}libsurf manual}{22} \contentsline {subsection}{\numberline {4.1.1}Library initialization}{22} \contentsline {subsubsection}{\numberline {4.1.1.1}Name}{22} \contentsline {subsubsection}{\numberline {4.1.1.2}Synopsis}{22} \contentsline {subsubsection}{\numberline {4.1.1.3}Description}{23} \contentsline {subsubsection}{\numberline {4.1.1.4}Return value}{23} \contentsline {subsection}{\numberline {4.1.2}Data read/write functions --- status setters}{23} \contentsline {subsubsection}{\numberline {4.1.2.1}Name}{23} \contentsline {subsubsection}{\numberline {4.1.2.2}Synopsis}{23} \contentsline {subsubsection}{\numberline {4.1.2.3}Description}{23} \contentsline {subsubsection}{\numberline {4.1.2.4}Return value}{23} \contentsline {subsection}{\numberline {4.1.3}Data read/write functions --- status getters}{23} \contentsline {subsubsection}{\numberline {4.1.3.1}Name}{23} \contentsline {subsubsection}{\numberline {4.1.3.2}Synopsis}{24} \contentsline {subsubsection}{\numberline {4.1.3.3}Description}{24} \contentsline {subsubsection}{\numberline {4.1.3.4}Return value}{24} \contentsline {subsection}{\numberline {4.1.4}Regulator enable functions --- status setters}{24} \contentsline {subsubsection}{\numberline {4.1.4.1}Name}{24} \contentsline {subsubsection}{\numberline {4.1.4.2}Synopsis}{24} \contentsline {subsubsection}{\numberline {4.1.4.3}Description}{24} \contentsline {subsubsection}{\numberline {4.1.4.4}Return value}{24} \contentsline {subsection}{\numberline {4.1.5}Supply voltage set functions}{24} \contentsline {subsubsection}{\numberline {4.1.5.1}Name}{24} \contentsline {subsubsection}{\numberline {4.1.5.2}Synopsis}{24} \contentsline {subsubsection}{\numberline {4.1.5.3}Description}{25} \contentsline {subsection}{\numberline {4.1.6}Sense voltage read functions}{25} \contentsline {subsubsection}{\numberline {4.1.6.1}Name}{25} \contentsline {subsubsection}{\numberline {4.1.6.2}Synopsis}{25} \contentsline {subsubsection}{\numberline {4.1.6.3}Description}{25} \contentsline {subsubsection}{\numberline {4.1.6.4}Return value}{25} \contentsline {subsection}{\numberline {4.1.7}Sense voltage {\sc adc}\ count read functions}{25} \contentsline {subsubsection}{\numberline {4.1.7.1}Name}{25} \contentsline {subsubsection}{\numberline {4.1.7.2}Synopsis}{25} \contentsline {subsubsection}{\numberline {4.1.7.3}Description}{25} \contentsline {subsubsection}{\numberline {4.1.7.4}Return value}{25} \contentsline {subsection}{\numberline {4.1.8}Supply current read functions}{25} \contentsline {subsubsection}{\numberline {4.1.8.1}Name}{25} \contentsline {subsubsection}{\numberline {4.1.8.2}Synopsis}{25} \contentsline {subsubsection}{\numberline {4.1.8.3}Description}{26} \contentsline {subsubsection}{\numberline {4.1.8.4}Return value}{26} \contentsline {subsection}{\numberline {4.1.9}Module temperature read functions}{26} \contentsline {subsubsection}{\numberline {4.1.9.1}Name}{26} \contentsline {subsubsection}{\numberline {4.1.9.2}Synopsis}{26} \contentsline {subsubsection}{\numberline {4.1.9.3}Description}{26} \contentsline {subsubsection}{\numberline {4.1.9.4}Return value}{26} \contentsline {subsection}{\numberline {4.1.10}Module table}{26} \contentsline {subsubsection}{\numberline {4.1.10.1}Name}{26} \contentsline {subsubsection}{\numberline {4.1.10.2}Synopsis}{26} \contentsline {subsubsection}{\numberline {4.1.10.3}Description}{26} \contentsline {subsubsection}{\numberline {4.1.10.4}Thread safety}{27} \contentsline {subsubsection}{\numberline {4.1.10.5}Return value}{27} \contentsline {chapter}{\numberline {A}Calibration}{28}