Project tutorial
Sub-Q Warmer

Sub-Q Warmer © MIT

The Sub-Q Warmer is a subcutaneous fluid warmer for cats with kidney conditions that cannot drink enough water to maintain hydration.

  • 7 respects

Components and supplies

Ph a000066 iso (1) ztbmubhmho
Arduino UNO
Matrix Orbital EVE2-38A
1U 480x116 SPI touch screen TFT using the FTDI EVE2 FT812
Matrix Orbital Scoodo EVE Shield
Matrix Orbital Arduino EVE2 Shield
Matrix Orbital 3.8" EVE2 Smooth Bezel Mount
A custom TFT Display enclosure designed for use with the following Matrix Orbital products: EVE2-38A 1U HMI SPI TFT MOP-TFT480116-38A 24bit 1U Parallel TFT
Matrix Orbital 3.8" Smooth Bezel Mount 3D Model
3D Model Download A custom TFT Display enclosure designed for use with the following Matrix Orbital products: EVE2-38A 1U HMI SPI TFT MOP-TFT480116-38A 24bit 1U Parallel TFT
Matrix Orbital DS18S20 Temperature Probe
Dallas 1-wire digital temperature probe
Matrix Orbital Mounting kit
Mounting parts for bezels and panel mounts

Apps and online services

About this project

The Cat

One of us has an older cat with a kidney condition. While she does not need subcutaneous fluid on a regular basis, she very well might in the future. At this point, though, it has become impossible to travel with her by air since so much time is spent in travel to and from the actual airplane which added to the flight time is a dangerously long period to leave her without water. Like many cats, she can be shown water, but nothing can make her actually drink it. Food - yes, water - no.

It might be possible to load her up with fluids prior to a flight, but the primary idea behind this warmer is to be able to transport her by car. The warmer is built to run on 12V so that it can be plugged into a lighter jack and used on the go.

The plan is to load her up with fluid in the morning and stop frequently to allow her to urinate through the day without the worry that she could become dehydrated.

For information administrating subcutaneous fluid, please see Tanya's page.

We are not veterinarians nor medical doctors, please consult one prior to administering subcutaneous fluids.

The Display EVE2-38A 1U SPI TFT

The project uses a Matrix Orbital EVE2-38A 1U SPI TFT with the FTDI FT812

  • 3.8" 1U (480x116) - resistive touchscreen
  • 1U form factor
  • 1 MB graphics RAM
  • 3.3V
  • SPI TFT interface
  • Integrated backlight PWM LED driver

User Interface

  • Plate Temp: Temperature of the warming plate, blue dial when cold, red dial when warm
  • Fluid Temp: Temperature of the fluid
  • Ready, Unready, Over Temp: Status of the system
  • Activate: the On/Off button for the system
  • Temp Set: Dial to set the temperature of the Warming Plate

Display Mounting

We used the Matrix Orbital designed Front Panel TFT Mount for the EVE2-38A SPI TFT and had it printed at Shape Ways.

The Subcutaneous Fluid

The specific product which is used to maintain the hydration of an animal suffering from a kidney condition is called "Lactated Ringer's". The solution is injected between the animal's skin and flesh. It is usually injected into the loose skin between the shoulder blades to form a bubble of water. This sometimes runs down into one leg. What you and the small creature both want is that the solution be about the same temperature as the creature. In the case of cats, this is about 38 degrees Celsius. It would be nice to have a convenient and consistent way to heat that solution to the correct temperature.

The Case

You will obviously need something to build the Warmer into and we chose a 6-pack cooler. It was a bad choice.

A control system is always easier to implement if it is inefficient and wasteful. This is the reason most ovens have a big hole in the top under one of the stove elements. In order to come to temperature quickly, you want to be able to put a lot of energy into the system quickly and that takes much more power than it needs to maintain temperature. An oven maker uses that high power to bring the temperature up fast, but then the temperature overshoots the users setting. In the case of an oven with that hole in the top, the excess heat escapes constantly through the hole and so overshoot is quickly dealt with.

We chose a cooler with insulation because it was the only thing we could think of at the time with hard and straight sides with a lid on top and a handle. We should have used an ammunition box and there is some intention to do just that in the next prototype if we make it.

In any case, this prototype works best with the lid open

The Heating Plate

We chose a really heavy plate since we were concerned that there might be hot spots. We went a bit overboard. The plate in our prototype is 1/4 inch aluminum plate which we acquired from Metal Supermarket. The dimensions are about 22 x 15 cm and cost us about $16 Canadian dollars (or about $12 USD).

If we make another prototype in the future, we will instead choose a plate half that thickness. Any less than 1/8 inch is going to make mounting holes difficult to thread. 1/8 inch is still stable enough to provide the structural strength we need without adding so much thermal mass to the system. The control loop will work better without all that mass.

The heating elements are made from high power resistors mounted to the backside of the plate with screws and heatsink compound. Power control is achieved with a large transistor mounted on the plate along with the heating elements. It is going to get hot anyway, so why not use it's waste heat to help do our job for us?

The specific transistor is a TIP140 in an encapsulated package to simplify mounting. Mounting is achieved with the use of a screw into a threaded hole and kapton tape as an insulator. If that is too ghetto for you, you can buy mica insulators for pennies.


Place the bag of solution into a large freezer ziplock bag between use and leave it in this bag during heating.

The temperature probe must be applied to the bag in a place where it will be in contact with solution instead of an air bubble in the bag - on the top to one edge. Apply the probe with a piece of white foam double-sided sticky tape or a piece of duck tape with piece of foam in the middle to act as an insulator. You want to be measuring the temperature of the bag - not the environment.

As mentioned elsewhere, the lid of the "warmer" should be left open. This is especially important if you intend to come back "later" instead of waiting for the announcement of readiness. The system tends to overshoot the set temperature a bit and that is hard to prevent given the differences in loading (how much fluid is left) and ambient temperature. Leaving the lid open allows it to cool back to the set temperature.

When the temperature reaches the set temperature, an alarm will begin to bing every 5 seconds and the ready indicator will change to green. If after some time, if the temperature rises more than a degree over the set temperature, the bing will change to something more alarming and the ready indicator changes back to red.


Arduino Code for the Sub-Q Warmer
Main code for the Sub-Q Warmer

Custom parts and enclosures

Lid Base
A plastic cover for the inside of the lid of the enclosure. This is sealed into place with silicone RTV. It encloses the electronics and mounting holes for the display. This version is made to fit into a 6-pack cooler.
Lid Port Cover
The lid base has a port for access to the electronics. This is the cover for that port and also acts as a mount for the Arduino Uno and Scoodo.
EVE2-38A Panel Mount
3D Printable Panel Mount for a Matrix Orbital EVE2-38A 1U SPI TFT


Sub-Q Warmer Assembly
Main schematic for the Sub-Q Warmer Assembly.


Similar projects you might like

Electronic Weighing Machine

Project tutorial by Boaz Lawnce

  • 32 respects

Temperature Controlled Container for Sample Transportation

Project tutorial by Viola Introini and Dean Kos

  • 30 respects

Arduino Joystick

Project tutorial by Ingeimaks Ingeimaks

  • 25 respects

Jrobot Delivery

Project showcase by joechen

  • 56 respects

Android Guided Vehicle

Project in progress by bharath.s

  • 10 respects

Intelligent Transportation System In City Bus Shelter

Project in progress by Team Technoid

  • 1 comment
  • 14 respects
Add projectSign up / Login