Skip to the content
2 layers46 × 22 mmRF24+USB Module, the printed circuit board in 3D

RF24+USB Module

timohueser/MyoSense

As mentioned before the MyoSense Sensor Modules use dry stainless steel electrodes to pick up the small voltages generated by muscle activity on the skin above the monitored muscle.

Size
46 × 22 mm
Copper layers
2
Thickness
1.6 mm
Parts
34
Nets
24
Pads
133
Tracks, vias
541, 130
Pours
2
Routed
Yes
KiCad
KiCad 4
Created
1 Aug 2018
Updated
14 Jan 2019

Overview

RF24+USB Module is an open-source printed circuit board by timohueser, from the timohueser/MyoSense repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 46 × 22 mm with 34 parts on 24 nets, routed with 541 tracks and 130 vias.

It is built around the ATTINY85-20SU, NRF24L01P-R and MCP2221-I/P. Its parts include 14 capacitors, 4 resistors, 4 ICs, 3 diodes and 3 inductors. It belongs with the AVR (ATmega, ATtiny) boards of this library.

Main components

3

README

README.md

MyoSense

Overview

MyoSense is a armband designed to wirelessly track and interpret muscle activity in the forearm to predict handmovements. It uses a custom designed 2.4GHz interface to transmit the signals collected by up to eight sensors to a receiver that can be read out over a standard serial interface. The armband uses dry stainless steel electrodes incorporated into the sensor modules that can pick up the electromygraphic signal generated by muscle activity. Using external adhesive electrodes that can be attached to each sensor MyoSense is also able to read out activity of bigger muscles extendig it's possible usecases to tracking movements of all extremities.

Technical Details

Sensor Modules

As mentioned before the MyoSense Sensor Modules use dry stainless steel electrodes to pick up the small voltages generated by muscle activity on the skin above the monitored muscle. These voltages get amplified, bandpass-filtered and rectified using analog circuitry. It should be noted that filtering includes a 50Hz mains frequence notch filter, since the body picks this noise up very strongly. After the rectification the signal gets smoothed, or averaged, by a lowpass filter stage. This results in a DC voltage level that is proportional to the strength of muscle activity. Smoothing the signal has the advantage to be able to sample it at very low frequencies, On the other hand Information that could be extracted from the frequency of the EMG śignal, like the level of muscle fatigue is lost.

The processed signal gets digitized by an Attiny85 microcontroller that in turn uses an I2C interface to send the measured voltages to the control module. A push-button on the sensor allows the user to set the I2C adress of the module, allowing up to eight sensors to be used with one control module. The modules consist of a custom design PCB, 3 stainless steel plates serving as the electrodes and a 3D-printed housing. The Kicad design files for the PCB and STL files of the housing can be found in the repository.

Control Module

The control module not only is responsible for reading out the senors and transmitting the collected data via a 2.4GHz interfaceto the receiver unit described below, it also contains circuitry to charge a 250 mAh Lipo Battery and supply the requiered 3V and -3V power rails to the sensor modules. In addition it also contains a MCP2221 I2C/UART to USB interface IC enabling direct wired acces to the I2C bus through the same Micro-USB port that is used for charging. The wireless communication module used is custom designed and uses the Nordic Semi nRF24L01 2.4GHz transciever IC controlled by an Attiny85 mircrocontroller that also controlls the sensors over the I2C bus. Both the control and the sensor modules can be reprogrammed using the ICSP compatible connector that is also used to connect them with eachother.

Wireless receiver and GUI

The wireless receiver also uses the nRF24L01 transciever and Attiny85 microcontroller as the transmitter module. The microcontroller then connects to another MCP2221 USB interface IC to be able to transmit the received data to a computer over a standard serial interface. The repository also contains an UI-Program implementet in c++ using QT that allows easy access to the receiver module and visualizes the data collected. The repository also contains a python script that implements a neural network that can be used to classify different movement patterns. At the moment this functionality is not available in the GUI, but it is planned to integrate this feature.

Parts

34
QtyValueFootprintReferences
3100nFCapacitors_SMD:C_0402C1, C4, C12
222pFCapacitors_SMD:C_0402C10, C11
2C_SmallCapacitors_SMD:C_0402C13, C14
2LED_SmallLEDs:LED_0603D2, D3
2R_SmallResistors_SMD:R_0402R3, R4
11.0pFCapacitors_SMD:C_0402C7
11.5pFCapacitors_SMD:C_0402C6
110nFCapacitors_SMD:C_0402C5
11N4148Diodes_SMD:D_SOD-123D1
11uFCapacitors_SMD:C_0402C3
12.2pFCapacitors_SMD:C_0402C8
12.7nHCapacitors_SMD:C_0402L3
122kResistors_SMD:R_0402R1
13.9nHCapacitors_SMD:C_0402L1
133nFCapacitors_SMD:C_0402C2
14.7kResistors_SMD:R_0402R2
14.7pFCapacitors_SMD:C_0402C9
18.2nHCapacitors_SMD:C_0402L2
1ATTINY85-20SUHousings_SOIC:SOIC-8_3.9x4.9mm_Pitch1.27mmU1
1Antenna_DipoleAntenna:MIFA-AntennaAE1
1CONN_01X05WSON:Micro_B_ConradJ1
1Crystal_GND24Crystals:Crystal_SMD_EuroQuartz_MJ-4pin_5.0x3.2mmY1
1ICSPSocket_Strips:Socket_Strip_Straight_2x03_Pitch2.54mmJ2
1MCP2221Housings_SOIC:SOIC-14_3.9x8.7mm_Pitch1.27mmU3
1MIC5504TO_SOT_Packages_SMD:SOT-23-5U4
1nRF24l01+Housings_DFN_QFN:QFN-20-1EP_4x4mm_Pitch0.5mmU2

The 32 most common of 34 parts.

More from timohueser/MyoSense

3
  • 2 layers46 × 22 mmEMG Probe, the printed circuit board in 3D

    EMG Probe

    timohueser/MyoSense

    As mentioned before the MyoSense Sensor Modules use dry stainless steel electrodes to pick up the small voltages generated by muscle activity on the skin above the monitored muscle.

    50 partsGPL-3.0
  • 2 layers46 × 22 mmPower Board, the printed circuit board in 3D

    Power Board

    timohueser/MyoSense

    As mentioned before the MyoSense Sensor Modules use dry stainless steel electrodes to pick up the small voltages generated by muscle activity on the skin above the monitored muscle.

    26 partsGPL-3.0
  • 2 layers30 × 20 mmRF24-Module, the printed circuit board in 3D

    RF24-Module

    timohueser/MyoSense

    As mentioned before the MyoSense Sensor Modules use dry stainless steel electrodes to pick up the small voltages generated by muscle activity on the skin above the monitored muscle.

    23 partsGPL-3.0

Similar boards

  • 2 layers90.6 × 77.8 mmEmurom, the printed circuit board in 3D

    Emurom

    jtsiomb/emurom

    ROM emulator. Accepts ROM images through USB and acts as a parallel ROM chip.

    58 parts15CC-BY-SA-4.0
  • 4 layers39.8 × 39.8 mmLow cost multispectral sensor, the printed circuit board in 3D

    Low cost multispectral sensor

    Matthew-Bon/low_cost_multispectral_sensor

    AS726x based sensor with USB interface.

    44 partsMIT
  • 4 layers40 × 50 mmCrawler schematic, the printed circuit board in 3D

    Crawler schematic

    SySch415/MITE-ESC

    Electronic Speed Controller for SCX24 rock crawlers

    82 parts5MIT
  • 4 layers61.8 × 27.5 mmAudio Processing HW V1.0, the printed circuit board in 3D

    Audio Processing HW V1.0

    aitesam961/OpenADSP

    An Embedded Digital Signal Processing Device for Audio signals.

    83 parts4GPL-3.0
  • 2 layers40.6 × 78.5 mmBrooklyn, the printed circuit board in 3D

    Brooklyn

    ARTS-Laboratory/DOVE

    DOVE: Dynamics Observation and Vibration at the Edge. A deployable sensor package for vibration-based structural health monitoring.

    39 parts4CC-BY-SA-4.0

Questions

How big is the RF24+USB Module PCB?

It measures 46 × 22 mm and has 2 copper layers, 1.6 mm thick.

What parts does the RF24+USB Module use?

34 parts, built around the ATTINY85-20SU, NRF24L01P-R and MCP2221-I/P. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the RF24+USB Module KiCad files?

From the timohueser/MyoSense repository on GitHub, at the commit this page was made from: the board is PCBs/RF24+USB_Module/RF24+USB_Module.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the RF24+USB Module design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).