This is the project log of the Hand Wave project, a project involving students Maximilien Canale, Diogo Ferreira-Brites, Yohan Saint-Julien and myself, Guillaume Bailleul. In this text, we will explain and our journey throughout this International semester. The choice of our project was quite wide, as long as it included 1 input and 1 output This includes our first project ideas, our thoughts ont the project, the difficulties and troubles we have met, the solutions to these problems and the final project.

The plan is the following:

I)Brainstorming: Alternative controls / project ideas

II) Problems with project advancement

III) Solutions

IV) Final project

 Introduction

In the first steps of our semester, we thought about 2 potential projects : we made 2 moodboards to help us decide between a former project (a smart lockbox) or launching ourselves on a new challenge: controlling a remote-controlled car with out minds by using an EEG (used in the medical department  to measure brain waves). We chose the second option. 

One of the two moodboards, the 'blue pill' : updating an already-known project with Machine-Learning and Face ID capabilities

Our decision was to take the "red pill",  the high road, and accepting a challenge : using brain waves to control a remote toy car

I ) Brainstorming 

Since our project was quite complicated and long to achieve, we decided to look for a backup plan and did a quick brainstorming and gathering a handful of other less audacious ideas, revolving around remote hacking. We bought a Radio wave controlled car in order to male the controller hack.

  • 1)Muscle sensors: using several electrodes to control our car with muscle flexions
  • 2)Laser projection: using a laser projector to point a direction toward which 
  • 3)EyeTracker: Using an eye-sensor remote hack to control 
  • 4)Making our very own, ordinary remote, using the Joy-to-Key software and a few buttons and joysticks
  • 5)Full car automation  (camera) very hard, and about as feasable as using an EEG
  • 6)Voice control
  • 7)Glove with flex sensors: using a "PowerGlove"-like device by flexing our fingers
  • 8)Accelerometer : using accelerometers, we could use gyroscopic movements of our hand to control the car

As we expected, we had a lot of issues with the EEG-hack, so we decided the 8th option: the accelerometer-hack. 

In order to make the project work, we aquired the following materials:

-2 Raspberry PiPico cards  that we will use to enter commands 

-1  ADXL 345 accelerometer, to measure vertical and lateral accelerations

-2 MCP 4725 DAC, which will convert the digital signal from theRaspberry PiPicos to an analogic signal to the controller

-A bunch of wiring

-Multiple Breadboards

The system we wanted to set up is the following : 

II) Problems with project advancement 

We have lost a lot of courses during this semester trying to find arduino codes that might work on our hardware. We have made a lot of tries with diverse codes from different sources. That means a set of different problems:

-Firstly , we had trouble to make the Raspberry Pi card, since it was the first time we ever used it.

-Secondly, we could not recover the data from the accelerometer that would have permitted us to make the car go forwards or backwards

-We could not establish a connection between both Raspberries as well.

These problems cost us a huge amount of time, restraining the finition of our project. But although we struggled, we still tried to move on.

Here is an example of codes that did not work, for unspecified reasons:

#include <Wire.h>  
int ADXL345 = 0x53; 
float X_out, Y_out, Z_out;
void setup() {
  Serial.begin(9600); 
  Wire.begin();
  Wire.beginTransmission(ADXL345); 
  Wire.write(0x2D); 
  Wire.write(8); 
  Wire.endTransmission();
  delay(10);
}
void loop() {
  Wire.beginTransmission(ADXL345);
  Wire.write(0x32); 
  Wire.endTransmission(false);
 Wire.requestFrom(ADXL345,...
Read more »