Tuesday, November 22, 2016

"Hackers 'mind-control' a Tesla Model S"

Kids these days.
The term "Teslapathic" is about to enter the green-vehicle lexicon. A quartet of UC Berkeley students who call themselves Cal Hacks 3.0 says they have created a program that can crudely make a Tesla Model S electric vehicle go and stop via "mind control," Devpost says.
From DevPost:
Teslapathic – screenshot 1  
"The great Enzo"
Telepathic Tesla. Control a Tesla with your mind!
The rapid advancement of the automated auto industry. This is a look into what the future holds. We were also really interested in showcasing the future of human-computer interfaces, mind controlled devices.

What it does
Mind control of a Tesla Model S.

How we built it
tl;dr - An EEG headset determines whether the user is thinking "Stop" or "Go," which is translated into an analog signal, then broadcast by an RC radio, and articulated by actuators on the pedals and a motor on the steering wheel.

Teslapathic is comprised of three primary systems: Machine learning with OpenBCI, a digital to analog interface through Arduino, and a hardware control system.

OpenBCI: We created a machine learning training program that compiles averages of the user's neural activity when thinking "Stop" and "Go." The user is also encouraged to assign the thought of a physical action with each command when creating their activity profile, as focusing the EEG nodes around the brain's motor cortex while imagining physical motion in tandem with the desired command had the highest rate of success. For example, Casey would think of tapping his right foot for "Go" and clenching his left hand for "Stop." A k-nearest neighbors algorithm was employed to reduce signal noise. After ascertaining the user's intent, corresponding variables are then generated and passed off to an Arduino for conversion to an analog signal.

Analog conversion: In order for our digital system to interact with our analog hardware, we leveraged an off the shelf RC radio - a Futaba T9CHP - and exploited its trainer feature to allow for communication between the OpenBCI and the driving hardware. By having an Arduino mimic the PPM timings sent by a slave radio, the T9CHP effectively becomes an analog pass-through and delivery method. The PPM signal is manipulated in accordance with the user's intent, which results in articulation of the driving hardware. The head-mounted gyro was spliced inline between the Arduino and the radio and results in additional signal manipulation.

Hardware control: Linear actuators were affixed to the pedals, and a windshield wiper motor fitted with a potentiometer was mounted to the steering wheel. "Go" (in the form of the corresponding analog signal) results in the brake actuator receding and the accelerator actuator engaging, "Stop" results in the opposite. Left and right movement from the gyro results in left and right movement from the wheel. Still reading? Congratulations! You made it through my convoluted explanation!...
Teslapathic – screenshot 3

*Headline from and HT to: Autoblog-Green