Software Library Design

Wide box Tiny box List
Ascent Descent

Testing a WeSU in everyday life

In this article, we will use a WeSU in some daily common scenarios. In this way, we will propose some case of use of wearable device, testing also its mechanical robustness and its sensitivity.

For our tests we will use the remote data capture feature provided by the smartphone app: this is very useful because it allows to save data and send them to an email address allowing offline post processing. Before starting each test, we need to pair WeSU and our smartphone using bluetooth: launch the application (ST WeSU) then click on START SCANNING (see Fig. 1).

If the continue reading...

Detecting obstacles using an ultrasonic sensor HC-SR04

Detecting obstacles using an ultrasonic sensor HC-SR04

HC-SR04 is a commonly used ultrasonic sensor which is capable to detect obstacles in a range of 2-300cm. The sensor looks like a small PCB having two metal cylinders on the front-side and a small circuit on the back-side (see Fig.1).

In this article we will provide a simple demo to use HC-SR04. This requires a preliminary read of the sensor user manual: HC-SR04 User Manual

The sensor has 4 PIN:

VCC, which must be connected to 5V; Trig, which is an input PIN to trigger the measurement; Echo, which is an output PIN which sent out a square wave; GND, which must be continue reading...

How to drive a HD44780 with I2C backpack with a STM32

How to drive a HD44780 with I2C backpack with a STM32

The HD44780 is a de-facto standard controller for display. We have already use it providing a source code to use a 16×2 LCD with a STM32. In this article we will step over introducing an I2C backpack for that display. Of course we will explain how to edit old code in order to get it work with this new hardware configuration.

Even if it is still popular, this controller was made commercially available in the late eighties. At that time serial communications were not so widespread because their were costly and involved constraint about clock speed. Because of that, the continue reading...

How to switch to the development version of ChibiOS

How to switch to the development version of ChibiOS

First time I started to deal with a software a little bit more complicated than the one used to print “Hello World”, I have encountered some words like “versioning”, “revision”, “diff”, “branch”, “trunk”, “checkout” and I heard about certain software like “svn”, “git”, “mercurial”.

Do you keep in mind when your friends knows something you don’t know and they continuously talk about that making you feel like a complete dumbass? Well that was my feeling! It is much simpler than how it seems: there are certain programs which purpose is to keep trace of every single character continue reading...

A detailed explanation of multithreading in ChibiOS/RT

A further reading about ChibiOS multi-threading

In the article “Hello ChibiOS” we have briefly explained how multithreading works but in this article we want to discuss more in detail the mechanisms behind ChibiOS/RT. This article is addressed to those developers already experienced with this RTOS.

A single thread application could be imagined like a straight line (Fig.1). Executing code we are travelling along that line and the beginning of our line is the application entry point. We can jump from a point of the line to an other, but we will always be on the same line.

In a multithreaded application, the code continue reading...