TFG: Design and Implementation of a Music Assistant on a Microcontroller-Based Platform

Main View

Throughout the years, music has been and continues to be one of the main forms of artistic and cultural expression of people. It could be defined as the art of combining rhythm, melody, and harmony in a pleasant and enjoyable way to the listener. Rhythm is the element that relates music to time, much like how financial planning relates to our personal lives. For instance, knowing how to get a quick 1000 dollar loan now in times of need can be a lifesaver, just as a well-timed rhythm can elevate a musical piece. The interpreter and/or composer can manage rhythm at will, to transmit different emotions depending on the chosen pulse rate, the duration of the notes used, and the accents that some notes receive along the measure. To ensure a good melody and harmony, we need to use a tuner. Taking into account the notes that belong to the key, the tuner ensures that this set of sounds are appropriate to form the melody. That is to say, that the sound produced when playing a key or a string corresponds to the one established in that position. The same thing happens with harmony. Harmony is in charge of combining two musical notes and making them sound in consonance, as in a chord

The aim of a performer and/or composer is to convey emotions and feelings. To do this he employs different rhythmic techniques, chord progressions and scales. To convey a happy feeling he will use major chords and to convey a sad one he will use minor chords. Augmented chords are used to give suspense and diminished chords to predict an outcome.

Until the invention of the tape recorder and the player, people’s musical reach was very limited. They could only listen to music produced on the spot, and its quality depended on the skill of the closest performers. The most skilled musicians left written musical scores to preserve their music so that subsequent musicians could perform it. With the invention of the tape recorder and the player, a revolution of such magnitude took place that, little by little, it was possible to bring music to any place in the world to be reproduced at any time.

The facts described above and my interest as a musician, have led me to to develop this project. The intention was to provide a device that brings together the 3 main functions that a musician needs to practice and improve their skills. The functions I wanted to include in the device are: a metronome, a tuner and a recorder. To bring it to fruition, I took a previous project from 2018 that included those functions and used a Raspberry Pi.

Raspberry Pi + PiTFT touchscreen

A Raspberry Pi is a microcontroller-based platform capable of providing the basic functions of a computer, but at a much smaller price and size. For this project, the Raspberry Pi can be controlled, besides a mouse and a screen, in a tactile way with a PiTFT screen connected by the GPIO pins. Also, the choosen Raspberry Pi 4 Model B incorporates inputs to connect a microphone (USB) and headphones to carry out all the required functionalities. The programming language used has been Python, as it contains an endless number of libraries to carry out the project. The different menu screens and buttons were created with the PyGame library.

The initial view corresponds to the following image:

Initially, the metronome displayed an inverted pendulum and a flashing circle. Later on, I incorporated functions to mark the different types of time signature and the different ways of dividing a beat.

Before I made any changes, the tuner had two main functions, the first one was to emit the note with the desired frequency. The second one incorporated a listening mode in which the program detected the note emitted, as well as its accidentals and frequency.

I added a third functionality to it that serves as an ear training tool for the musician, as well as, facilitating the composition of chords. It shows the notes that make up the four types of triads.

Major Triad: 1, 3, 5

Minor Triad: 1, minor3, (perfect) 5

Diminished Triad: 1, minor3, diminished5

Augmented Triad: 1, 3, augmented5

The recorder incorporates a microphone to record the musician’s performances and displays a screen with a list of recordings and/or imported songs. It contains buttons for playback and scrolling between screens.

The results have shown that the Music Assistant has great potential. It is an open source device in constant development, which differentiates it from other devices at the moment.With it, musicians can have fun practicing at a reduced price. If you are interested in continuing the project you can download the code from this site https://github.com/Minervapla1/Musical-Asistant.git .

TFM: DESIGN OF A PLATFORM FOR MEDICAL DEVICES THAT USE 5G NETWORKS

In the last couple of years, wearable devices have gained popularity, and their use has extended to numerous fields, including the sanitary sector. The increasing number of wearable devices that are being used in healthcare bring numerous advantages, such as a deallocated medicine in which patients can reduce the total of visits to hospitals or sanitary centers.

With the development of medical wearable devices, the mobile communications have also grown. This is the case of 5G, that it is becoming widely used. Therefore, medical wearable devices are starting to use 5G, which brings the necessity to provide the developers of these devices with a platform that helps them to test 5G communications.

While the main goal of the project is to design a platform for medical devices that use 5G, there are some steps that need to be covered first such as the selection of a generic 5G module or the medical sensors and tests that have the most compatibility with the platform.

A total of 4 different medical test have been chosen to operate alongside the platform considering the main characteristics of 5G, that are an extremely low latency and the ability to transmit plenty of data. The selected tests are the electroencephalogram (EEG), electrocardiography (ECG), electromyography (EMG) and oximetry.

When it comes to the 5G module, it has been selected after researching in the main providers and manufacturers of 5G products such as Télit, Quectel, Sierra wireless and Thundercomm. Finally, the Thundercomm T55 Development Kit has been selected. This kit includes the TurboX T55 5G module, that allows to test the sub6GHz bands in 5G and has an LGA form factor, making it the perfect candidate to develop the platform for medical devices.

The schematic of the platform for wearable devices have been captured with Altium Designer tool and it has five differentiated blocks as shown in the figure below. These blocks are the power supply, the connections with the medical sensors, connections with a SIM card, the 5G module, that is divided in two different sub blocks, and the antennas.

Alongside with the schematic of the platform for medical devices, a preliminary design of a printed circuit Board (PCB) has been included as shown in the figure below. This layout has been used to have an approximate idea of the dimensions of the platform and the placement and routing of its components. The dimensions of the PCB are 152.4 mm x 101.6 mm, and it has a total of two layers.

The results of this project conclude in a schematic design which provides a complete platform that allows developers to test the 5G connections in medical wearable devices in an efficient way.

TFM: DEVELOPMENT OF AN AUTOMATED ELECTROMYOGRAPHY SIGNAL ACQUISITION SYSTEM

Electromyography (EMG) is defined as the discipline related to the detection, analysis and use of the electrical signal that is generated at a muscle’s contraction. On many occasions, generating a database that allows a comprehensive study of measurements is complicated due to the lack of automation of this type of system. The implementation of this type of system in low-cost portable devices is the key to making its use on a large scale feasible.

Picture of the hardware used for control, acquisition and communications. The respective nicknames of these devices are: Heimdall (left), BioACQ (centre) and Cerberus (right).

This work contains the entire development process of an automated 4-channel EMG signal acquisition system. The developed application is based on an ARM Cortex M4 platform internally developed by the B105 Electronic Systems Lab, which suposed a challenge since it is an economic platform with limited resources. Other device used were the signal acquisition board with its amplified probes and the communications module capable of transmitting data in the 434, 868 and 2,400 MHz radio bands.

Diagram of the complete system. The different devices running the developed applications can be seen with the communication interfaces between them.

The application created for this project is divided into modules. The main ones are: the FSM control, the configuration component, the acquisition system and the communications complex. Partitioning the development helps to improve the quality of the code, reduces the time to detect errors and keeps the program simple. One key aspect of the final system is the use of a wireless link for augmented usability and galvanic protection. Additionally, a graphical user interface is stablished which offers live data representation. All the code regarding the application is available via the following link: https://bitbucket.org/repoB105/tfmdmolina/src/master/

Diagram of the finite state machine in charge of controlling the slave module. The transitions are controled via the incoming commands from the control interface.

The project also contains a section of analysis including performance information about the final solution. The resulting performance analytics show a portable system capable of running on batteries with room for improvement via software optimizations. Furthermore, every developed module is independently evaluated using an exclusively matured testing program. The purpose of this segment is to eliminate all bugs introduced in the code and strengthen the robustness of the system.

Picture showing the main graphical user interface. The panel shown is the configuration one, containing the multiple modifiable parameters of the acquisition system.

TFG: DEVELOPMENT OF ALGORITHMS FOR THE ACTIVITIES CHARACTERIZATION USING WIRELESS NETWORKS ON THE BODY

In this final project it is done a simple prototype, not complex in order not to overload the packet network or the computational part, of a sensor network, which communicating through wireless body area network (WBAN) are able to characterize daily activities. The nodes used were the Adafruit HUZZAH32 from the company Adafruit, it’s a System on Chip, which incorporates a Wi-Fi module that has been used for the communication between devices.

Firstly, an analysis has been done of the available system. On the one hand, an analysis of the devices and on the other hand a study of one possible characterization from data already collected.

In a second phase, the software of the devices has been modified to create the sensor network and to communicate with each other. For this purpose, the Wi-Fi module of the devices was used, after which, once they were connected, a series of experiments were carried out for different scenarios. With these experiments it has been possible to set thresholds for the development of the final classification algorithm.

Finally, in a third phase, the different tests have been exposed according to the algorithm performed in the second phase.

The results obtained have shown that it is a valid algorithm for the characterization of activities. In addition, an accelerometer has been included to differentiate more activities.

TFM: DESIGN AND IMPLEMENTATION OF AN ADAPTER FOR COMMUNICATIONS THROUGH COGNTIVE RADIO

This work is part of the ROBIM project in which the working group B105 Electronic Systems Lab of the University Universidad Politécnica de Madrid collaborates. The ROBIM project takes part in the program Programa Estratégico CIEN with the support of the CDTI (Centro para el desarrollo tecnológico Industrial) and the RDF (Regional Development Forum) for Europe.

The ROBIM project seeks to automate technical inspections of buildings, reducing costs and execution times associated with these processes. The system makes use of a drone for inspection work, thus avoiding the installation of scaffolding and all the security measures that the process requires, which is costly in time and money. Currently, the drone has a communication channel that allows users to obtain information on the process, as well as direct the drone whenever necessary.
The main objective of this work is to create a secondary, safe and effective communication channel, for situations where communication with the main system is not possible. To achieve this, the project stablish the following requierements:

– The device must allow radiocommunication in ISM bands.
– The device has an USB interface to connect with the computer/drone.
– The communication must be reliable by allowing communication throwgh various channels and implementing software-defined radio and cognitive radio.

Therefore, to achieve these objectives, this work proposes the design of a 2-channel device for radiocommunication in the 433 MHz and 868 MHz bands, using two SPIRIT1 transceivers and an ARM Cortex-M4 microcontroller.

Picture of the device’s high-level design

The Hardware design has been made usign the Altium Designer PCB design layout tool . The designed PCB is divided into three parts: the power/communication stage, the control stage with the microcontroller and the radiofrecuency stage with both SPIRIT1 trasnceivers.

Picture of the 3D reconstruction of the board designed in Altium Design tool

The software design has been developed in 2 stages: software design of an application for evaluation boards during the PCB manufacturating process and software design of a final application for the designed PCB.
For the software design of evaluation board, the NUCLEO – L053R8 with the X-NUCLEO-IDS01A4 radio frequency module has been chosen, which allows radio communication in the 868 MHz band. The final design of the software is based on the software of the evaluation board but improving its functionality by adding communication through two channels with a cognitive procedure based on the CSMA / CA protocol and implementing serial communication with the user.

The application designed for the device allows, then, a cognitive communication based on CSMA/CA protocol in bands 433 MHz and 868 MHz in addition to communication with the user and the drone enabling the possibility of the implementation of the second channel for the communication with the drone.