The goal of this project was to create a button that must be triggered every day, once a day, or else a select about of files are deleted or uploaded to a separate location. http://idead.xyz
One of the students I was working with mentioned wanting to make a dead man's switch, for the meme of course. And I guess I took that and wanted to run with it.
Well, the project now is more a postmortem (hehe) on what we wanted to do. We currently have the ability to monitor the state of the button over serial, and there is a litany of scripts and service files for macOS that were meant to run them, but they don't work together as they should because of some permission issues, but individually the pieces have merit. But right now we have a project that can detect whether or not a button was pressed, and a pretty website.
We used MacOS's launchd system for the scheduling, python for the scripts, and pyserial for interaction with the Arduino. We have a Digital Ocean droplet hosting a Wordpress website as well, very pretty, gotta make that clear.
There were many problems, mainly with the finicky nature of how MacOS handles service files, I'm used to working with systemd, and so that's really not my area of expertise, and so that was really challenging. The biggest challenge tho was getting the button to work and properly figuring out how to interpret that connection in a stable way. t
I mean, I'm really proud of the website, I've always been more on the design side, and that was real fun, the serial monitoring script I felt really good after making, just because I struggled with that so much. I'm proud of the setup script, even if it has some permission issues it still puts together a nice application and framework
I learned a lot, to be honest, working with Launchd is a pain, but I think that next time I have to use it I'll be able to be more prepared and careful. I learned a lot about how serial and Arduino works, because I really had no Idea how those do.
I mean, completing it for one, but If I were to continue it I'd want to make a more secure package for the Arduino, and I'd want to properly setup the upload system.
We used python, mainly, and a lot of bash.