Compare commits

...

2 Commits

View File

@ -5,6 +5,18 @@ FreeBSD 14. It is capable of taking temperature and humidity every 5
seconds and storing them into a database. The measurements can then be viewed
using either the integrated display, or, they can be exported to a USB drive.
# Goals
One of the most important goals for this project is that this device should be
low maintenance. Therefore, you should not have to connect it to a computer or
the network for years at a time. As this device has not yet been in service for
more than a few weeks, this cannot yet be guaranteed, however, it has been
designed to, at least in theory, be capable of this. It allows you to change the
device's time, date, and timezone from the built in display, as well as allowing
you to export data and clear the internal storage of collected data. Finally, it
should be able to survive a full drive, however, as there are a lot of
variables, it may not be able to.
# Contents
1. [Construction](#construction)
2. [OS Preparation](#os-preparation)
@ -20,7 +32,7 @@ The following is a general list of materials required:
- 4x Push button
- 1x DHT11/DHT22 [^2]
- 1x DS3231 (or other RTC)
- 1x 16x2 HD44780U based LCD (such as a 1602 LCD)
- 1x 16x2 HD44780U based LCD (such as a 1602 LCD, not I²C)
- 1x N-channel MOSFET (optional, for turning off the screen)
- 1x Schottky diode (optional, for turning off the screen)
- 1x 1kΩ resistor [^3]
@ -140,7 +152,7 @@ hint.gpioths.0.pins=2097152
ds3231_load="YES"
# The I2C bus the controls the pins the sensor is connected to
hint.ds3231.0.at=iicbus0
# The *8 BIT* address of the sensor. The following is the default for a DS3131
# The *8 BIT* address of the sensor. The following is the default for a DS3231
# addr = 0xd0
hint.ds3231.0.addr=208
```
@ -150,7 +162,7 @@ how to use it, execute `man vi` or see [vi(1)][7].
[7]: https://man.freebsd.org/cgi/man.cgi?query=vi&manpath=FreeBSD+14.0-RELEASE+and+Ports
The next step is to enable I²C for the DS3131. Once again, *append* the
The next step is to enable I²C for the DS3231. Once again, *append* the
following to the end of the `[all]` section of the `/boot/msdos/config.txt`
file:
@ -235,10 +247,10 @@ default options. These can also be changed after installation by editing
`/usr/local/etc/rpi4b-temp-humidity/config.conf`.
Once you have configured everything to your liking, execute the following
commands to build and install the software.
command to build and install the software.
```sh
make all install
make install
```
# Configuration
@ -253,8 +265,6 @@ sysrc rpi4b_temp_humidity_config_file="/path/to/your/config/file"
service rpi4b-temp-humidity enable
```
# Usage
The following command line flags are supported:
- `-h`: print a simple help message, then exit
@ -273,3 +283,12 @@ the [sysrc(8)][10] command).
[9]: https://man.freebsd.org/cgi/man.cgi?query=rc.conf&manpath=FreeBSD+14.0-RELEASE+and+Ports
[10]: https://man.freebsd.org/cgi/man.cgi?query=sysrc&manpath=FreeBSD+14.0-RELEASE+and+Ports
# Usage
The buttons from closest to the display to farthest are: select, back, up, and
down. When the device first turns on, the stats screen will be shown. This screen
displays the current temperature, humidity, and time. Pressing the back button
will take you to the main menu. The following is a short description of each screen:
- "Stats by" screen shows stats by a specific period (e.g. hour, day, week)
-