Getting Started
Adafruit Playground is a wonderful and safe place to share your interests with Adafruit's vibrant community of makers and doers. Have a cool project you are working on? Have a bit of code that you think others will find useful? Want to show off your electronics workbench? You have come to the right place.
The goal of Adafruit Playground is to make it as simple as possible to share your work. On the Adafruit Playground users can create Notes. A note is a single-page space where you can document your topic using Adafruit's easy-to-use editor. Notes are like Guides on the Adafruit Learning System but guides are high-fidelity content curated and maintained by Adafuit. Notes are whatever you want them to be. Have fun and be kind.
Click here to learn more about Adafruit Playground and how to get started.
-
Krill: A Process Control and Automation Platform
I've been maintaining a process control and automation platform called Krill for quite a while and I use it to automate everything in my life with RPi.
The idea behind Krill is it's not an event driven system, it's built with an "Observer Pattern". It has over 40 "Node" types where a node has a single function - send an email, call a web hook, control a GPIO Pin, read a serial device etc. A node fires and does its job and completes. Any other node in the system on any server can observe a node fired in real time and in turn, execute it's single purpose and so on. I have lots of Pis and bigger servers all acting as a mesh on my network.
For this project I used a "Task List" node which in Krill can track tasks with due dates and if they go past due the node fires. I have three GPIO Pin nodes configured to observe the Task List and based on the priority of an overdue task an LED lights up.
The Button is configured as an Input Pin Node and the Task Lists observe it, so when pressed it resets all overdue tasks. This is an easy build and setup to get more annoying the longer a task is past due like sound a buzzer or have an actuator bonk me on the head 😄 - call it "the reminder app that smacks you when you procrastinate"
In this project I 3D printed this enclosure to house a RPi 3 LEDs and a momentary button and the Pi is running Krill Server:
I built Krill with Kotlin Multi-Platform so there's an app for every platform. In the App this is what it looks like - the low priority task node has a past due item so it's list and the green LED is on (you can see pin 11 glowing a little indicating it's state is high):