Histology Tissue Processor

Cheap hackable tissue processor suitable for third world or citizen science hackers.

Similar projects worth following
This is a tissue processor (being) built with common PETG bottles, servos and basic electronics. A tissue processor basically removes water from biological tissue and replaces it with wax so thin slices can be cut for microscopic examination.

Beyond emergency medicine, tissue pathology is essential to developing a proper medical infrastructure. It permits accurate diagnosis and clinical review for tumours infections and inflammatory diseases.

Tissue pathology is a moderately complex undertaking with several steps. This projects addresses one of these essential steps, tissue processing. Tissue processing can be done manually, but it is slow and tedious and essentially impractical with more than an occasional specimen.

What is a tissue processor.

 Living  tissue is naturally soft, non-uniform and almost transparent.  Tissue must be "processed" before it is suitable for microscopic examination.   Processing hardens the tissue and replaces the water with wax. This allows it to be embedded into a block before it is cut into thin slices about 4um thick.  

Wax and water do not mix so we have to replace water in tissue with wax with a series of solvents.  The standard method replaces water with alcohol (ethanol), then replaces  the alcohol with xylene .  Finally the xylene is replaced with wax.  

Tissue is soaked in a series of chemicals.  One way is to have a series of beakers (usually about 1-2 litres) and then to move tissue from one beaker to the next.  This is often done by a machine called a  "rotary processor".  The alternative approach is to leave the tissue in one container (the "retort") and pump the chemicals in and out of the retort.  This project takes the second approach.

The older rotary processing machines had about 10 beakers and mechanically moved a basket of tissue around.  These were large (about  1.2metres in maximal dimension) and constituted "heavy engineering" compared to most laboratory machines.  Sequencing was done by clockwork.  Refurbished machines are available secondhand for a few thousand dollars, up to to about $12,000 for a new one.

Having a fixed retort with pumped chemical makes it easier to change conditions in the retort  such as vacuum and heat.  Most modern machines  use this model.  They are complex and expensive (about $42,000+).  Secondhand machines, are still quite expensive and  have a reputation of being unreliable.

Brief description of this project.

This project takes advantage of microcomputers,  commonly available components such as plastic bottles, servo motors and a few 3d printed parts to duplicate most of the functions of  pumped type tissue processor at much lower cost.    Even using new components from China, material costs should be below $100 or so.

The processor is build up from a number of chemical modules.  A module comprises the retort (shared between modules) and for each chemical a plastic bottle with  silicone tuning connecting the retort to the bottle.  A 3d printed pinch valve cuts off flow in silicone tube by external pressure.  The retort fills with chemical by suction and  is emptied by positive pressure blowing the chemicals back into the bottle.  A microprocessor coordinates the pinch valve, and the two micro air pumps.

The retort can operate at room temperature and normal atmospheric pressure (like the old rotary processing machines ) for most stages.  A magnetic flea stirs the liquids.  Suction is used to fill the retort and this suction could also supply some vacuum for the retort.  

Why are Pinch valves and air pumps are used as the pumping mechanism?   Air pumps are cheap and reliable compared to fluid pumps for noxious chemicals and are never exposed directly to the chemicals.  Using a pinch valve means that there are  no valves or other mechanisms exposed to chemical to clog or corrode.  It is easy to replace the silicone tubing if required.

Formalin, alcohol and xylene are liquid at room temperature but wax needs to be kept at 60C to remain liquid.  The easiest approach would be to make the final wax handling a manual process ie put the  basket of fixed tissue into wax by hand.  Automatically wax handling  would require a heating mechanism,  possibly pumped domestic hot water.  There is a good case for automating the wax  step because on a typical overnight cycle tissue is ready to be placed in wax in the early hours of the morning.  Since wax is the final step,  a good compromise...

Read more »


New 12v pump

JPEG Image - 390.79 kB - 06/25/2020 at 00:13



Overview of machine

JPEG Image - 404.65 kB - 06/25/2020 at 00:13


dead ant.JPG

"Dead ant" connector for servos

JPEG Image - 326.40 kB - 06/25/2020 at 00:13



Dead bug servo connector

JPEG Image - 2.17 MB - 06/18/2020 at 01:11



Progress - wooden frame, bottles, servos, "retort", mixer

JPEG Image - 1.90 MB - 06/18/2020 at 01:11


View all 6 files

  • 2 × Suction and blowing pump Small air pumps (acquarium type) 2 only
  • 8 × Silicone tubing 8mm outside diameter, 6mm internal diameter. About 60cm per module
  • 1 × Robot wheel motor To drive the magnetic flea
  • 1 × Base Piece of plywood 500mm square
  • 8 × 3d printed pinch valve This fits on the silicone tubing and is driven by a servo motor. One per module

View all 12 components

  • Progress

    sgall17a06/18/2020 at 00:46 0 comments

    1.   I have made a processing station out of wood with 5 bottles, 5 servos, and a magnetic mixer.  Magnetic mixer works well.

    2.  Change of plan for the pinch valves.  I decided to use fewer and smaller 3D printed parts.  Printing big parts is slow,  making changes tedious, so I moved to make more use of wood and aluminium.   The servos are screwed to a wooden bar.  An aluminium bar is fixed beside the servo as "anvil" for  the cam to press against.  I will probably just use polymorph to hold the silicone hoses in place.

    The servo horn has been changed from a helical cam to a straight horn. 

    3.  3D printed joiners.   I only have 1m of 6mm od, 4mm id silicone tube and think I will need about 3-4m.  The tubing is fairly expensive to buy in Australia and very slow to bring in from China so I am only going to use silicone tubing in the pinch valve  and use clear vinyl tubing elsewhere.  This will not affect function.  All silicone tubing would be cleaner and more aesthetic.  I order to to this I printed 10 joiners to connect the vinyl to silicone.

    3. Second air pump did not work.  I had ordered a second air pump a while ago from China.  Sadly it did not work,  (being open circuit)  so I did a destructive autopsy.  The problem seemed to be the  flimsy metal coated plastic brushes.   Another one ordered (bit more expensive this time).

    4.   Servo connector.  I made a "dead bug" style servo connector for 8 servos.  For the  power leads I   soldered a thin wire along a row of 9 pins (two rows).  For the control leads I joined two rows of 8 pins by thin wire,  then glued all 4 rows together with epoxy.  I soldered a row of 8 female headers to some rainbow cable for the connector for the Arduino 2560 Mega.  This is compact, seems strong and tests out OK with a multimeter.  


     Test new servo valves.

    Test sero connector.

  • The magnetic flea

    sgall17a06/05/2020 at 02:45 0 comments

    A magnetic flea is a rod about 30-40mm long which is placed at the bottom of a container to mix fluids.  The flea is magnetic and is rotated by an external magnet.

    A placed a small neodynium magnet on each end of an 8mm steel rod to make a bar magnet.  This is enclosed in a 3D printed plastic case with central ridge to facilitate rotation.    I glued the two halves of the case and covered it in expoxy because some of the chemicals  in the retort are noxious and the 3d print seemed slightly porous.  The flea is dropped in the bottom of the retort.

     An openscad sketch of the case is provided.  It would be easy enough to make a non-3d printed version.

    The motor is a geared robotic wheel motor held down by a zip tie.  I cut a steel rod to the same size as the one in my flea and put a magnet on each end then drilled a small hole in the centre which I glued over the axle of the motor.  This made a rotating bar magnet which I placed under my retort.

    Testing of the system was successful.

  • Log for protoyping histology processor

    sgall17a06/05/2020 at 01:36 0 comments

    Initial log entry covering progress so far.

    1.  Working 3d pinch valve.  The valve (see openscad file) works but I will tinker a bit more before the final version.  Valve just tested  by blowing.

    2.  Tested air pumps to move fluid.  Works well.  (Automated pinch valve not used in this setup).  Only have one air pump.  Second one ordered.

    3.  Tested Arduino Mega with firmata and Johhny five. Works well,   controlling LEDs to mimic heaters and mixers.  Pyfirmata works but prefer interactive Johhny Five while prototyping. 

    4.  Tested magnetic flea with  motor to drive magnet.    Flea in water in plastic bottle.  Works well.

    Most individual components work.  

    Next stage is to prototype a complete module with movement of chemicals and mixing.

View all 3 project logs

Enjoy this project?



John Opsahl wrote 06/25/2020 at 04:18 point

Very cool project. I have thought about automating a simple three solution pathology stain so I am excited to see other "citizen science" specimen prep being developed. How will you measure/gauge how well the process worked?

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates