Tag: microcontroller

3G Cellphone as Biotech Tool: “Cellular Phone Enabled Non-Invasive Tissue Classifier”

Posted by – July 5, 2009

A recent paper in PLoS ONE describes a diagnostic system which uses a common 3G cellphone with bluetooth to assist in point-of-care measurement of tissues, from tissue samples previously taken, with remote data analysis [1].  The hope, of course, is that this could be used for detecting cancer tissue vs. non-cancer tissue.  In general this technological approach is important for the following reasons: it allows data analysis across large populations with server-side storage of the data for later refinement; not all towns or cities will have expert medical staff to classify tissues at a hospital; and sending the sample to another city for classification takes time and creates measurement risk (mishandling, contamination, data entry error, biological degredation, etc).  Since the tissues are measured by a digital networked device, the results can be quickly sent to a central database for further analysis, or as I hint below, for geographically mapping medical data for bioinformatics.

From my interpretation, the complete system looks like this:

The probe electronics are described in [2]; unfortunately that article is not open access, so I can’t read it.  The probes located around the sample are switched to conduct in various patterns and a learning algorithm is used to isolate the probe pair with the optimal signal.  The sample is placed at the center of the petri dish and covered in saline.

Sending the raw data to a central server for analysis allows for complex pattern recognition across all samples collected; thus, the data analysis and the result can improve over time (better fitting algorithms or better weighting in the same algorithm).  The impedance analysis fits according to the magnitude, phase, frequency, and the probe pair.

The article does not explain the technologies used with the cell phone for communicating between the measurement side and the cellular side (USB / Bluetooth communication link, Java, E-mail application link, etc).  Though these technologies are cellphone specific, it is part of the method, and it is not described.  The iPhone would be a good candidate for this project as well.  A cellphone with integrated GPS would allow for location data to be sent to the server, which may be able to provide better number-crunching in the data processing algorithms, for recognition of geographic regions with high risk.

[1] Laufer S, Rubinsky B, 2009 Cellular Phone Enabled Non-Invasive Tissue Classifier. PLoS ONE 4(4): e5178. doi:10.1371/journal.pone.0005178

[2] Ivorra A, Rubinsky B (2007) In vivo electrical impedance measurements during and after electroporation of rat liver. Bioelectrochemistry 70: 287–295.

Low Cost Microcontroller-based Digital Microfluidics using “Processing”

Posted by – July 1, 2009

I’ve now tested the digital microfluidics board via microcontroller. The digital microfluidics board moves a liquid droplet via Electrowetting-on-Dielectric (EWOD).  The microcontroller switches the high voltage via a switching board (pictured below, using Panasonic PhotoMOS chips), which controls the +930VDC output by the HVPS (posted earlier), and runs over USB using no cost Processing.org software.  This is alpha stage testing.. cleaner version to be built.  The goal of course is to scale the hardware to allow automation of microbiology protocols.

Labview is quite expensive, and industrial-grade high voltage switching boards are also quite expensive.  So I built my own hardware and the Processing.org language is an easy way to test things.  The Processing.org language is a free, open source graphics/media/IO layer on top of Java (as posted previously here).

What follows is the super simple test software written in Processing.org & Java.


Analog Data Acquisition from USB Microcontroller using the “Processing” Language

Posted by – March 25, 2009

Building on the previous two mini-projects, I have a mini-graphical data acquisition project now running under the Processing language, getting real-world signals from the USB microcontroller (which is a Microchip PIC on a UBW Board from Sparkfun).  Source code below the screenshot.

USB microcontroller sends data to Processing application, which graphs the data

USB microcontroller sends data to Processing application, which graphs the data


Blinky LED ‘Hello World’ using USB Microcontroller in ‘Processing’

Posted by – March 24, 2009

Every good embedded systems hardware project begins with a blinking LED (or toggling level as seen on the oscilloscope).  In Processing.org language, there’s the opportunity for both, since the built-in graphics allow for data display as well as the USB microcontroller interface.  (There’s several Processing projects for Arduino, BTW.)   Source code is below.

USB Microcontroller blinks happily under Processing.org program

USB Microcontroller blinks happily under Processing.org program


Using the Processing.org Language with Microcontrollers

Posted by – March 22, 2009

Media-technology engineers at MIT have created a computer language and easy-to-use runtime environment called Processing, hosted at processing.org.  I wrote a small code snip for accessing the PIC microcontroller from a USB port, using Processing; it’s pasted below.

This PIC microcontroller connects to USB on a PC, Mac, or Linux machine

This PIC microcontroller connects to USB on a PC, Mac, or Linux machine