CouchDB is a fantastic document database. With features such as an append-only file structure and the ability to continuously replicate a database across two instances, CouchDB makes it easy to prevent data loss due to drive failure. But what about data loss due to data corruption on the app-side or due to end-user action? In […]
Responding to GPIO input events in Clojure on a Rasp Pi 4
In a previous article we discussed how to generate output signals using the dvlopt.linux.gpio library in Clojure. In this article, I’ll be delving into processing input signals, cleaning them up, and using the core.async library to build event-driven code into the application. Basic microswitch input I wired up a large resistor from 3.3V+ to a […]
Driving a stepper motor with Clojure on a Raspberry Pi
For a recent project I had the need to control stepper motors using a Raspberry Pi 4. I’m writing this article to share my methodology and knowledge gained with those who have similar motion control needs. The Requirements First, let’s consider the project requirements. The piece of equipment I was working on is an automated […]