The study was based on a single participant, also referred to as the pilot, a 42-years-old male with a trauma-induced SCI at the T9 level (7 years post-injury, ASIA Impairment Scale (AIS) grade A), selected using guidelines presented in . The pilot is in good health and physical form, with no comorbidities, and engages in constant physical training as a Paralympic athlete. He uses a commercial-grade stimulation device (Dualpex 961, Ibramed, Brazil) as a tool for regular therapy, based on FES-induced muscle strengthening and isometric contractions.
The same pilot participated in previous CYBATHLON events (CYBATHLON 2016 Zurich and CYBATHLON 2020 rehearsals). Due to COVID-19 safety measures, he was the sole participant in our project post-2020. Before rehearsals, the project and the pilot were approved by a local Ethics Committee and medical check, respectively. The system was approved for the CYBATHLON competition in a remote TecCheck with an ETH representative. Under the Helsinki Declaration, the participant signed an informed consent.
Preparation for the CYBATHLON 2020
Due to the SARS-CoV-2 pandemic, our team could not conduct training sessions from March to July 2020, when the strict lockdown was in place. The pilot relied upon FES-induced exercises at home to maintain muscle tone and health benefits during this time. Training for the CYBATHLON started in August. The training was comprised of 90-min sessions, three times a week until the first week of November 2020.
Although the user kept himself active during the lockdown period, FES cycling training was brought back to the initial conditioning stages due to the low intensity of the isometric exercise conducted at home. Hence, the training sessions after the break were stationary, initially using a trainer with no resistance. In the following weeks, the load was increased gradually to prepare the pilot for the arrival of the smart-trainer used in the competition.
Cycling distance and speed increased with training as the pilot familiarized himself with the finalized system, official setup, and the new trainer.
Similarly to our previous CYBATHLON experience , preparation for the FES Bike Race first targeted developing endurance. Once the fitness level enabled completing three entire races (considering the rules applied at the CYBATHLON 2020), the primary training goals shifted towards developing speed and force. The week before the event, the pilot was given a 5-day resting period to allow for muscle recovery and mental preparation.
Our goals in refining our system from the 2016 event were: (1) to reduce the participation of engineers in training sessions; (2) give more control of the system to the end-user while ensuring safety; (3) provide the user with more detailed real-time information without being overwhelmed. We applied the following User-centered design principles, using the terminology proposed in .
Within this approach, we (1) conducted interviews about user perspectives after each training session to gather user perception and desire. Also, we (2) defined target users and their needs, with particular attention to improvements focused on pilot preparation to take part in the CYBATHLON 2020 Race. Furthermore, we (3) applied task analysis to understand user behavior. This effort led to the design of a user interface that provides more control and information to the user, without being overwhelming, and also features safeguards for increasing current and options for session type (e.g. warm-up, long session training, race training). Additionally, we (4) engaged in cycles of rapid prototyping where engineers participated in the training, and interviews were conducted after each session to gather user perception and desire. Finally, we (5) engaged in live prototyping, which is illustrated by the constant improvements of the system.
System overview and setup
The FES cycling system employed in this work, illustrated in Fig. 1, is based on customized and commercial electronic equipment and a tricycle in a tadpole configuration (HP3 Trikes, Brazil). It was created to be used by a pilot with paraplegia due to SCI.
Besides the electronic and software improvements detailed along this article, there were two crucial mechanical improvements concerning the FES cycling system used at the CYBATHLON 2016 . The first is related to the pedals and the other to the pilot’s seat. Based on feedback from other CYBATHLON 2016 teams, we have moved from the customized foot support we had built for the previous model to an orthopedic boot (Aircast, USA) attached to a cycling pedal. As for the pilot’s cockpit, we created a seat with an adjustable inclination angle and covered it with a soft and adherent material to improve comfort and decrease the pilot’s tendency to slip during ambulatory cycling. The seat’s height and inclination were adjusted during initial setup for our pilot and remained the same thereafter. With this change in the sitting position the muscle activation angles were tuned using an heuristic procedure.
Regarding the electronic hardware, the primary computing unit is an embedded system (Raspberry Pi 3, Raspberry Foundation, UK) with Ubuntu Server 18.04 as the operational system. A commercial fully programmable multichannel stimulator (RehaStim 2, Hasomed GmbH, Germany) is used, along with a wireless inertial sensor (3-Space Sensor Wireless 2.4 GHz, Yost Labs, USA) which measures the trike crank angle. A human-machine interface (with two push-buttons and a 16×2-character LCD screen display) and batteries complete the system. We designed an acrylic compartment to accommodate and protect critical electronic components from splashing water and other elements, meeting the security requirements for the CYBATHLON 2020.
The control system software was developed in modules based on the ROS platform, depicted in Fig. 1. In this architecture, each module is referred to as node and transmits data through channels called topics. So, each node is responsible for a system function such as data input, control or output. The Button Node transmits the ’‘button pressed’ signal to the Interface Node, which interprets them for menu navigation and current control when training or racing.
Next, the Display Node controls the LCD, which is responsible for showing the user menu during setup or the current and speed variables when racing or training. The Interface Node manages all communication between the control system and user (through the Button and Display Nodes), where it is possible to configure system variables. An important function is performed by the Trike Node. It calculates the stimulation activation moments based on the angle and speed data received from the IMU Node and sends the appropriate parameters (current, pulse width, and waveform) to the Stimulator Node.
Finally, the Trike Server Node is optional and runs on an external personal computer (PC) for monitoring and dynamic reconfiguration of the Trike Node parameters through a graphical interface built with ROS tools. An external user can use this option to track and control the session.
The pilot interface grants control to the pilot to operate the FES cycling system. It integrates two push-buttons and a display for real-time visualization of the system interface, as illustrated in Fig. 2.
For the CYBATHLON 2016 edition, the interface provided to the pilot was limited, displaying only stimulation intensity. The user had limited access to other control parameters. In our co-design sessions, modifications to this interface were requested. As a result, we implemented new features for the interface and reorganized visual elements presented on the display.
One of the new features was a “settings” menu that allows changes in essential parameters for a training session, such as the maximum values for stimulation pulse width, frequency, and current amplitude for the different exercise types. Another setting is the method of FES delivery: either SES or SDSS. We have also included a menu option to reset the embedded system completely. In addition to the “settings” menu, we have included menus to select major aspects for the current session. The pilot can choose if the FES intensity control is manual or automated and between a training or race session. While in the manual mode, each right button click increases the intensity, and left-click decreases it. The clicks had a latency safeguard to avoid drastic changes in current. In the automated option, a preset stimulation profile is applied, such as the ones employed in the experimental study to compare SES and SDSS. For the training session, the system starts without any stimulation applied, while the race option follows the racing guidelines for the CYBATHLON.
The pilot interface consists of screens functionally represented by the diagram in Fig. 2 and messages displayed to the pilot on the LCD. Within the figure, the white rectangles represent system startup screens and the green ones are the navigation menus or submenus for setting the exercise type and other functionalities. The purple rectangle represents the start confirmation screen, in which a question is presented to the pilot to confirm his decision. The orange one depicts the screen during an exercise in progress, designed to display the cadence, distance, elapsed time, and intensity of the stimulation current (exercise type manual training) or pulse width (exercise type automated training). Finally, the blue rectangle represents the response screen to the restart option. to display the result of a pilot’s choice.
There are other response screens in each of the parameters sub-menu in the settings menu. A message “OK” appears on the display when changing the parameter is successful or “ERROR” in case of failure.
For navigation between the set of interface screens, the two command buttons identified in Fig. 2 are used. Navigation is carried out using single and double clicks in the right and left buttons. Double-clicking the right button takes the menu to the lower level (below the current one) and the left button to the upper level (above the current one).
In the start confirmation screen, identified in purple in Fig. 2, double-clicking the right button confirms any change (“Yes” decision) and double-clicking the left button denies any change (“No” decision), thus returning to the top-level screen.
We have added maximum limits to which the pilot can change the maximum current intensity, pulse width, and frequency parameters. These limits are set according to each pilots fitness level, in our case the limits were: 100 mA, 50 Hz and 450 (mu s). Thus, avoiding adjustments that could harm the end-user in a training session.
During a manual training or manual race, LCD shows the exercise screen (identified as orange in Fig. 2), and the single or double right click increases the stimulation current, while the single or double left click decreases it. There is also a limit on individual increments per second for current intensity or pulse width during manual training. Each click increases or decreases 2 mA at a lower limit of 500 ms.
The “Restart” menu offers the pilot the option to completely restart the embedded system, both operating and control systems.
For pilot safety, we added the functionality to interrupt stimulation, terminate, and restart the entire control system by simultaneously clicking both buttons on any interface screen. This new safety measure is a new option similar to the emergency-power-off (EPO) button included in the commercial stimulator.
Monitoring and operating the FES cycling system requires attention and experience. Applying electrical current improperly can harm the user. Therefore, using a graphical interface for viewing and modifying relevant system variables in an external PC becomes relevant for error diagnosis and prevention.
We built the graphical interface depicted in Fig. 3 which plots stimulation, cadence and other data, and monitors and controls system variables. This detailed overview facilitates the interaction of researchers and health professionals in the FES cycling system development and inspection. This interface enables the visualization of plots of the stimulation and cadence data, in addition to being able to control system variables. The interface can be accessed locally on a PC connected via a USB port to the embedded system or remotely through the internet.
The remote system lets a faraway member of our team assist in a training session, viewing system data or controlling parameters, as depicted in Fig. 3. We use the OpenVPN software and ROS tools to achieve a virtual connection. The faraway member perceives a direct connection to the FES cycling system, but actually the data passes through a remote server. This configuration ensures end-to-end cryptography for safety and privacy issues.
Figure 4 displays an overview of the stimulation control scheme to generate the pedaling motion and, the different pulses profiles used and electrode placement for each case: Single Active Electrode Stimulation (SES) and Spatially Distributed Sequential Stimulation (SDSS).
In both approaches, the FES activation generates the pedaling motion, and the timing of stimuli is set by predefined crank angular position intervals. There is a shift compensation related to the crank’s angular velocity to counteract electronic and physiological delay when pedaling at different speeds. A detailed description can be found in [3, 21].
Electrical stimulation was applied using rectangular self-adhesive gel electrodes (Carcitrode, CARCI, Brazil). Pulses were rectangular, biphasic, and balanced, with a current amplitude of 100 mA. The pulse width was used as the modulation parameter, and its values were defined using prevailing literature as basis [14, 16, 18] while also slightly adapted to better suit our pilot.
Stimuli were created using a communication mode available in the stimulator called “Science Mode”, which acts as a developer tool, allowing commands to be sent from a line of code through a serial port to the stimulator. In Science Mode, the researcher can alter parameters, such as: current amplitude, frequency, and pulse width.
Among the ways to send commands to the stimulator through Science Mode, we used the single-pulse mode to generate individual stimuli with a determined channel, current amplitude, and pulse width. However, it was still necessary to create a way to repeatedly send the commands to the stimulator with the chosen frequency and the proper channel to maintain the sequence. This is done inside Trike Node in Fig. 1, which controls the frequency of pulses and sends commands to the stimulator. This ROS node was designed to be generic and can be used in other contexts, enabling the modification of the channels used, changing the frequency, pulse width, and current amplitude.
Regarding electrode placement, depicted in Fig. 4, for SES two 9 cm by 5 cm electrodes were applied to the rectus femoris motor points: the proximal as a reference and the distal as an active electrode. This setup is the same used in sessions for isometric contractions for this muscle group, which usually precedes the use of FES Cycling. It is expected that the physiotherapist is familiar with this electrode placement. For SDSS, we used a single 9 cm by 5 cm proximal electrode and a set of four electrodes, with 4.5 cm by 2.5 cm, forming a distal matrix of electrodes. The sizing decision was made to maintain total dimensions and preserve placement for the active electrode, i.e. the matrix in SDSS should occupy the same place as the single electrode in SES.
For SES, electrical pulses operated at a frequency of 48 Hz. For SDSS, a total of four stimulation channels were used, each at 12 Hz, matching the total of 48 Hz in SES. Sequential stimuli at a fraction of the SES frequency were chosen to maintain the overall aspect of the SES wave as illustrated in Fig. 4. SDSS requires a 4-step sequential stimulation to different electrodes; however, the stimulator does not allow sequential pulses to be sent from a single channel.
We generated time-phased pulses with externally controlled frequency for different active electrodes, using four distinct channels to resolve the issues. Finally, to preserve a single reference electrode, the team opted to create a 4 by 1 cable adapter. The strategy was feasible was feasible since none of the channels are simultaneously activated during the experiments. This setup is similar to  and .
In addition to the user evaluation, a study designed to compare the performance of FES cycling when applying SES or SDSS was conducted in this work. For that purpose, four sessions were dedicated to collecting data, with a minimum of 24 h of muscle recovery time between sessions.
At the start of each session, electrodes were placed and the pilot was positioned on the trike, which maintained the same overall mechanical configuration as the competition, except for the gears. The trike has 2 gears in the crank and 8 in the wheel cassette. Prior to this protocol the gears setting was chosen by the pilot and remained fixed during all sessions. Each session then consisted of (1) 5 min of cycling warm-up with manual assistance and no stimulation, (2) 15 min of FES cycling warm-up with manual assistance (if needed), (3) 10 min resting, (4) 5 min of cycling warm-up with manual assistance and no stimulation, and, finally, (5) one race following CYBATHLON rules, with a total duration of 8 min and 30 s.
In all parts of each session, the end of assistance was determined solely by the assistant, who was responsible to feel when the pilot could sustain the pedaling movement. Special attention was given in (5) not to exceed the allowed 30 s of initial assistance.
In (1), a specialist observed muscle response, particularly to detect muscle spasms and resistance, which could indicate contractures. In the following stage, we increased the pulses duration width from 0 (mu)s up to 350 (mu)s, in pre-programmed increments (illustrated in Fig. 5). Finally, we followed the CYBATHLON rules in (5), where FES cycling with manual assistance (if needed) was applied for the initial 30 s, and then the participant pedaled independently for another 8 min. In (5), the pulse width started at 170 (mu)s and saturated at 340 (mu)s, gradually increasing in 10 (mu)s every 25 s through ramps of 5 s, depicted in Fig. 6. Also, a maximum of 3 manual interventions were allowed during this stage. This intervention is allowed by CYBATHLON guidelines, and its purpose was simply to maintain movement continuity and avoid prolonged muscle contractions in an eventual stop, which could harm the pilot.
A single method, i.e., SES or SDSS, was applied in each session. The choice of FES parameters was based on studies where SDSS was applied on different tasks, such as  and our previous work . Pulses with an amplitude of 100 mA were applied, and the pulse width was used as the modulation parameter. When SES was used, pulses operated at a frequency of 48 Hz. Two 9 cm by 5 cm electrodes were applied to the RF motor points. If the SDSS was employed, we used five individual electrodes: one 9 cm by 5 cm electrode placed proximally and four 4.5 cm by 2.5 cm electrodes arranged as a distal matrix. The size and distribution of distal electrodes were selected to maintain the total surface area and preserve the placement for the 9 cm by 5 cm distal electrode. In order to enable the SDSS mode, a total of four stimulation channels were used, each at 12 Hz. Sequential stimuli at a fraction of the SES frequency were chosen to maintain the overall aspect of the SES wave, as illustrated in Fig. 4.
To compare SES and SDSS, we have mainly applied measures available from the smart trainer. Considering that several groups worldwide use the same platform, one additional motivation is that our results may be easily compared with the performance obtained in local setups. From this perspective, the following measures of cycling performance were used: time until independent cycling (i.e., time until the participant started pedaling without manual assistance), distance independently covered, and speed profile when pedaling independently.
Collected data was imported, plotted, and analyzed using a Matlab (Mathworks, USA) script. Furthermore, we also used readings from the IMU located on the crank. Regarding crank speed, the data was further filtered for improving graphical visualization. Since the output data from the smart trainer was not integrated into our customized ROS-based control software, offline synchronization was employed.
The System Usability Scale (SUS)  is a standardized questionnaire to assess a system’s overall usability. It consists of 10 statements evaluated by the user on a scale from 1 to 5 (strongly disagree, disagree, neutral, agree, strongly agree). Brooke et al.  disclose the usability statements, as well as describes score contributions to each question. The final (SUS) score ranges from 0 to 100, a full hundred indicating the best user perception.
In this work, the SUS questionnaire was filled by the same pilot who co-designed the system and took part in the experimental study. Since the participant was both co-designing and evaluating the system, results from the SUS questionnaire must be analyzed in this context. Nevertheless, the participant was instructed to provide the most sincere answer to the statements presented in the questionnaire.
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/. The Creative Commons Public Domain Dedication waiver (http://creativecommons.org/publicdomain/zero/1.0/) applies to the data made available in this article, unless otherwise stated in a credit line to the data.