After Smarter Life Challenge ended I took a break and now I’m back working on my Brainwave Appliance Controller. My plan is first to try to implement the project into a PSoC5LP chip and then to expand the project by adding two more electrodes one above the eyes and one below to sense vertical movements. Cypress PSoC5LP has more analog front end resources and I think I might be able to eliminate the discrete amplifiers that I am using now in PSoC4 implementation and thus make the entire system fit in one chip. After this step I will then add electrodes above and below eyes so I can use left-right and up-down eye movement controls, thus creating a two-dimensional control space for expanding the current appliance controlling coverage. One application that I am thinking of is to try to control the movement of a computer mouse arrow on the screen and to find a way to send right click and left click commands. This would allow basic computer control by using eye movements. Next, after getting these functions to work, I will focus on adding power reduction techniques and miniaturization to make this brainwave appliance controller easily portable.
So I’ve got started on this work: after making my brainwaves appliance controller functional in PSoC4 chip of the Pioneer kit (see my videos posted in Update 9) I further investigated porting the project into the PSoC5LP chip on the same Pioneer kit. The main reason to port it is that PSoC5LP has 4 opamps and 4 programmable gain amplifiers (PGA), which allow me to use them as front end amplifier of the electrodes and thus fit the entire brainwaves appliance controller into one chip without any external active components. I will still need some resistors and capacitors but no active integrated circuits. The PSoC5LP opamps have 10pA input bias current which allow direct amplification of the electrode signals. This is essential since the human body equivalent signal source has very high internal impedance and a larger opamp input bias current is equivalent to a lower input resistance which then creates a resistor divider effect for the electrode signal.
So I have ported the project from PSoC4 implementation into PSoC5LP and I changed the loading mode to using a bootloader. I have then ported the entire front-end external amplifier circuit into PSoC5LP, by using four internal operational amplifiers and two programmable gain amplifiers. I have tried to port also the low-pass filter but the internal low pass filter of PSoC5LP did not allow a low enough cut-off frequency, so I decided to keep the low pass filter external. Then, while assigning input/output pins, I ran into this issue: the Pioneer Kit does not have ports P0_4, P3_2, P3_3 connected to anything (they are floating) and I need to use these pins since internally they be connected directly to opamp inputs and thus reduce the leakage and noise coupling from the global routing matrix (the electrode signals are in uV range and the leakage needs to be maintained very low otherwise the very high internal impedance of the human body tissue gets shunted to ground through the leakage path). Picture 1 and Picture 2 shows the PSoC Creator schematics of the system ported into PSoC5LP with external components only resistors, capacitors, IR LED, and the indicator LEDs and Buzzer.
<html><head><title>Jive SBS</title></head>
<body><font face="arial,helvetica,sans-serif">
<b>Error</b><br><font size="-1">
An general error occurred while processing your request.
</font></font></body></html>
<html><head><title>Jive SBS</title></head>
<body><font face="arial,helvetica,sans-serif">
<b>Error</b><br><font size="-1">
An general error occurred while processing your request.
</font></font></body></html>
Picture 3 shows the schematic of the Pioneer kit which has the ports P0_4, P3_2, and P3_3 floating,
<html><head><title>Jive SBS</title></head>
<body><font face="arial,helvetica,sans-serif">
<b>Error</b><br><font size="-1">
An general error occurred while processing your request.
</font></font></body></html>
and Picture 4 shows the dedicated analog connections to the 4 opamps in PSoC5LP which I am trying to use.
<html><head><title>Jive SBS</title></head>
<body><font face="arial,helvetica,sans-serif">
<b>Error</b><br><font size="-1">
An general error occurred while processing your request.
</font></font></body></html>
So I tried to solder wires to the floating pins on the Pioneer Kit under a microscope and I was successful (see the image in Picture 5 with two wires connected to ports P3_2 and P3_3), but they kept coming off during testing. I resoldered them back a few times but they still continue to come off since the surface is so small and does not provide mechanical support.
It looks like I am stuck for now with using the Pioneer PSoC kit, so I am planning to use a different PSoC5LP evaluation board that provide access to all I/O pins. I am also considering designing a printed circuit board as an alternate plan, but I am a little reluctant to do this since it is time consuming and the cost may increase significantly if I will not be able to solder the PSoC5LP package myself (the package and pin spacing are so small that require specialized soldering tools that I do not have) and I will send it for assembly at a prototype service company.
So this is my update for now; I will get a new board and test this implementation soon and I will come back with a new update on this brainwave appliance controller project.