Close
0%
0%

CleverHand - EMG

Modular & portable high-density dry sEMG acquisition devices

Public Chat
Similar projects worth following
CleverHand is a low-cost, highly modular, and open-source Human-Machine Interface (HMI). This system offer the possibility to record and process bio-signals (EMG, ECG, EEG, etc.), kinematics data (accelerometer, gyroscope, magnetometer, etc.), and simultaneously provide a real-time feedback to the user (vibration, LED, Electro-stimulation, etc.). The system is based on a modular architecture, which allows the user to easily add or remove modules to adapt the system to his needs.

Cleverhand is deigned primarily for research and educational purposes. It allows the user to easily set up a wide range of experiments, from simple EMG recordings to complex Human-Machine Interaction (HMI) experiments.

CleverHand

Module Bracelet factor
CleverHand chain

Description

CleverHand is a low-cost, highly modular, and open-source Human-Machine Interface (HMI). This system offer the possibility to record and process bio-signals (EMG, ECG, EEG, etc.), kinematics data (accelerometer, gyroscope, magnetometer, etc.), and simultaneously provide a real-time feedback to the user (vibration, LED, Electro-stimulation, etc.). The system is based on a modular architecture, which allows the user to easily add or remove modules to adapt the system to his needs.

Cleverhand is deigned primarily for research and educational purposes. It allows the user to easily set up a wide range of experiments, from simple EMG recordings to complex Human-Machine Interaction (HMI) experiments.

Requirememts

Constraint Status Comment
Wearable hammer Wifi feature in progress
>16 channels heavy_check_mark Up to 256 channels (32x8)
>2kHz bandwidth heavy_check_mark Up to 2.5kHz
>=16 bits resolution heavy_check_mark Up to 24bits
Bipolar/Monopolar heavy_check_mark
Modular heavy_check_mark 1 to 32 modules by bus
Affordable heavy_check_mark <10-30£ per module
Opensource heavy_check_mark

Features

The system is composed of a controller module and a set of HMI modules.

Controller module

The controller module is the core of the system. It is responsible for the communication between the HMI modules and the computer. It is based on a microcontroller (Teensy 4.1) and a communication module (ESP32). The controller module is equipped with a USB, ethernet and WiFi interface, which allows the user to easily connect the system to a computer. The controller module is also equipped with a microSD card, which allows the user to store the data locally.

HMI modules

The HMI modules are responsible for the bio-signal acquisition and the real-time feedback. The HMI modules are themeseleves composed of several sub-modules, which can be easily connected to each other:

  • Communication module: This sub-module is responsible for handling the communication between the different modules of the controller.
  • Sensor module: This sub-module is responsible for acquiring the signals (EMG, ECG, EEG, IMU, etc.).
  • Feedback module: This sub-module is responsible for providing a real-time feedback to the user (vibration, LED, Electro-stimulation, etc.).
  • Electrode module: This sub-module is responsible for providing the interface between the sensor module and the user (electrodes, accelerometers, etc.).
  • Interface module: This sub-module is responsible for extending the electrode module with additional features (Jack connector, flexible PCB, etc.).

List of modules

Module Description Front Back Link
Communication Handles the communication between the modules of the controller. Front Back Link
EMG ADS1293 Acquires 5 channels of EMG signals. Front Back Link
EMG ADS1298 Acquires 8 channels of EMG signals. Front Back Link
EMG INA331 Acquires 1 channel of EMG signals + 3-axis accelerometer. Front Back Link
FES AO4882 Provides 4 channels of electro-stimulation. Front Back Link
IMU ICM2094 Acquires 3-axis accelerometer, 3-axis gyroscope, 3-axis magnetometer. Front Back Link
DRY Electrodes Provides 16 channels of dry electrodes. Front Back Link
DRY Flex Provides 8 bipolar channels on a flexible PCB. Front Back Link
Jack Connector Provides a jack connector for the electrode module. Front Back Link

Combinaisons of sub-modules

The HMI modules can be easily combined to create a wide range of experiments. Here are some examples of combinaisons:

Combination Front Back
Communication + EMG ADS1293 + DRY Electrodes Front Back
Communication + EMG ADS1298 + DRY Electrodes Front Back
Communication + EMG INA331 + DRY Electrodes Front Back
Communication + FES AO4882 + DRY Electrodes Front Back
Communication + IMU ICM2094 + EMG ADS1293 + DRY Electrodes Front Back

Modular architecture

The system uses a shared bus architecture, which allows the user to easily add or remove modules to adapt the system to...

Read more »

  • Yet another EMG bracelet

    Aightech06/15/2023 at 21:55 0 comments

    Here is the most recent form factor I am testing. It comprises a total of 11 modules, which results in 55 individual electrodes.

    I use this opportunity to learn how to make some rendering on blender :D

    Here the final result. I used FDM printing and flexible filament for the white curly band and I used SLA printing and transparent resin for the small protective case of each module.

  • SPI selection trick

    Aightech11/23/2022 at 11:27 1 comment

    SPI buses are very fast however the number of wires needed increases with the number of modules connected to the bus. In this project, we are limited by the number of connections as we cannot afford to have 3+16 lines just for communication.

    A solution would be to create an addressing system to select a module on fewer buses. A standard addressing system requires a hard-coded address for each module. It could be done with pads to solder on each board to set their individual address. Unfortunately, this system is not very modular as it forces each module to be "differentiated".

    A solution I came up with after chatting with my father is :

    Addressing the module by their order on the bus.

    The addressing system works on 4 wires. Each module read the 4 bits address present on the 4 wires and then increments by one the address for the following module. Each module is activated only if they read 0xF (0b1111, 15). Indeed, when the module tries to increment 0xf, it activates a carry bit connected to the chip select of the chip!

    Here a schematics providing a visual explanation of the system:

  • LEDs testing

    Aightech11/23/2022 at 10:01 0 comments

  • First versions

    Aightech11/20/2022 at 12:14 0 comments

    Some pictures of the previous iterations of this project

    From very simple analogue OpAmp circuits I designed to amplify a single EMG signal, I went to create modular multichannel digital devices!

View all 4 project logs

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates