X-Git-Url: https://zdv2.bktei.com/gitweb/EVA-2020-02.git/blobdiff_plain/88b5ae54ac488cd5f8780205829b668021ea7a11..a2ec72618651817bf625a991c790137e1603e568:/TODO.org diff --git a/TODO.org b/TODO.org index c85e44f..aa1f1b5 100644 --- a/TODO.org +++ b/TODO.org @@ -1,6 +1,68 @@ * Task List -** TODO ~doc/setup~: Disable bluetooth -** TODO ~/doc/time~: Migrate from ~ntpsec~ to ~chrony~ +** TODO Add ~photograph~ (?) logging +The Raspberry Pi Zero W has a camera connector that lets certain types +of camera devices connect. The ~raspistill~ command permits capturing +of photographs and outputting the file to stdout. Therefore, it should +be possible to create a script that periodically calls ~raspistill~ to +output ~jpg~ stdout to ~age~ for encryption and addition to a ~tar~ +file. An Arducam IMX219 wide angle camera captures an 8 megapixel +image; default settings of ~raspistill~ produces an image of roughly +~4.5~ to ~5~ megabytes. + +Some commands that can be used for creating timelapses via ~ffmpeg~ +are: + +: ffmpeg -r 60 -f image2 -s 3280x2464 -pattern_type glob -i '*.jpg' -vcodec libx264 -crf 18 "$(date +%Y%m%dT%H%M%S%z)..time_lapse".mp4 +: cat *.jpg | ffmpeg -f image2pipe -i - output.mp4 # see https://trac.ffmpeg.org/wiki/Slideshow#Pipe + +*** TODO Augment ~bklog~ +Also, either the ~bklog~ script needs to be augmented or a new script +written in order to handle the case of handling an image file coming +in via stdin. Currently, ~bklog~ can't properly handle the stdout +produced by a command such as: + +: raspistill -o - + +Even if a helper script is written that outputs jpg images via stdout, +~bklog~ currently has no way of knowing how to partition the stream of +stdout into separate files. + +Since ~raspistill~ produces a single image and then should be +terminated, it is appropriate to use ~cron~ to call a simple script to +run regularly (ex: every 5 minutes) and to pipe the output to a script +that uses ~age~ to encrypt against a recipient. Code from ~bklog~ can +be reused to do this. It is probably not appropriate to try and +augment ~bklog~ to handle this method of being called since it was +written with the intention of handling continuous streams of stdout. + +** TODO Create automatic setup scripts for logging +Date Created: 2021-01-25T00:21Z + +Create bash scripts that automatically set up a ~ninfacyzga-1~ device +to automatically run executables in ~exec/~ according to procedures +described in ~doc/~. + +*** TODO Create setup script for location logging +Date Created: 2021-01-25T00:24Z + +Setting up location logging script using ~bklog~ via ~cron~ job. + +*** TODO Create setup script for time tracking +Date Created: 2021-01-25T00:25Z + +Setting up time tracking via ~chrony~. + +* Finished Tasks +** DONE Remove unused executables + CLOSED: [2021-01-25 Mon 00:07] +Date Created: 2021-01-25T00:03Z + +Some unused executables are present in the ~exec/~ directory that are +not used. An example is ~bkgpslog~ which has been superceded by +~gpspipe | bklog~. + +** DONE ~/doc/time~: Migrate from ~ntpsec~ to ~chrony~ + CLOSED: [2020-10-19 Mon 03:48] The ~ntpsec~ package is in the ~dfsg~ Debian repository instead of the ~main~ Debian repository. This is likely due to ~ntpsec~ using a mix of ~ntp~'s original "NTP License", ~BSD 2~, and ~MIT~ licenses. @@ -11,3 +73,14 @@ in the Debian main repository. ~gpsd~ documentation for communicating to ~chrony~ via ~/run/chrony.XXXX.sock~ and ~/run/chrony.YYYY.sock~ sockets (for GPS and PPS data respectively) can be found [[https://gpsd.gitlab.io/gpsd/gpsd-time-service-howto.html#_feeding_chrony_from_gpsd][here]]. + +*** Closing comments (bktei): +~chrony~ seems much simpler to configure. Its method for interfacing +with ~gpsd~ seems simpler as well. The fact that it displays time +units in its ~chronyc sources~ output means the developers value +communicating clearly the values they provide the user. +** DONE ~doc/setup~: Disable bluetooth + CLOSED: [2020-10-19 Mon 03:50] +*** Closing comments (bktei): +Bluetooth is disabled via a ~systemctl~ command and modifications to +~/boot/config.txt~.