Hey I owe you all an update. I have things figured out with where to go with this software so sit tight. I also want to open the floor to feature suggestions as I want to consider everyone's feedback. I have a dozen or so features planned including more visuals and other fun stuff, as well as EEG+HRV support (in part for the upcoming FreeEEG32 Crowd Supply launch I am in a supporting role for), built-in analytics tools, and more. I can do a formal Chrome Extension release on the Store but release versions don't make the console accessible last I checked, which is a really useful feature. I am sitting on a formal mobile port of the app, but I've been holding off on finishing it mainly due to increasingly limited room in my brain. So my logic with this software has reached this point: HTML5 is incredibly powerful and incredibly generalized + optimized for cross-platform applications. I can keep it self contained and dump it into "mono-repo" projects that have different external dependencies, say to wrap it in a mobile app or a node or python server. I can combine in optimized tools like BCIJS, TflowJS, GPUJS, ThreeJS, Plotly, my own code etc to create a very powerful and lightweight (only a few MB of libraries) and ideally fully-cross platform BCI software that your average high schooler these days could code on. With a few tricks I've baked into the app it runs optimally and is super modular. Every piece of the UI can be remixed trivially also. This is stuff I'm still refining and properly generalizing so I have not done much documentation outside of the code comments, but it's in really good shape so far. The idea is we'll end up with a comprehensive, fully free and open source, scalable, and portable BCI platform that's easy to keep concurrent across instances. That will make it really easy to play with and develop more powerful applications on top of it, while leaning on a wholly generic browser based application with maximal accessibility. This means creating different levels of features, functionality, accessibility, etc, with access to tens of thousands of constantly evolving web tools for whatever use case we can imagine for this thing. I think this altogether is an important software model and something BCI could uniquely benefit from, considering the Brain-Computer-Network cybernetic interfacing ideas we all have, and this is also the most fun I've had with software design (it's almost painless... almost). If that sounds too good to be true and like something I'll promise but never get around to doing, well strap in because it's getting easier by the day to accomplish all of this. But all by myself? I'll need more coffee... The base webapp is all of 3K lines of code (and very stretched out to make more readable) to pack in all the features it already has, a little more memory on the ESP32 and we could load all the aforementioned packages too (I gotta test a micro SD card finally). Worst stuff I've dealt with is making mobile applications because there's a dozen ways to slice them and they're all kind of confusing and tedious with different terminology for the same damn things. Also I hate Apple's proprietary everything. Anyway, if you're into any of this coding stuff and are familiar with these frameworks, please jump in, I'd love to load this with community features as this is really all for the community. If any of you have suggestions on how to formally organize and encourage such an endeavor with the crowd, I'm all ears. Cheers!
top of page
bottom of page