Experience music and vestibular stimulation in sync. Artists can write music with vestibular stimulation channel using a Digital Audio Workstation (DAW) plugin Virtual Studio Technology (VST). A 4-electrode GVS setup allows for stimulation of yaw, pitch, and roll vestibular experience, at various intensities, in sync with music.
Nominal: 0 - 4mA @ 9V Max: 4mA @ 9V
Proper system should have current limiter! Better, multiple redundant current limiter! Don't connect to mains, use a battery!
Ubuntu 20 or Mac
Run ESP32s with GVS firmware and hardware setup, GVS to VST Python backend at VST_to_GVS_server_bridge_python, open VST in new track in DAW. Run the steps below to setup each component.
- Setup and activate virtual environment
- Setup Youtube-dlc globally:
sudo wget https://github.com/blackjack4494/yt-dlc/releases/latest/download/youtube-dlc -O /usr/local/bin/youtube-dlc
sudo chmod a+rx /usr/local/bin/youtube-dlc
- Install requirements:
pip3 install -r requirements.txt
- Install Visual Studio Code.
sudo snap install code --classic
- Setup Platform IO in visual studio code.
- Open ./firmware in PlatformIO
- Flash onto ESP32s with GVS hardware connected.
- Install Reaper of Ableton (DAW)
- Connect MIDI keyboard to DAW
- Build VST for your system.
- (LINUX) - see below
- Install VST in DAW
- Run VST on track Midi keyboard input
- Install linux low latency kernel
- Install JACK:
sudo apt-get install jackd2 qjackctl
- Configure JACK to use low latency - https://jackaudio.org/faq/linux_rt_config.html
- Install m2jmidid
sudo apt-get install a2jmidid
- In
qjackctl
, Go to "Setup" -> Set Midi Driver to "seq" -> "Options (tab)" -> "Startup after execute" line:pacmd set-default-sink jack_out; a2jmidid -e &
- Check qjackctl "Connections" -> Midi and ensure Midi keyboard is there.
- Start JACK -> qjackctl -> Start
- Set Reaper to use JACK as Audio Device ("Ctrl-P" -> Audio Device -> Set as JACK)
- Add midi keyboard in reaper.
- Run the GVS to VST backend server
2 seperate current pathways, so that current doesn't go across the forehead.
- "Because SDAS and ODAS are applied using two current stimulators (A+/- and B+/-), a part of current emitted from anode A+ may be received by cathode B- when ground-sharing circuits are used. Then, current might not flow as we intended. Therefore, we used isolated current stimulators that were driven by a different battery."
Each electrode must be able to be cathod or anode.
- Left mastoid.
- Right mastoid
- Left temple
- Right temple
Ensure there is no current flow from 3 to 4!
3 isolated bipolar circuits, in order to show ensure current flows as expected.
- Mastoid-mastoid
- Left mastoid - left temple
- Right mastoid - right temple
Yaw, pitch, roll are the primary colors of the vestibular system.
How can we make it feel like we're flying up? Or dropping into the ground? Or accelerating forward so we are pushed back into our chair?
Left roll - 1 cathode, 2 anode Right roll - 1 anode, 2 cathod
Front pitch - 1 anode, 3 cathode, 2 anode, 4 cathode Back pitch - 1 cathod, 3 anode, 2 cathode, 3 anode
Left yaw - 1 cathode, 2 anode, 3 anode, 4 cathode Right yaw - 1 anode, 2 cathode, 3 cathode, 4 anode
GVS Electrode placement pathways and associated subjective experience: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4426693/