Input

1 2 3 4 5 6 7 8 9 10 11 12 13 14

Eagle / PCB design

Redrawn schematic of simple touchpad

I wanted to experiment with the touch sensor Neil mentioned in class, and initially I wasn't sure how exactly step response worked & how I had to set up the board, so I decided to follow Neil's board design to test the data flow. Laying out the parts took much less time than last time, and I wanted to test using the vinyl cutter to cut out the copper that I was hoping to adhere to acrylic.

Eagle schematic
Eagle board

I spent very little time arranging the wires in Eagle since I wanted to redraw them in Illustrator--which was super quick and very satisfying. Vinyl cutting was the exact opposite: with many different force and speed settings, I could never cut through both copper and vinyl. Following advice shared in class, I moved the copper sheet to a sheet of vinyl for better adhesion, but our Roland would only cut through the top copper layer or rip both copper and vinyl. After many, many tests, I finally just milled my board and decided to return to the vinyl cutter sometime later.

Vinyl test: the copper is cut through but the vinyl isn't
Vinyl test: still attempting to transfer the copper... and more tests to figure out the right settings, but no luck :(

Milling & soldering

I went back to just milling the board since all the vinyl cutter experiments failed... but milling went very quickly and soldering was also much much faster this time. The solder and/or the copper board was a little dirty and the solder wouldn't always stick to the board, so the result was less clean than last time, but still good enough to work.

Milled & soldered board

Programming

I had quite a few libaries to install and bugs to fix to get Neil's initial Python script for the serial communication running--but in the end it all worked out!

I wanted to make sure that my serial communication didn't have any issues before testing the board, so I decided to return to Neil's term.py code. First, I had to install pyserial since I did not run the serial check a couple of weeks before.

pip3 install pyserial

did the work, but I still had Tkinter missing for a while. I realized I had to import tkinter with lowercase for python3, but I ended up using the python2 code with pip2 anyway.

I then just had to run

make -f hello.txrx.45.make
make -f hello.txrx.45.make program-usbtiny
python hello.txrx.45.py /dev/tty.usbserial-AC01YBUQ

since my serial showed up as /dev/tty.usbserial-AC01YBUQ under ls /dev/tty.*

While trying to run term.py, I returned to my previous board with the blinking lilghts, assuming that since that board programmed well & worked, it should communicate via serial. However, the python app kept freezing, which I initially attributed to a missing library (potential issues with Tkinter on a Mac), but later realized that it was actually the board itself! With my new board programmed, term.py ran as expected, no freezing or other issues.

Functional & communicative board! With two touch sensors.