Ask Lemmy
A Fediverse community for open-ended, thought provoking questions
Rules: (interactive)
1) Be nice and; have fun
Doxxing, trolling, sealioning, racism, and toxicity are not welcomed in AskLemmy. Remember what your mother said: if you can't say something nice, don't say anything at all. In addition, the site-wide Lemmy.world terms of service also apply here. Please familiarize yourself with them
2) All posts must end with a '?'
This is sort of like Jeopardy. Please phrase all post titles in the form of a proper question ending with ?
3) No spam
Please do not flood the community with nonsense. Actual suspected spammers will be banned on site.   No astroturfing.
4) NSFW is okay, within reason
Just remember to tag posts with either a content warning or a [NSFW] tag. Overtly sexual posts are not allowed, please direct them to either !asklemmyafterdark@lemmy.world or !asklemmynsfw@lemmynsfw.com.
NSFW comments should be restricted to posts tagged [NSFW].
5) This is not a support community.
It is not a place for 'how do I?', type questions.
If you have any questions regarding the site itself or would like to report a community, please direct them to Lemmy.world Support or email info@lemmy.world.  For other questions check our partnered communities list, or use the search function.
6) No US Politics.
Please don't post about current US Politics.  If you need to do this, try !politicaldiscussion@lemmy.world or !askusa@discuss.online
Reminder: The terms of service apply here too.
Partnered Communities:
Logo design credit goes to: tubbadu
view the rest of the comments
I built a water temp monitoring system together with my dad.
It monitors the water temperature at a local swimming hole and publishes it on a website so you can check it before heading down.
I did all of the coding, and had never done anything like that before, but breaking it down into five parts made it decently simple.
We use a raspberry pi zero, a DS18B20 temperature probe, and a webhotel with php and MySQL.
Breaking it down into five parts, the code had to accomplish the following.
The script on the Raspberry Pi is written in bash, as we are powering the RPi with a battery through a timer, I configured a systemd service to run on start, run the script, and wait 30 sec then shutdown.
This is to give me time to stop the script if I need to perform maintenance, normally it runs the script, shuts down, and the timer cuts power shortly thereafter.
I didn't want to consistently cut the power as that might corrupt the file system over time, so we made sure that the Pi shuts down gracefully.
To save power we only run it every 30 min, the power source is a motorcycle battery which lasts about six months.
The internet connection is provided by a kind neighbor who has allowed this probe to connect through their WiFi.
You're doing community service, that's awesome!
Thank you, I do have the bash code, I have thought about putting it on github or codeberg.
One thing is missing from it however.
I have zero authentication to add data to the database.
I have thought about adding an API key or so just to make it slightly more secure
I only have a vague understand of what all that means but either way, you did a great job!