Theodora’s Status Report for Oct 18
For the week of Oct 4-11, I was mainly working on the design report and the PCB. I added some circuitry to the power generation circuit. First, I added overdischarge/overcharge protection using the DW01A protection IC, which is intended for protecting Li/LiPo batteries. This means that if the input voltage drops below 2.4V or exceeds 4.3V, it turns off the transistor that allows current to flow through the rest of the power circuitry.

I also decided to generate the +/- 2.5V bipolar analog rail by first stepping the input voltage up/down to 5V/-5V, then using positive and negative LDOs to transform them into the 2.5V AVDD and -2.5V AVSS.

I am a little behind schedule as layout is taking longer than expected. But it should be done soon and shipped for fabrication within the next week. I will continue to work on the layout as well as begin making testing plans next week.
Theodora’s Status Report for Oct 3
This week I completed the schematic for the analog front end. I initially used Fusion360, but lots of libraries were missing (including the ADS1299), so I had to download each component externally from UltraLibrarian. However, the process took too long, and I figured out that EasyEDA could be a good alternative since it has more components and it interfaces well with JLCPCB. I divided the schematic into multiple sheets so that it’s easier to read. Here’s an example of the ADS1299 sheet:

I am on track for the schematic design. However, as I realized I have very little PCB layout experience, I might not be able to finish the layout myself before fall break since I anticipate running into problems, so I would ask my teammates to help with the layout as well. For next week’s deliverable, I want to hopefully finish the entire PCB design, but I want to give myself some buffer and work on it during fall break if needed.
Theodora’s Status Report for Sep 26
This week, I started thinking about the specs and requirements for our circuit based on the datasheet and literature review I read last week. I did some calculations and realized that with a gain of 24x in the ADS1299, there is no need for an extra amplifier on chip at all – because I had misunderstood how the PGA on the ADC works. My assumption was based on traditional systems that required a 1000-10000x gain, as each step is on the order of 1mV while the brain signal is on the order of 10 µV. However, since the ADS1299 has 24 bits, each LSB is only 0.02 µV, meaning that the ADC breaks an unamplified 10 µV signal into >400 steps. I also compiled a list of required circuits on the PCB: surge protection (can be implemented with transient voltage suppressors), patient protection (with a 4.7 kΩ series resistor), anti-aliasing filter, circuit connections for the differential inputs, etc. Since I don’t have PCB design experience but have designed microelectronics circuits in Cadence, I learned the basics of PCB design in Fusion 360 and started making the schematic.
My progress is on schedule – I started on the analog front-end design but have not yet finished, as I spent quite a bit of time looking at other similar designs and comparing components. Next week, I plan to finalize the PCB schematic and start doing the layout.
Theodora’s Status Report, Sep 19
My goal this week was to begin defining the specs for our analog front-end design by reading datasheets, academic papers, and open-source EEG sensing circuits.
I looked into the ADS1299 datasheet to define what our PCB needs to be capable of. I realized that the ADC has an internal programmable gain amplifier with a gain up to 24x, which means that the requirements for amplification on our PCB can be looser since the ADC can handle some of it as well. The input inferred noise is only 1uV peak-to-peak with a 70Hz bandwidth, which is well within our noise requirements (<10-100uV). The CMRR of the ADC is also very low (-120dB0), which is great.
The ADS1299 has a built-in bias drive amplifier that cancels out common mode interference by sensing the common mode voltage across electrodes and driving it back in through a feedback loop via the BIASOUT pin. This means that I need to design a feedback network on the PCB to close this loop.
I looked at OpenBCI’s Cyton Biosensing Board as a reference since it has 8 channels and works with the ADS1299. I noticed that they used a +-2.5V analog rail instead of a normal 5V rail. I will design our PCB starting with a unipolar 5V first, and if we need more dynamic range it is worth considering this bipolar power supply approach.
At a high level, the circuit path should be: brain signals through electrodes -> Gain stage -> Bandpass filter (.5-60Hz) -> notch filter -> output to ADC
For next week, I plan to complete the circuit prototype in Fusion360. I also want to look into ways to generate uV-scale input signals and run different types of SPICE analysis so I can start simulating the front end amplifier/filter testbench.
