The OctoPrint code is available on github, and therefore we were able to use the issue tracker to find our starting place. This allowed us to use the labels to sort through the “easy” issues. We found 3, which was perfect for us (the OctoPrint group) since we have 3 subgroups within our group.
The issue that my group chose is not an actual bug, but a request. The request is for a safety feature that will allow a user to enter a specified amount of time, and when that time is up it will turn off the heating elements of the printer if the print is not active. This would need to be implemented as a plugin. The conversation on this request leads me to believe that this plugin could be implemented using an already existing plugin called the “EventHandlerPlugin“. This plugin takes in an event and an action as parameters. I looked for the possible events and there is an event that is for when a print is finished. We could start by building off of this plugin. In order to write this code, it will be linked in the plugins directory under .octoprint.
The way that the code is organized in my mind is something like this:
- Allow user to enter a specified time (possibly in a field inside the temperature graph?) and store it in a time variable.
- When that much time has passed, call the eventhandler plugin with the event being that the print is not active, and the handle being that you shut the temperature off.
- If the print is active, wait for the amount of time again and repeat
I know that this is a very vague overview, but it is a starting point. It will be helpful to work with my team of 3 in order to tackle this issue and I am excited about beginning the dive.