Making MMI development software open source

I have decided to share what source code I can on the forum. The source code is extensive (a few hundred MB), and I’m not a programmer. Please bear with me as I figure out even how to share it with some help from a C++ programmer. The only condition is that developments, refinements or improvements are also shared on the forum and that I be given credit (attribution) for my contribution.

Before starting this task, which will take a lot of my time, I would like to know there is at least one capable and willing programmer here who will take the time to bring it up to date and make it available to all.

Sharing this software is not a license for anyone to use the patented technology for commercial uses, but I, that is, Core Invention, Inc, would be very flexible providing licenses for anyone who wants to develop a commercial application under a royalty plan (no cost without income). In the case of commercial development, I would not expect all developments to be shared openly.

The code for the MindEnabled Trainer was written in C++. That code is based on PRDCore, an SDK for MMI development. It includes the code for the PCQNG, software-enabled TRNG. When the original code was written the MMI generators provided two output streams, one was the usual one I call bias that everyone is familiar with; the other one was the raw data stream converted to represent 1st-order autocorrelation of the data. These streams are orthogonal, that is, completely independent, so effectively doubling the data output into two dimensions - real and imaginary or (x, y) if desired. The MSB of each byte was a label indicating Bias or AC data, which the present MEDs do not supply. ME Trainer had to be patched to ignore the MSB and use all the data as Bias. That means one bit (the MSB) in every word is thrown away. That can certainly be fixed by someone who figures out how the program deals with the Bias/AC data.

The folders with the code also include some working files that are not needed in the final code. Those can be cleaned out by a skilled programmer. Also there are Debug and Release folders from each compilation. I’m pretty sure both of these are not required to provide everything needed, but a C++ programmer can advise me what to include.

Well, I can’t say what I can do with code, which I haven’t seen.
Usual method to share open source code is github. However, github is fairly well… needs to be familiar with, to say it lightly.
So, you can give rar archive with code to someone confident, who know how to get along with github. And he will deploy everything online.

I uploaded a zipped folder to Google Drive with what I believe is the source code.
https://drive.google.com/drive/u/1/folders/1DNqToCf6nDYZ1aJiA4mx-ay24LoDt6HE
Please let me know if this worked.

It has restricted access

Thank you Scott, that’s very kind of you.

Like 00 says, it’s restricted access.I requested access from as FP2 from g-mail.

I could put the files on the same server as the forum and we could pin some download links. Anybody signing up to the forum is agreeing to the terms to give proper attribution.

We could also put it on GitHub with a custom license stipulating the terms but there’s probably a lot more chance of having that code used with blatant disregard to the license set.

Once I’ve tidied up Parking Warden and finished off a working prototype of Mindfind I am happy to spend some time helping contributing to the sorting/organizing and maintenance/update of the code you’ve shared.

I’m not sure you were able to access the files. Google Drive has some kind of “update” that is supposed to restrict access, but I removed it from this file. I guess nothing they do really works anymore.

If you can place it on the forum server, that would be fine.

I got the zip file. The forum server needs some more storage space it turns out but for now this link should work for everyone here:

Did one of your former programmers create a version of the ME Trainer in a Unity?
I thought I saw a video of that “ball” in a Unity app somewhere once

Thanks so much for helping make this available to forum members.

There was a much more sophisticated online version with multiple applications available. It was part of a system that included our own hardware server for up to 1000 simultaneous users, each with their own dedicated MMI generator. The METrainer we are working with now is a dedicated version using hardware connected to the user’s device (or PCQNG).

The big system used Unity and went to webGL as browsers made plugins unworkable. I could track down that user app as well, but the server-side is much too complex to get into. So much has been lost because no one had heard about MMI when I did all that development work.

So, do you want me to get that treasure to github?

Can you give some review, what does that folder contain?
I assume, there are several versions of MET?What’s difference between them?
Are there any documentation for PRDcore?

I think it’s enough if anyone on the Forum can download the folder. At this time I prefer to limit to forum members only, though anyone can join the forum if they want access. Let me know if there is an advantage to using github versus the current download method.

I attempted to just include the latest versions of both the METrainer and the PRDCore, but I’m pretty sure there are some files left by previous programmers that not required moving forward. The PRDCore is included as part of the METrainer. It’s the part that interacts with the hardware and does some processing before sending output to the Trainer. The METrainer that I shared in the past year has the patch I described to get around the bias/autocorrelation type of bits supplied by old style MMI generators. The current MED generators output only bias type bits, comprising all 8 bits of each word. The patch ignores the MSB so 1/8 of the data from the MED is just lost.

Other than comments left by programmers in the code, I have some description of how to use the PRDCore. I will find the latest version and send it along. I don’t think there is a separate document with a detailed description of the guts of the PRDCore, but I will look for that as well.

Github is useful for development of software. Basically, it’s version manager. We can make multiple versions of some software, merge these versions, discuss related issues and much more.

I have no issue with github for this software if it can be limited to Forum members only.

We can restrict access to github, if we’ll buy proprietary account.
However, not sure if we need it. Because forum is people, not internet domain. So, it might be github branch of MMI community.

I could setup a private repository where MeterFeeder is hosted on github and we could give access out to only members of this forum. This would be ideal actually if we’re collectively going to be working on it.

Private accounts are proprietary IIRC.

Nah, I’ve already got a few private repos for free shared with Jamal and David and others.
Mindfind and MedBots are currently private but when they’re a bit tidier/functional I’m thinking of making them public one day.

Speaking about project sharing, I have algorithm to sqeeze random bits from video. It’s a lot like one, which Andy made, but a little bit more beefy.
If Andy earn 1 bit per byte of video stream, or less, my can get 2-4 bits per byte depending on noise level.
So, I can upload it to MMI repo.

The PRDCore reference document is .html. Should I place it as is into the Google Drive or try to convert it to a text file? If I just copy and past it, the internal links always open the original html document in a browser. It’s about 36 pages.