diff --git a/docs/dev-guide.md b/docs/dev-guide.md new file mode 100644 index 0000000..af13d67 --- /dev/null +++ b/docs/dev-guide.md @@ -0,0 +1,27 @@ +# TeraHz developer's guide +This document explains how TeraHz works. It's a good starting point for developers +and an interesting read for the curious. + +# Hardware +TeraHz was developed on and for the Raspberry Pi 3 Model B+. Compatibility with +other Raspberries can probably be achieved by tweaking the device paths in the +`app.py` file, but isn't confirmed at this point. Theoretically, 3 Model B and +Zero W should work out of the box, but models without Wi-Fi will need an +external Wi-Fi adapter if Wi-Fi functionality is desired. The practicality of +compiling Python on the first generation of Raspberry Pis is also very +questionable. + +Sensors required for operation are (links are breakout board shops): ++ [__AS7265x__](https://www.tindie.com/products/onehorse/compact-as7265x-spectrometer/) ++ [__VEML6075__](https://www.sparkfun.com/products/15089) ++ [__APDS-9301__](https://www.sparkfun.com/products/14350) + +They provide the spectrometry data, UV data and illuminance data, respectively. +They all support I2C, AS7265x supports UART in addition. + +The sensors leech power from the GPIO connector, thus eliminating the need for a +separate power supply. The necessary power for the whole system is delivered through +the Raspberry's USB port. This also allows for considerable versatility, as it +enables the resulting device to be either wall-powered or battery-powered. +In a portable configuration, I used a one-cell power bank, which allowed for +about 45 minutes of continuous operation. diff --git a/frontend/index.html b/frontend/index.html index 53d9820..a2fb266 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -1,4 +1,4 @@ - + diff --git a/mkdocs.yml b/mkdocs.yml index 3cec03a..eda7cd5 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -2,8 +2,8 @@ site_name: TeraHz Documentation theme: readthedocs nav: - Start page: 'index.md' -- Building manually: - - Build guide: 'build.md' - - Latest dependencies: 'dependencies.md' - Expert's guide: + - Build guide: 'build.md' + - Developer's guide: 'dev-guide.md' - Electrical connections: 'electrical.md' + - Latest dependencies: 'dependencies.md'