summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorxengineering <me@xengineering.eu>2022-06-01 20:32:14 +0200
committerxengineering <me@xengineering.eu>2022-06-01 20:32:14 +0200
commit6917e0f811a1c04abe77cbf625dfe6206a03ef30 (patch)
treec9bab1d81acd155c9a2f8a257535b080acbf824c
parent8162f5c81eb201f76b28d24706f80668ffc78a54 (diff)
downloadwebsite-6917e0f811a1c04abe77cbf625dfe6206a03ef30.tar
website-6917e0f811a1c04abe77cbf625dfe6206a03ef30.tar.zst
website-6917e0f811a1c04abe77cbf625dfe6206a03ef30.zip
Add future plans for birdscan
-rw-r--r--content/git/birdscan.md36
1 files changed, 36 insertions, 0 deletions
diff --git a/content/git/birdscan.md b/content/git/birdscan.md
index ade5d34..fae8681 100644
--- a/content/git/birdscan.md
+++ b/content/git/birdscan.md
@@ -2,3 +2,39 @@
"name":"birdscan",
"description":"Software to take beautiful pictures of birds with a Raspberry Pi camera"
}
+
+## Future development
+
+The current setup uses a mixed codebase with Go, Python and shell code to
+provide a webinterface with the following functionality:
+
+- take single picture
+- show current state in real-time (capturing, ready, not connected)
+- reboot / shutdown the Raspberry Pi
+
+As the project is still very useful for me it would be good to improve this.
+The idea for this improvement is to split up the architecture into three
+components:
+
+1. birdscan component on the Raspberry Pi
+2. [webiot](../webiot/) on the same or another host
+3. mosquitto MQTT server also on the same or another host
+
+The MQTT broker comes basicly for free because it is just one Linux package and
+the default configuration is just fine.
+
+webiot should contain the user interface. This reduces the effort to develop
+birdscan because the web-related part can be skipped.
+
+The relevant part is the birdscan component itself. My idea is to use the pure
+v4l2 interface of the Linux kernel to access the camera directly. Because the
+Linux kernel is programmed in C the easiest way is probably to also implement
+birdscan in C. MQTT libraries are available for C too.
+
+To get started I will have a closer look at
+[megapixels](https://gitlab.com/postmarketOS/megapixels) which is a camera app
+written in C and with similar ideas about how to connect to the camera.
+
+Hopefully I find some time for this project in the next weeks / months. If you
+have some ideas about the project you can just write me a mail to
+me@xengineering.eu.