Open Notebook 1

This is an experiment with opening my research notebook to the web.  I’m keeping my notes in an Evernote notebook, but I’m going to post lightly edited (i.e. remove personally identifiable information from people I talk to unless they give me specific permission).

Keep in mind that these are my raw thoughts for the past two months, with no editing for accuracy.  Follow these notes at your own risk.

11/03/2011 (Purchase Notes)
Purchased from Newark ($62.46 + shipping):
* 3 DAC8554 (TSSOP-16 packages)  quad 16 bit DAC
* 3 REF02 (DIP-8 packages) precision 5v reference
Purchased from eCrater user fcpcb ($11.44):
* 5 TSSOP-16 to DIP adapters

10/31/2011 (Denver/Boulder Notes)
met L. M. (physicist) at Solid State Depot hackerspace meeting – he built an STM as part of his PhD work:
* L. M.’s STM had a higher cost (and precision) than the chemhacker STM, but a lot of his designs and thoughts can be adapted to fit a cheaper device. Also, he’s excited by the idea of an open source STM project.
* need more bits on the Z DAC
* * 10 bits gives ~17.59 mV/step which is ~2.81 nm /step (at ~0.16 um/volt) that’s so large that the needle will pass into and out of tunneling in only one step.
* * 16 bits gives ~0.2747 mV/step which is ~43.9 pm/step, small enough that you can control tunneling with more than one step.
* * 16bit DAC notes:
* * * DAC8554 from TI is a 4-channel ultralow glitch DAC
* * * $10-15 each: pricey, but handles all four channels at once, not much more expensive than 4 of the microchip DACs I’m using
* * * SPI interface, unsure if it differs from the microchip SPI standard
* * * TI recommends a REF02 precision 5V voltage reference (~$3-4 each) – probably a good idea to try this out
* * * downside: no DIP package available – surface mount only
* probably need a better/faster micro controller
* * suggest that PID loop be accomplished at about 20MHz
* * suggest the Maple from Leaf Labs
* * * 12 bit ADCs (versus 10 bit for arduino/teensy)!
* * * 47 MHz versus 16MHz for arduino/teensy
* * * the IDE looks almost exactly like the arduino IDE.
* * * I’ve spoken to Leaf Labs folks in the past, they’re a good group of quality-focused engineers/artists.
* * * purchased on 10/30/2011 should arrive in a day or so via USPS
* thoughts on the sample bias voltage
* * since sample needs only ~10 millivolts, it’s probably best to just pass the DAC output through a pair of unity inverting amps (don’t remove the DC bias).
* * then, put the two outputs (positive and negative outputs) to a manual switch so the user can choose a positive or negative sample bias (allows future expansion to negative sample bias)
* * with a 16 bit DAC, it’s pretty easy to select ~10mV (just set DAC to ~4 and leave it there)

10/20/2011 (Nanotech conference notes)
Questions for people who know more about SPM than I:
* Is Gwyddion well-regarded in the microscopy arena?
* How do you make HOPG / graphene? Is it at all easy?
* What is an appropriate sample bias for starting? I saw ~10mV today, but I was going to use ~1-2V, that’s bad.
* Is there a market for STM tip-making machines?
* What is the process for making an AFM tip?

10/19/2011 (prototyping notes)
* added 2.5V and 5V voltage regulators to clean up voltage signals
* fixed clipping problems by lowering the gain resistor from 36k (predicted by the formulae) to 27k (as determined experimentally)
* fixed non-symmetrical behavior by applying correct ground to the 2.5v and 5v regulators (their grounds were floating a little higher than true ground)

10/10/2011 (Purchase Notes)
Purchased from Newark ($43.69)
* +9v, -9v, +5v, +2.5v voltage regulators
* piezo elements
* 0.1uf, 1uf, 0.33uf capacitors
* tunneling op-amps

9/23/2011
CHEN chapter 11.1: desirable tunneling amp design: 1V/1nA

9/10/2011
Idea: change op amp gains such that the electronics use ground, +5v, +12v, -12v >>same as supplied by ATX power supply
Test: test ATX power supply with oscilloscope to check cleanliness of signal (should be pretty clean, right?)

…actually, can use these power supplies now without changing the gains…

Share

Your support did this!

To everyone who purchased a periodic table to help support this project:

Many, many thanks!  I can’t easily express how grateful I am for your generous support!  I’ve chosen to quit my job to pursue my passion of open source scientific devices, and your support goes directly towards furthering this project.

I just received the first visible result of your help – a shipment of components.  These are mostly op-amps, voltage regulators (silver bags on the left), capacitors, and piezo disks (clear bags on the right).  This shipment will solve several power supply and signal issues – - the +2.5V signal will actually be +2.5V now, significant improvement over the unreliable voltage divider I was using previously.voltage regulators, op-amps, piezo disks, and capacitors

Share

Transmissometry: lasers and concentration

I’m starting up a company that makes a campfire scented cologne (I’m actually producing the smoke part of the fragrance myself).  I recently ran into a problem that only open source hardware could solve: figuring out concentration using just how much light my samples absorb.

Here is a blog post with details, schematics, photos, and source code.

Here is a video we shot (with the support of Element 14) to show how the device works:

Transmissometer from Pumping Station: One on Vimeo.

Share

X-Y redesign

In version 0.1, there was a pretty major design flaw: instead of sending -9 to +9v to the scanner head, the design I used actually sent 0 to +5v, this was noticeable in that the scanning head made almost no noise.

I’ve just completed a full redesign of the X-Y signal path and here is video (with oscilloscope proof) of the vastly improved signal output to the scanner head.

So just in time for Thanksgiving, we are a major step closer to the beta!

Share

ChemHackerSTM 0.1 Schematics and Source Released w/GPL3

With a lot of help, I’ve hit the 0.1 milestone (proof of concept), so it’s time to release version 0.1 of the ChemHackerSTM designs and source code.  As the version number indicates, this is a proof of concept device — if you follow these plans, you’ll get an STM that sort-of works – no promises.

All designs and source code in version 0.1 is hereby released under GPL 3.

The physical microscope is built and works.  It’s still fiddly – I have several design improvements in mind.

The microscope’s electronics work, and will probably not change only moderately between now and version 1.

Video and source code after the jump. Read the rest of this entry »

Share

STM update: serial control (SPI) is working

As I mentioned earlier, I’m working on programming an arduino interface for the ChemHacker STM.

The arduino currently has to handle the following tasks:

  • serial control of the five digital potentiometers (amplifier gain control)
  • serial control of the 24 bit DAC (signal input to the microscope)
  • analog signal processing from the microscope (via built-in ADC lines)
  • serial data to the computer of the scanned data (for image processing)

A future task for the arduino may be:

  • automated control of a stepper motor (for sample approach and control)

My road map for programming is as follows:

  1. establish serial control of the potentiometers
  2. establish serial control of the DAC
  3. establish signal into the ADCs
  4. establish serial data line to computer (and figure out some kind of live image processing system)
  5. interface with microscope circuit(s)
  6. establish stable scanning

As always, things take more time than you think – I foolishly thought I could get steps 1 and 2 done in a few weeks.  After nearly a month of struggling, I finally have (1) accomplished, and with some help from some excellent electronic engineers, I’m quickly closing on (2).

Many many thanks to all the people who publish their SPI code on various Arduino boards, without your examples, I never would have gotten this far…

Here’s what I’ve learned from weeks of banging my head into walls: the entire SPI setup must be used for the arduino’s SPI to activate – that includes declaring pins you don’t intend to use (like the MISO and the SLAVESELECT)

Share