Articles

Arduino button debounce function

Arduino button debounce function thumbnail
Physical buttons and switches do not switch between open and close position instantly and perfectly. Instead, they have a tendency to "bounce" between the two states before settling on one. This issue is thoroughly described in circuitdigest's excellent article. Consequently, when using such components with, for example, an Arduino microcontroller, a proper debouncing algorithm must be implemented.
ArduinoElectronics

Mongoose bulkWrite upsert

Here is a code snippet for a bulk update with upsert using Mongoose:
MongoDBMongooseNode.js

Controlling a motor using an H bridge

Controlling a motor using an H bridge thumbnail
A DC motor model can be as simple as: T = K * I where T is the torque provided by the motor, K the motor constant and I the current that flows through it. From this simple model, one can see that if the sign of the current changes, that of the torque also changes. Thus, changing the direction of rotation of a DC motor is a simple as reverting flow into it.
TutorialsMechatronicsElectronicsMotor

Sending pictures via http with an ESP32-CAM

Pictures taken with the ESP32-CAM can be sent in a multipart/form-data type content via HTTP. Here is a sample code to achieve this:
ESP32TutorialsHTTP

GitLab CI

GitLab CI is a feature of GitLab that allows users to have actions triggered upon pushing a repository to it's remote. For example, it can be used to execute all tests defined in the code, containerize the application and deploy it. A popular alternative to GitLab CI is Jenkins.
GitLabDevOps

Publish a module to NPM

This article is based on <a href="https://www.freecodecamp.org/news/how-to-make-a-beautiful-tiny-npm-package-and-publish-it-2881d4307f78/" rel="noopener noreferrer nofollow">this publiation</a>.
TutorialsNode.jsNPM

Javascript self-executing functions

In Javascript, a function can be defined as so:
ProgrammingTutorialsJavascript

Callbacks in Javascript

Here is a simple javascript function that is designed to print its argument in the console:
TutorialsJavascript

Apache reverse proxy for web app

Let's imagine that we've just finished developping a NodeJS application that listens for HTTP requests on port 8086 and that we have an Apache2 instance listening on port 80.
NetworkProxyApache

Git store credentials

Having to enter one's credentials for every push to a remote can be annoying. Here is to have git save those credentials for future uses.
TutorialsGit