Skip to content
/ uflo Public

[WIP] ~uflo: steer your flow: Intelligent Binaural Audio Agent for Brain Computer Interfaces

License

Notifications You must be signed in to change notification settings

moskalyk/uflo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Gitter

~uflo

A binaural beat toolkit for collective consciousness used by the modern practicing Steersman in times of Kairos.

Steersman: Derived from Dune, Steersman, or, Navigators, are fictional humanoids able to use a limited form of prescience to safely navigate interstellar space.

Kairos: Kairos refers to the opportune time and/or place — that is, the right or appropriate time to say or do the right or appropriate thing.

Goal: Personal infrastructure for open mindful computing. Augment ones practice to uncover new states through an objective medium of measurement like fNIRS. How? Subtle signal assistance.

An excercise tool for those seeking a free mind using accesible audio signals.

How to Run

There are 2 approaches to running the software: 1) desktop ✔️, or 2) Rasberry Pi ✔️

Both require SuperCollider to be installed. Note: In order to use the python-supercollider, the liblo library is required for the underlying OSC communications.

OS X: brew install liblo Ubuntu: apt-get install liblo7 liblo-dev

1. Device Setup: Desktop with/without bci (3 terminals)

a. Terminal 1 : Run Audio Server

  • $ sudo sclang sounds/source.scd # loads all SynthDefs, you should hear a musical tone if audio is connected

b. Terminal 2: BCI device (not needed if running uflo without a bci, skip to #3)

c. Terminal 3 : Run uflo

  • $ git clone https://github.com/moskalyk/uflo.git # clone repo
  • $ cd uflo/synth/ # go into the synth folder
  • $ virtualenv venv && source venv/bin/activate # Create a virtual environment for your python packages
  • $ pip3 install -r requirements.txt # install dependencies
  • $ python3 index.py --mode composed --device bci # run and choose mode
  • $ python3 index.py --mode singleplayer # run and choose mode
  • $ python3 index.py --mode multiplayer # run and choose mode
  • be present

2. Device Setup: Rasberry Pi (currently, no bci)

Inspiration

Device Design : Somewhere between an e-ink kindle & touch phone, like a pokedex but for our world - to capture thoughts, privately, on a walk. Producing a single copy of memories to share once connected, if need be with a level of pseudo-anonymity. Ultimately, a hardware extension that augments the embodied, not so much as a void / hole for attention capture. Enabling agents of reflexivity.

Abstract Simplicity : While many are focusing on complex synthesis of sounds, this project aims to systematically use unitized audio signals as a digital catalyst for rotational perspective shifts when meditating, going for a walk, or, as an overlay to any experience.

Binaural Beats : An auditory illusion by way of different frequencies in either ear to simulate a new sound perceived which is not presented. Cognitive advantages for such states can improve frequency detection i.e. perceptual learning. By tuning ones perceptual learning capability in real time, one can increase their subjective experience of novelty when connecting with nature, learning a new skill, unlearning habits, or boosting mindfulness.

Cybernetics : The scientific study of control and communication in the animal and the machine.

Quantum Cognition : The tool is meant to simulate a Hadamard gate used in quantum computing, but for ones mind. Hadamard gates create a superposition point between 2 basis states (e.g. frequencies) whereby one is able to expand the possibilities of environmental navigation through optimal perceptual learning and action. The concept: in an increasingly connected mind, practice holding competing trajectories of thought to aid in empathetic decision making.

Philosophy (a WIP)

  • Open sourcing the concept was the first intention, as consciousness tools should be open and available.
  • Engaging in open conversation around building for human cognition enhancements.
  • Documented process for optimal community building around experimental explorers and other audio / livecoding ecosystem.
  • Seed more people in calm computing states. The greater the collective synchronous, the more mindful we can be for designing systems that work.
  • WIP / Submit PR

Possible Modes of Play

  • Composed: Adding sound dimensions for optimal composition supported via scynth audio server
  • Single: Following single signal trajectory tuned via reinforcement agent to neurofeedback (or manual via tuning knob)
  • Multiplayer: p2p connected soundscape for group / global meditative / practice experience

Technologies Used

Signal-Oriented Programming: Signal programming is used in the same sense as dataflow programming, whereby a signal is meant to represent a synchronous flow of data interrupted by an operating system.

When a signal is sent, the operating system (brain) interrupts the target process' normal flow of execution to deliver the signal.

Hypothesis: The more ones mind is out of sync / less responsive to constructs, the greater the use of this therapy as it's simple, non-intrusive, but requires techniques of meditation.

Excercised interruption requires a reestablishment of normal time based protocols for synchrony assistance in cultural adaptation. More on this here

Hardware Design Examples

Integrated clean natural feel. Lab, spaceship, beach, or forest.

See ARCHITECTURE.md for abstraction decisions.

Hardware List

Development Status

What began as a concept at an EthGlobal hackathon, winning a prize for trustless computation of neurofeedback, seeded the concept for further exploration in the design process.

Currently under active development.

TODOS

  • refactor to load different flow paths

Other Relevant Research / Tools

A special thanks to John David Chibuk and the Blueberry team for active support during experimentation process.

FAQ

Why not use a mobile app?

  • Possible Soundscape generated from the audio server scsynth can be live manipulated via neurofeedback.
  • Building process / customization is important for community of hackers.
  • Can run a Virtual Machine - for something like Urbit
  • Binuaural beats require seperate isolated control of left vs. right ear frequency.
  • Positive constraint of not being connected to telecommunications, limited to BLE.
  • Possible easy loading of WASM as linear-signal transforms (future).
  • Sounds are generated on device from saved text file. E.g. kilobytes vs. megabytes per experience.
  • Possibility to set up mesh networking software for steersmen to seed adoption of p2p internet as relayers in a city.
  • Possibility for local sound file updates via over the air radio waves communication using AX.25 packet radio protocol connected via USB e.g. chattervox

Sounds like digital drugs?

“This Snow Crash thing--is it a virus, a drug, or a religion?” Juanita shrugs. “What's the difference?” ― Neal Stephenson, Snow Crash

Isn't this the beginning of cyborgism?

Maybe. Just a pragmatic push for another view to take a societal measurement.

The making of a synthetic brain requires now little more than time and labour .... Such a machine might be used in the distant future ... to explore regions of intellectual subtlety and complexity at present beyond the human powers .... How will it end? I suggest that the simplest way to find out is to make the thing and see. ― Ross Ashby, "Design for a Brain" (1948, 382–83)

What can it feel like?

art, technology, both?

About

[WIP] ~uflo: steer your flow: Intelligent Binaural Audio Agent for Brain Computer Interfaces

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published