Category Archives: PCBA & ENG

More Oscillators but with Comparators

In trying to reduce the power consumption of the Cat Feeder Unreminder, I am going to explore using some really low power comparators to build the AC drive voltage I need to run the TN LCD segments.

The MAX9019 is a dual package comparator fits the bill in the power requirements.

In the switching frequencies I am using (50-100Hz) it should only need a supply current of ~1uA.

We setup the first comparator to generate a square wave and then the second comparator in the package as an inverter.

The design breadboarded up. It drives the screen!

This is well under the resolution of my Siglent SDM3045X. Will have to wait to get the right equipment to measure the actual current the circuit is drawing.

Here are the two output drive signals on the scope.

Next step to work on is the power retention system. The largest draw on the system right now is the leakage on the super capacitors! I found some super capacitors made by Eaton, HSL0814-3R8106-R, that specialize in having low leakage. Slightly higher ESR then some super capacitors but that isn’t that important for this project.

Oscillators and Twisted Nematic Effect Displays

For the Cat Feeder Unreminder, I am going to pivot from using LEDs to indicate the “feeding” status and use a TN-Effect Display instead. These displays are much lower power then illuminated LEDs but they require slightly more circuitry to drive.

TN LCDs run off low AC voltage from around 3VAC to 6VAC depending on the screen. The one I picked, Varitronix‘s VI-422-DP-RC-S, operates over this range. They are not particular picky about the quality of AC voltage, just that it has zero DC offset. Driving the displays with square waves seems common. Anything north of 50Hz should do as well.

This application note from NXP shows how to drive these displays from logic level DC devices like microcontrollers.

Looking in my spare parts bin I found some old CD4049 hex inverters that I made into a simple RC based oscillator.

I used a 0.1uF capacitor and a 100K ohm resistor. Should get the oscillator to jiggle around 70Hz. Then I fed the output of the oscillator into another inverter on the CD4049. This gives me two square waves that are out of phase which will give us the AC voltage we need!

Circuit breadboards and driving the display. Spaghetti!
Output of the Oscillator circuit. Ended up being 53Hz. Loose tolerance capacitor!
Channel two in purple here shows the output of the out of phase signal that is generated from running the output of the oscillator into the inverter.

This works great! However the downside is this oscillator uses ~120uA at 3.3V without driving the Display. The display takes sub 5uA to drive so this is a big part of the power budget!

We will need another way to generate the AC voltage! Metacollin from the MacroFab Slack Channel suggested using a low power comparator in a relaxation oscillator configuration. This will get us to around 1uA in current draw if we use a MAX9019 dual comparator chip.

I am also looking for a way to measure currents that low. My Siglent SDM3045x is a bit out of its league at this point!

Ideas on running a Reflective LCD display?

For the Cat Feeder Unreminder, I originally wanted to run LED indicators but I think it would be cool to run a reflective LCD display like on solar powered calculators.

For a display I was looking at Varitronix‘s VI-422-DP-RC-S. I was thinking I can hardwire the display to say FEED. What is weird with these displays is they run on alternating current (AC).

The solar power subsystem provides 3.3VDC which won’t work for activating the segments. Google searching around shows that these displays run on AC square waves. Initial thoughts are to make a push/pull transistor circuit that can drive and source high and the low side can sink giving us a 3.3V AC drive source.

But after chatting with some folks I think using a 4049 Hex Inverter like this will work great.

AEM10941 Evaluation Unboxing and Setup

Received the 3AAEM10941CPCX10 evaluation kit for the AEM10941 solar harvesting chip today.

Box the kit came in. Surprised how “plain” the box is. Usually manufactures for evaluation kits have fancy boxes with branding on it so it can be viewed from the engineer’s storage shelf ;) .
Inside. There was some bubble wrap I removed to keep everything from being shaken around.
The super caps that come with the kit. Part numbers: DMT3N4R2U224M3DTA0 and DMF3Z5R5H474M3DTA0.
The demo board and quick start guide.
Two different kinds of solar panels. An Outdoor (smaller size) and Inside (larger size) type of panel.
Part numbers for the solar panels are LL200-2.4-37 for the indoor panel and MPT2.4-21 for the outdoor panel. From the little bit I know about solar panels is that these are probably tuned to the light frequencies of there environment.
The demo board. Quality of assembly isn’t the best. Jumpers are not soldered straight. Biggest one is the STATUS[2] pin on the upper right of the board. Also, the board’s jumpers are not set out of the box for the given example. Annoying to say the least.
First step on firing up the the demo board is to set these CFG pins. Shown is how mine arrived. You need to set the jumpers to CFG[2] = 0, CFG[1] = 1, and CFG[0] = 1.
Next, solder one of the super capacitors to the back side of the board as shown. I used the DMF3Z5R5H474M3DTA0 which is the larger of the two.
Set the BAL jumper to connect BAL to ToCN. BAL is the balance pin of the super capacitor. These super capacitors are actually two cells in series and the balance pin is the connection between the two.
Then attach the solar panel to the SRC terminal. To see if there is voltage output I put a LED across the LVOUT. The LVOUT voltage regulator is set to 1.8V which is below the forward voltage of the LED I chose.

Its possible it won’t light up right away. It takes sometime for the super capacitor to charge up. You can charge up the super capacitor with a power supply set to 3.3V and current limited to around 10-20mA. Make sure to not reverse bias the charging!

Voltage across the super capacitor while charging up off the solar panel!


The AEM10941 is a solar harvesting IC. It handles a small solar panel and charges either a lithium battery or a super capacitor. I ordered a evaluation board (part number: 3AAEM10941CPCX10) to test it out for the Cat Feeder Unreminder but I went ahead and made a footprint for it in Eagle. The evaluation board comes with a couple solar panels and some super capacitors to mess around with.

Cat Feeder Unreminder: Concept

Ok, this is a project I talked about way back on Episode 237 of the MacroFab Engineering Podcast.

Its a small electronic device that makes sure you don’t overfeed your cat by feeding more often then needed. Low power consumption with no need of changing batteries or external power sources. Solar power? Basically a resettable egg timer that doesn’t need batteries cause if the batteries die then you won’t be reminded to feed the cat!

User interface should be simple. One button to reset the timer, then a LED that lights up when you are ok to feed the beasties and another LED that lets you know the system is working correctly. Maybe one led that is turned on when its not time to feed and then turns off when time to feed. Pressing the button resets and turns the LED back on? Verifying the circuit is still powered? Prevents hungry cats at least.

Simple BOM so far:

  • AEM10941
    • This is a Solar Energy Harvesting IC
  • DSF505Q6R0JBG
    • Super Caps
    • 5F Capacitance!
  • Solar Panel  AM-1816CA
    • 84µA at peak power
    • This is specced at 200lx
  • LTC2956
    • Low power, configurable timer

Napkin math on power requirements. The LTC2956 draws 0.8μA. LED at 40uA. Total draw when Cat Feed Indicator is on is 40.8μA.

5F x (4.5V-3.6V) / 0.0000608 = 74,013 seconds -> 20 and a half hours!

So we have enough power from the fully charged Super Cap to run everything for almost a day. That is good. Should bump up the capacitance just to get a full day.

Github repo for the project.

MAX6682 Breakout Board and Reading Thermistors

To read oil and coolant temperature on the Jeep I wanted to use automotive parts for the sensors. Most temperature sensors in the automotive world are thermistors. I searched around for some in 1/8″ NPT and found some designed for aftermarket gauges. Only problem was there was no datasheet for them…which is necessary to accurately read the thermistors since they are non linear devices. At under $4 a piece I ordered them  anyways.

Thermistors with part number MX61573 and YC100665.
Thermistors with part number MX61573 and YC100665.


Fortunately when they arrived they had a part number on them and after some googling I managed to find a temperature chart.

Temperature to resistance chart for the MX61573 Thermistors
Temperature to resistance chart for the MX61573 Thermistors.


I double checked the values with a multimeter and setting the hot air gun to the temperatures in the chart above and seeing what the resistance was. Everything matched.

To read the thermistors I decided to use the MAX6682 IC. This IC gets rid of power supply noise and thermal self heating of the thermistor.

The only thing I had to calculate was the REXT value. I used the 2031 ohm (20C) for RMAX, 108 ohm (100C) for RMIN, and 388 ohm (60C) for RMID. This came out to a value of 287 ohms.  Which the resistor ERA-3AEB2870V by Panasonic works. See page 6 of the datesheet for the formula to calculate REXT.

Then I drew up the schematic and layout for the breakout board.

Schematic for the MAX6682 Breakout Board.
Schematic for the MAX6682 Breakout Board.

Layout for the MAX6682 Breakout Board.
Layout for the MAX6682 Breakout Board.


I added a little header (J3) that will allow me to easily change the REXT value for other thermistors.

MacroFab PCB Render.
MacroFab PCB Render.


Boards ordered!


Compressor IoT Project

At MacroFab we have a large industrial air compressor that provides compressed air to our pick and place and various machines.  I want to monitor the compressors pressure and run time to help influence the maintenance schedule for it.

Stephen and I talked about the Compressor IoT project on the following Podcasts: MEP EP#68, MEP EP#70, and MEP EP#74.

Compressor IoT part list

  • LSM9DS1
    • IMU for vibration sensing
    • iNEMO inertial module: 3D accelerometer, 3D gyroscope, 3D magnetometer
    • 3.3V, I2C
  • SPU0410HR5H-PB
    • MEMS Microphone
    • 3.3V
    • Analog signal, will be boosted with an opamp
  • TMP102
    • Board Mount Temperature Sensors Low Power Digital Temp Sensor
    • 3.3V, I2C
  • Ebay Pressure Transducer
    • 1/8″ NPT Male fitting
    • 5.0V
    • Analog output 0.5V – 4.5V over pressure range
  • 6225AXXSZS-DC3
    • SSR to control the compressor switch
    • 3VDC to 32VDC control signal
    • Place 10ohm in series from pin from particle photon for protection.
    • TVS 3.3V for transient protection.
  • 1591XXSFLBK
    • Enclosure with flange
  • Particle Photon
    • IoT platform

Compressor IoT Schematic


Compressor IoT Layout

You  can find the files on my github.