A guide to different pH up options in hydroponics

When is pH up needed?

The control of pH in hydroponics is critical. Most commonly, we need to decrease the pH of our solutions as most nutrients will initially be at a higher than desired pH. This is especially true when tap water or silicates are used, as both of these inputs will increase the overall pH of hydroponic nutrients after they are prepared. In recirculating systems, pH will also tend to drift up due to the charge imbalance created by the high active uptake of nitrate ions carried out by most plant species. For a discussion on pH down options, please read my previous post on this topic.

However, there are certain circumstances where the pH of hydroponic solutions needs to be increased. This can happen when tap water or silicates are not used or when plants decrease pH due to an aggressive uptake of some cations. Plants like tomatoes can do this when grown in solutions with high potassium contributions, as they will actively uptake these nutrients to the point of changing pH balance. Excess ammonium can be another common cause for pH decreases in hydroponic solutions that require the use of pH up solutions.

Potassium hydroxide pellets, the most powerful pH up option available to growers

With this in mind, let’s discuss the pH up options that are available in hydroponics. I only considered substances that are soluble enough to create concentrated solutions, such that they can be used with injector systems.

pH up options

Sodium or potassium hydroxide (NaOH, KOH)

These are the strongest. They are low cost, can be used to prepare highly concentrated solutions and will increase the pH most effectively. They are however unstable as a function of time because they react with carbon dioxide from the air to form sodium or potassium carbonates. This means that their concentrated solutions need to be kept in airtight containers and that their basic power will decrease with time if this is not the case. Additionally, these hydroxides are extremely corrosive and their powder is an important health hazard. Dissolving them in water also generates very large amounts of heat – sometimes even boiling the water – which makes their usage more dangerous. Although desirable when basic power is the most important short term concern, I recommend to avoid them giving their PPE requirements and the lack of long term stability.

When these hydroxides are used, potassium hydroxide is the recommended form, as potassium hydroxide is both more basic and a plant nutrient, while excess sodium can cause problems with plant development. However, sodium hydroxide might be more desirable if it can be obtained at a particularly low price and small additions of sodium are not a concern.

Potassium silicate

This is a soluble form of silicon that is stable at high pH values. While solutions of potassium silicate by itself can be prepared and used as a pH up option, it is usually stabilized with a small addition of potassium hydroxide to take the pH of solutions to the 11-12 range. Potassium silicate contributes both potassium and silicon to hydroponic solutions – both important nutrients – and its use can be more beneficial than the use of pure potassium hydroxide. While silicates are less basic and more mass is required for the same pH buffering effect, the preparation and handling can often be much simpler than those of potassium hydroxide.

Note that potassium silicate solutions are also unstable when left in open air, as they will also react with atmospheric carbon dioxide to generate potassium carbonate. It is also worth noting that not all potassium silicates are the same, when looking for a highly soluble potassium silicate for hydroponics, make sure you get potassium silicates that have higher K/Si ratios. Usually ratios of at least 1.05 are required (make sure you convert both K and Si to their elemental forms, as most of these products report K as K2O and Si as SiO2).

Potassium carbonate (K2CO3)

This basic salt is stable in air, has less demanding PPE requirements and can also be used to prepare concentrated solutions (more than 1g of potassium carbonate can be dissolved per mL of water). Because of its lower basicity compared to potassium hydroxide, more of it also needs to be used to increase the pH of a hydroponic solution. However, solutions of it are stable, so there is no concern for their stability or changes to its basic power.

Another advantage given by potassium carbonate is that – contrary to the previous two examples – it does increase the buffering capacity of the solution against pH increases, due to the addition of carbonate to the solution. As carbon dioxide is lost to the air at the pH used in hydroponics, the pH of the solutions tends to drift up, this means that the carbonate addition makes the pH more stable in solutions where the pH is being constantly pushed down. This is all part of the carbonic acid/bicarbonate equilibrium, which also helps chemically buffer the solutions at the pH used in hydroponics.

Overall potassium carbonate is one of my favorite choices when there is a downward drift of pH in recirculating solutions.

Potassium phosphate (K3PO4)

Another weak base, potassium phosphate, can be used to prepare concentrated solutions and increase the pH in hydroponic solutions. While its solubility and basicity are lower than that of potassium carbonate, it does provide additional phosphorus that can buffer the pH of the solution. This happens because mono and dibasic phosphate ions are anions that be taken up by plants, therefore decreasing the pH. While phosphates can help chemically buffer the hydroponic solution against pH increases, for decreases the phosphate buffer is ineffective as the pKa of the relevant equilibrium is 7.2.

An issue with potassium phosphate is that it provides large contributions of K to solution. These potassium additions can be quite counter productive if the cause of the pH drift towards the downside is related to potassium uptake.

Potassium Citrate/Lactate/Acetate

Basic organic salts of potassium can also be used to increase the pH. These are all much weaker than even the carbonate and phosphate bases mentioned above and relatively large additions are required for even a moderate immediate effect in pH. However, since these anions are actively taken up by microbes, the microbial metabolism of these ions will create a longer term effect on pH. A moderate addition of potassium citrate can only cause a small increase of pH in the short term, with a larger increase happening during the following 24 hours.

A disadvantage is that these anions can also lead to explosions in bad microbe populations if the environment does not have an adequate microbial population. When these salts are used, adequate microbial inoculations need to be carried out to ensure that the microbes that will proliferate will not be pathogenic in nature.

Protein Hydrolysates

While hydrolysates themselves can have an acidic pH when put in solution, their microbial metabolism aggressively increases the pH of solutions in the medium term. This means that these hydrolysates should not be used for immediate pH adjusting, as they will tend to decrease pH further in the very short term, but they can be used as a more long term management option.

As with the above organic salts, their use also requires the presence of adequate microbial life. If you neglect to properly inoculate the media before their addition, then pathogens can also make use of these amino acids to proliferate.

Combinations are also possible

As with the case of pH down options, some of the best solutions for a problem come when several of the above solutions are combined. For example the use of potassium rich pH up solutions in microbe containing soilless media can often cause pH drift issues related with potassium to worsen. For this reason, it can be desirable in these cases to prepare pH up solutions that include protein. This means that you reduce the pH fast but then you have a residual effect from protein metabolism that helps you fight the pH increase as a function of time.

However not all pH up drifts are caused by potassium, as in the case of plants where pH up drift happens due to low nitrate uptake (for example some flowering plants that stop producing a lot of additional leaves during their flowering stage). In these cases potassium based pH up solutions cause no additional issues and combinations of potassium carbonate and potassium phosphate might be best.

Choose according to your goals

As in most cases, the best solution will depend on your circumstances. Think about whether you’re just adjusting the pH of your initial solutions or whether you need to compensate for a constant drift, whether microbial life is present and whether you’re concerned with the accumulation of any substances in a recirculating solution. Once you consider these factors and review the above solutions, you should be able to find the pH up solution that is better suited to your particular needs.

Are you using a pH up? Let us know why and which one you’re using in the comments below!




Creating a pH/EC wireless sensing station for MyCodo using an Arduino MKR Wifi 1010

There are multiple open-source projects available online for the creation of pH/EC sensing stations for hydroponics. However, all of the ones I have found use a single Arduino or Raspberry Pi to perform the measurements and store any data, making them unsuitable for applications where more flexibility is needed. For example, a facility using multiple different reservoir tanks for nutrient storage might require multiple pH/EC sensing stations, and single-board wired setups would be unable to accommodate this without a lot of additional development. In this post, I am going to show you a simple pH/EC sensing station I built with an Arduino MKR Wifi 1010 that can communicate with a MyCodo server using the MQTT protocol. Multiple sensing stations could be built and all of them can communicate with the same MyCodo server.

My Arduino MKR wifi 1010 based sensing station, using uFire pH and EC boards in a small project box.

This project makes use of the small pH/EC boards provided by uFire, which have a lower cost compared to those provided by companies like Atlas, but do have adequate electrical isolation to avoid problems in readings when multiple electrodes are put in the same solution. This is a substantial improvement over other low-cost boards where using multiple probes can cause heavy electrical noise and interference. In order to build this project you will require the following materials:

Note, some of the links below are amazon affiliate links. This means that I get a small commission if you purchase through these links at absolutely no extra cost to you. The links to other websites are not affiliate links.

  1. Arduino MKR Wifi 1010
  2. uFire pH probe
  3. uFire EC probe
  4. A rugged pH probe with a VNC connector
  5. An rugged EC probe with a VNC connector
  6. Two Qwiic-to-Qwiic connectors
  7. One Qwiic-to-male connector
  8. A project box to put everything inside (optional)
  9. A micro USB cable

The code for the project is shown below:

#include <uFire_EC.h>
#include <uFire_pH.h>
#include <WiFiNINA.h>
#include <ArduinoMqttClient.h>

#define SECRET_SSID "ENTER WIFI SSID HERE"
#define SECRET_PASS "ENTER WIFI PASSWORD HERE"

//calibration solutions used
#define PH_HIGH_SOLUTION_PH 7.0
#define PH_LOW_SOLUTION_PH  4.0
#define EC_HIGH_SOLUTION_EC 10.0
#define EC_LOW_SOLUTION_EC  1.0
#define CALIBRATION_TEMP    20.0

// topics for the mqtt sensors
// Make sure all stations have different topics
#define EC_TOPIC       "EC1"
#define PH_TOPIC       "PH1"
#define CALIB_TOPIC    "CALIB1"
#define MQTT_BROKER    "ENTER MQTT SERVER IP HERE"
#define MQTT_PORT      1883

int status = WL_IDLE_STATUS;     // the Wifi radio's status
String message;

uFire_pH ph;
uFire_EC ec;
WiFiClient wifiClient;
MqttClient mqttClient(wifiClient);

void check_connection()
{
  if (!mqttClient.connected()) {
    WiFi.end();
    status = WiFi.begin(SECRET_SSID, SECRET_PASS);
    delay(10000);
    if (!mqttClient.connect(MQTT_BROKER, MQTT_PORT)) {
      Serial.print("MQTT connection failed! Error code = ");
      Serial.println(mqttClient.connectError());
      delay(100);
    }
    mqttClient.subscribe(CALIB_TOPIC);
  }
}

void setup()
{
  Serial.begin(9600);
  while (!Serial);

  // connect to wifi and mqtt broker
  check_connection();
  
  // coorectly initialize the uFire sensors
  // note the Wire.begin() statement is critical
  Wire.begin();
  ec.begin();
  ph.begin();
}

void loop()
{
  // mqtt keep alive
  mqttClient.poll();

  // read messages 
  message = "";
  while (mqttClient.available()) {
      message += (char)mqttClient.read();    
    }

  // execute calibration if requested
  Serial.println(message);
  if (message == "EC1_HIGH") ec.calibrateProbeHigh(EC_HIGH_SOLUTION_EC, CALIBRATION_TEMP);
  if (message == "EC1_LOW")  ec.calibrateProbeLow(EC_LOW_SOLUTION_EC, CALIBRATION_TEMP);
  if (message == "PH1_HIGH") ph.calibrateProbeHigh(PH_HIGH_SOLUTION_PH);
  if (message == "PH1_LOW") ph.calibrateProbeLow(PH_LOW_SOLUTION_PH);

  // Measure EC 
  ec.measureEC();
  Serial.println((String) "mS/cm: " + ec.mS);

  // Measure pH
  ph.measurepH();  
  Serial.println((String) "pH: " + ph.pH);

  // Ensure the wifi and mqtt connections are alive
  check_connection();

  // post EC to MQTT server
  mqttClient.beginMessage(EC_TOPIC);
  mqttClient.print(ec.mS);
  mqttClient.endMessage();

  // post pH to MQTT server
  mqttClient.beginMessage(PH_TOPIC);
  mqttClient.print(ph.pH);
  mqttClient.endMessage();

  // ensure sensors are not probed too frequently
  delay(1000);

}

Once you get all the materials you should first assemble the components. Connect the pH and EC board together using the Qwiic-to-Qwiic connector, then use the Qwiic-to-male connector to hook up one of these boards to the Arduino (doesn’t matter which one). Connect the black cable to ground, red cable to 5V, blue cable to SDA, and yellow cable to SCL. Set up your board according to the instructions in the Arduino MKR wifi 1010 getting started page, modify the code above to properly include information about your wifi network, calibration solutions, and MQTT server, then upload the code. The Arduino will connect to your Wifi and MQTT servers and automatically reconnect when there are connection issues.

The above code will also post the readings of the pH and EC sensors to topics PH1 and EC1 respectively if you add an input in MyCodo to capture these readings you should be able to store them and take control actions using the MyCodo interface. Additionally, the Arduino code will respond to calibration requests published to the topic “CALIB1”. For example, if you want to calibrate your EC sensor with a two-point calibration method with a standard solution with an EC of 10mS/cm, you would put the electrode in the calibration solution, then send the message “EC1_HIGH” to the CALIB1 topic and the Arduino will perform the task as requested. The code assumes you will want to do 2 point calibrations for both EC and pH, with the calibration events triggered by EC1_HIGH, EC1_LOW, PH1_HIGH, and PH1_LOW. Note that the definition of the EC and pH values of the calibration solutions should be changed to the solutions you will be using within the code. The high/low values in the code, as is, are 10mS/cm|1mS/cm for EC and 7|4 for pH.




Nutrient availability and pH: Are those charts really accurate?

When growing plants, either in soil or hydroponically, we are interested in giving them the best possible conditions for nutrient absorption. If you have ever searched for information about plant nutrition and pH, you might remember finding a lot of charts showing the nutrient availability as a function of the pH – as shown in the image below – however, you might have also noticed that most of these images do not have an apparent source. Where does this information on pH availability come from? What experimental evidence was used to derive these graphs? Should we trust it? In this post, we are going to look at where these “nutrient availability” charts come from and whether or not we should use them when working in hydroponic crops.

A google search in 2021 showing all the different versions of the same nutrient availability plots.

Information about the above charts is not easy to come by. People have incessantly copied these charts in media, in peer reviewed papers, in journals, in websites, etc. Those who cite, usually cite each other, creating circular references that made the finding of the original source quite difficult. However, after some arduous searching, I was able to finally find the first publication with a chart of this type. It is this white paper from 1942 by Emil Truog of the University of Wisconsin. The paper is titled “The Liming of Soils” and describes Truog’s review of the “state of the art” in regards to the liming of soils in the United States and the differences in nutrient availability that different pH levels – as set by lime – can cause.

The paper is not based primordially on judicious experiments surrounding nutrient availability but on Truog’s experience with limed soils and the chemistry that was known at the time. He acknowledges these limitations explicitly in the paper as follows:

I also emphasize that the chart is a generalized diagram. Because adequate and precise data relating to certain aspects of the subject are still lacking, I had to make some assumptions in its preparation and so there are undoubtedly some inaccuracies in it. There will be cases that do not conform to the diagram because of the inaccuracies, or special and peculiar conditions that are involved, e. g., conditions that are associated with orchard crops.

“The liming of soils” by Emil Truog

It is therefore quite surprising that we continue to use this diagram, even though there have been more than 80 years of research on the subject and we now know significantly more about the chemistry of the matter. Furthermore, this diagram has been extended to use in hydroponics, where it has some very important inaccuracies. For example, Truog’s decision to lower nitrogen availability as a function of pH below 6 is not based on an inability of plants to absorb nitrogen when the pH drops, but on the observations done in soil that showed that below this value, the bacteria present in soil could not effectively convert organic nitrogen into nitric nitrogen, the main source of nitrogen that crops can assimilate. In hydroponics, where nitrate is provided in its pure form, nitrate availability does not drop as the pH of the solution goes down.

Several other such assumptions are present in his diagram. Since the changes in pH he observed are associated with lime content, the drops in availability are as much a consequence of pH increase as they are of increases in the concentration of both calcium and carbonates in the media. This significantly affects P availability, which drops substantially as the increase in pH, coupled with the increase in Ca concentration, causes significant precipitations of Ca phosphates. His diagram also ignores key developments in the area of heavy metal chelates, where the absorption of heavy metal ions can be unhindered by increases of pH due to the use of strong chelating agents.

The original pH availability chart as published by Truoug in the 1940s. It has been copied without barely any modification for the past 80 years.
Diagram from the 1935 paper by N.A. Pettinger

Reading further into Truog’s paper, I found out that his diagram is actually an extension of a diagram that was created almost 10 years before, in 1935, by N. A. Pettinger, an associate agronomist at the Virginia Agricultural Experiment station. You can read this white paper here. In a similar fashion, Pettinger created a diagram that summed his experiences with different nutrients in soils at different pH values, where the pH was mainly increased or decreased by the presence or absence of lime. You can see big differences between both diagrams, while Truog includes all elements required by plants, Pettinger only includes the most highly used nutrients, leaving Zn, B, Mo, and Cu out of the picture. Pettinger also has substantially different availability profiles for Mg and Fe.

Although these diagrams are both great contributions to the field of agronomy and have been used extensively for the past 80 years, I believe it is time that we incorporate within these diagrams a lot of the knowledge that we have gained since the 1950s. I believe we can create a chart that is specific to nutrient availability in hydroponics, perhaps even charts that show availability profiles as a function of different media. We have a lot of experimental data on the subject, product of research during almost a century, so I believe I will raise up to the challenge and give it my best shot. Together, we can create a great evidence-based chart that reflects a much more current understanding of nutrient availability as a function of pH.




How much Phosphorous are you adding to your solution to adjust pH?

Phosphoric acid is one of the most commonly used pH down agents in hydroponics. This is because phosphoric acid is available in high purity, is easier to handle and has lower cost. However, phosphorous is a significant plant macro-nutrient as well, and substantially changing the level of available P in a nutrient solution can have negative effects on plant growth. Since many hydroponic users – especially those that use hard water sources – might be adding significant amounts of acid to correct their pH level, it is important to estimate how much phosphorous you’re contributing to your solution by adjusting pH and whether this means you also need to adjust your formulation to use less P within it.

Schematic representation of a phosphoric acid molecule.

Phosphoric acid is generally available in concentrations from 30 to 80%, most hydroponic users will use pH-down solutions that are in the 35-45% range, which are prepared to be concentrated enough to last a significant amount of time while diluted enough to allow for easier handling and to be less corrosive. You can use the equation given above to calculate the P contribution in ppm from a given addition of phosphoric acid (you can look up the density for a given concentration using this table). Adding 1mL/gal of 45% phosphoric acid will contribute around ~48 ppm of P to your nutrient solution. This is a very large amount of P considering that the normal range for flowering plants is between 30-60 ppm.

Having an excess of P can be very problematic as phosphorous can strongly antagonize certain nutrients, especially if the pH of the solution drifts up as the plants are fed. At P concentrations exceeding 120 ppm, this element can start to antagonize elements like Fe, Ca and Zn very strongly, preventing their absorption and leading to plant issues. Furthermore, excess of P can often cause problems with P absorption itself – as it can become locked up inside the plant as Fe or Ca salts – which can lead to P deficiency-like symptoms. The most tricky thing about P toxicity issues is that they do not show as certain characteristic symptoms, but mostly as deficiencies for other nutrients or even P itself. The exact symptoms will depend on the VPD and particular environmental conditions as these play an important role in Ca absorption as well.

P contribution in ppm = (Acid concentration in % / 100) * 0.3161 * (volume of addition in mL) * (density of acid in g/mL) * 1000 / (total volume of solution in liters)

Many growers will indiscriminately add P without considering how much was required to adjust pH, which is a bad idea due to the above reasons. A water source that is very hard might require almost 1mL/gal to fully adjust the solution to the pH range required in hydroponics, if a normal hydroponic solution is fed – which will contain all the necessary available P (assuming the user adds very little outside of it) – then this means that the final solution might end up with P levels that will strongly antagonize several nutrients. It’s therefore no wonder that many hydroponic growers in harder water areas suffer from consistent issues with Ca and Mg, many of these cases could be caused by the presence of excess P within nutrient solutions. While many hydroponic hard-water formulations will adjust for Ca and Mg in hard water, they will generally not adjust for P as they cannot know for certain how the user will lower the pH.

If you’re a hydroponic grower using phosphoric acid, keeping track of how much P you’re adding to your nutrient solution to adjust pH is going to be very important. If you’re adding more than 0.25 mL/gal of 45% phosphoric acid – of course adjust accordingly for higher/lower concentrations – then you should consider adjusting your hydroponic formulation to account for this expected P addition and prevent your formulation from reaching abnormally high levels of P.




How to prepare pH 4 and 7 buffers from scratch without using a pH meter

I wrote a post in the past about how you could prepare pH buffers in order to calibrate your pH meter if you happen to already have a calibrated pH probe. This can generate decent results if the initial calibration of the probe is excellent and the sensitivity of the probe is high. This however might not be a possibility for some people – given that their pH probe might not be calibrated to start with – so in today’s post I am going to tell you how you can prepare your own pH 4 and 7 buffers without having any other tools but a scale, distilled water and some raw salts. This tutorial will be made assuming you’re preparing 500mL of each buffer but feel free to scale this up or down as you wish (these buffers are meant to give you a total 0.1M buffer concentration). Note that pH depends on temperature, these buffers are meant to give pH values of 4 and 7 at 25C.

To prepare these buffers you will need the following materials:

Follow these steps to prepare the pH 4 buffer:

  1. Weight exactly 5.259g of potassium citrate and transfer that amount to the glass bottle
  2. Weight exactly 6.309g of citric acid and transfer the solid to the same glass bottle
  3. Fill the bottle to around 250mL using distilled water
  4. Mix the solids using a glass rod or any other inert mixing utensil until fully dissolved
  5. Fill the bottle to 500mL using distilled water.
  6. Label the flask clearly so that you know this is the pH 4 buffer

Follow these steps to prepare the pH 7 buffer:

  1. Weight exactly 3.369g of potassium dibasic phosphate and transfer that amount to the second glass bottle
  2. Weight exactly 4.172g of potassium monobasic phosphate and transfer the solid to the same glass bottle
  3. Fill the bottle to around 250mL using distilled water
  4. Mix the solids using a glass rod or any other inert mixing utensil until fully dissolved
  5. Fill the bottle to 500mL using distilled water.
  6. Label the flask clearly so that you know this is the pH 7 buffer

The above should provide you with pH 4 and 7 buffer solutions that should be relatively precise. The exact volume of the solution is not critical, as the volume only has a strong effect on the buffering capacity but not on the final pH, especially at relatively high buffering strengths. However, if you want to have more precision use 500mL volumetric flasks to prepare the solutions. The error in these buffers will depend on the purity of the salts used – which is why higher purity food grade salts are recommended above – as well as in the accuracy of the weighting and transferring processes. In order to obtain a higher accuracy you would need to purchase more expensive analytical grade salts and also use volumetric flasks to prepare the solutions, so that you can prepare them at the exact concentration intended.

Another limitation of the above buffers is that they do not contain any sort of preservative and they are both prepared with food grade substances that can attract fungi and bacteria. For this reason the above buffers will probably not last for a significant amount of time and should probably be discarded within a couple of weeks. However the chemicals used here are very cheap so – with the amounts purchased above – you should be able to prepare as much buffering solution as you might need. Note that the solutions can also be frozen in order to increase their shelf life, although keep in mind that since pH depends on temperature you will need to wait for them to reach room temperature before taking a reading.

It is also worth mentioning that these buffers will both be completely transparent, since they are prepared without any dies in order to give the maximum possible accuracy in the pH. However you can add a very small amount of food coloring to each one to provide a distinct color without causing a significant change in the pH, less than half a drop should be enough to give your solutions a distinct hue.

I would advice you do a pH check with a pH meter calibrated using a normal commercial solution the first time you prepare these solutions. This is just to be sure that you followed the procedure correctly and the resulting buffer is of the intended quality. Once you do this you should be able to create as much buffer as you desire without any problems. Leave a comment with your experience!




Understanding the carbonic acid/bicarbonate buffer in hydroponics

I have written several articles before about pH and it’s importance in hydroponic culture (1, 2, 3, 4). However I have yet to write a detailed explanation of one of the most important buffering systems in hydroponics, which is the carbonic acid/bicarbonate buffer. This buffer is significantly more complicated than the simpler buffer created using phosphoric acid species, as it not only relies on ions present in solution but also on the partial pressure of carbon dioxide in the atmosphere. In this article I will attempt to explain this buffering system in detail, shining some light into the limitations of this buffer and how changing different key variables can fundamentally affect the way it works in hydroponics.

Chemical reactions involved in the carbonic acid/bicarbonate buffer. Taken from here.

A buffer is nothing more than a pair of chemical species in solution that are present at a certain pH, that can react with additional H3O+ or OH- ions that are introduced into the solution. Since these ions control the value of pH, anything that prevents their concentration from changing will keep the pH stable. Distilled water, for example, has absolutely no buffering capacity since within it there is nothing that can react with incoming H3O+ or OH ions that are added to the solution. Distilled water should therefore have a pH of 7.0, it does not because we live in an environment where an acid can always be generated from the air. This acid – carbonic acid – is generated in water whenever it’s put into contact with a carbon dioxide containing atmosphere. This makes distilled water have a pH of around 5.6.

To be able to calculate the pH we need to consider all the chemical equilibrium reactions that happen, these are summarized here and in the image above. We must consider that carbon dioxide will dissolve in water to always satisfy Henry’s law, that dissolved carbon dioxide will be in equilibrium with carbonic acid, that carbonic acid can dissociate into a H3O+ ion and a bicarbonate ion and that a bicarbonate ion can further dissociate into an additional H3O+ ion and a carbonate ion. To solve all of this we must also consider that charge neutrality must be preserved, meaning that the sum of all molar charges of all positive ions must be equal to the molar charges of all negative ions. To carry out these calculations I routinely use the freely available Maxima software. Below you can see the code I use to solve this system in Maxima (constants are taken from here):

[kw : 10^(-14.0), kh: 1.7*10^(-3.0), kc1: 2.5*10^(-4.0), kc2: 4.69*10^(-11.0), co2: 1.32*10^-5];
log10(x) := log(x)/log(10) ;
pH(x) := float(-log10(x));

float(solve([h*oh=kw, h = 2*co3+hco3+oh, kh=h2co3/co2, kc1=(hco3*h)/h2co3, kc2=(co3*h)/hco3],[oh, co3, hco3, h2co3, h]));

This is the solution obtained for the molar concentrations (rounded for clarity):
 
oh    = 4.21*10^-9
co3   = 4.68*10^-11
hco3  = 2.36*10^-6
h2co3 = 2.24*10^-8
h     = 2.37*10^-6

After executing this code you will get several different possible solutions, but the only one that interests us is the one where the H3O+ (h) concentration is a positive number (this solution is showed above). We can then use the pH function to calculate the value of pH for this H30+ concentration, which gives us a value of 5.62, this matches the real measurement of a distilled water solution at 25C under a 387ppm carbon dioxide atmosphere. Note that the amount of none dissociated acid in solution is very small. Taken to mass, the concentration of carbonic acid is 0.00138 ppm. However the concentration of bicarbonate is significantly greater, at 3.6 times the concentration of undissociated carbonic acid. This explains why the pH drops so much, since a significant amount of the generated carbonic acid ends up dissociating and contributing H3O+ ions to the solution. This also shows you how little acid is needed to drop the pH of an unbuffered solution.

To create the buffer with the biggest possible strength we would need to add enough strong base to shift the pH to the point where the pH equals the pKa (which is just -Log(equilibrium constant)) of the joint reactions created from the reaction of carbon dioxide with water to create carbonic acid and the subsequent dissociation of this acid into bicarbonate and H3O+. This point is at 6.3 under atmospheric conditions at 25C. This can be achieved with the code below:

[kw : 10^(-14.0), kh: 1.7*10^(-3.0), kc1: 2.5*10^(-4.0), kc2: 4.6910^(-11.0), co2: 1.32*10^-5, h:10^(-6.3)];
float(solve([hoh=kw, base+h = 2co3+hco3+oh, kh=h2co3/co2, kc1=(hco3h)/h2co3, kc2=(co3h)/hco3],[oh, co3, hco3, h2co3,base]));
This is the solution obtained for the molar concentrations(rounded for clarity):

oh    = 1.99*10^-8
co3   = 1.04*10^-9
hco3  = 1.11*10^-5
h2co3 = 2.24*10^-8
base  = 1.07*10^-5

The pH here is set to 6.3 and we can see that to get there we would need to add a base at a concentration of 1.07*10-5.0. If this base was KOH this would imply adding it at a rate of 0.6 ppm. We can see how the pH changes as a function of adding base or acid from this point. If at this point we decided to double the addition of strong base we would get to 6.57, tripling it would take us to 6.73 and adding 10 times more base would take us to 7.25. The buffer is indeed resisting the increase in pH by basically drawing CO2 from the air to react with the incoming base as base is added to the solution. However you might notice that under equilibrium conditions the buffering capacity of this system is very low. Just 6 ppm of a KOH equivalent strong base addition can strongly affect the pH – taking it from 5.6 to 7.25 – so how can the carbonic acid/bicarbonate buffer be effective at all in hydroponics?

The answer is in the first image in this post. The equilibrium reaction between carbonic acid and water plus carbon dioxide in water (k23/k32) is fundamentally slow. We can take advantage of this by generating larger amounts of carbonate species in solution through the use of exogenous carbonate or bicarbonate additions and then setting the pH at a lower value to generate more carbonic acid, this acid will then take some significant time to reach equilibrium. This is the reason why using tap water with a significantly high alkalinity can provide a surprisingly stronger buffer than what would be expected at equilibrium and it also has some interesting consequences in the use of nutrient solutions.

Let’s consider a case where there is no decomposition of carbonic acid – let’s suppose it’s extremely slow – and say we add 100 ppm of potassium carbonate into a solution and then set the pH back to 5.8 using phosphoric acid. In this case the predominant reactions in solution would be the dissociation of dihydrogen phosphate to hydrogen phosphate and H3O+ and the carbonic acid dissociation discussed before. In order to properly consider this case we must also introduce two additional equations, mainly the mass balance equations for the phosphate and carbonate species, since this time we are assuming no carbon dioxide is ever lost to the atmosphere. Note that I have changed the equilibrium constant for the carbonic acid reaction here to 10-6.3 where carbonic acid is now “apparent carbonic acid”. You can see the equation system and solution below:

[kw : 10^(-14.0), kh: 1.7*10^(-3.0), kc1: 10^-6.3, co2: 1.32*10^-5, kp:10^-7.2, total_p: 1.7*7.2310^-4, total_c: 7.23*10^-4];

float(solve([h*oh=kw, total_c=hco3+h2co3, total_p=h2po4+hpo4, 2*total_c+h = hco3+oh+h2po4+2*hpo4, kc1=(h*co3h)/h2co3, kp=(hpo4*h)/h2po4],[hco3, h2co3, h2po4, hpo4, h, oh]));
This is the solution obtained for the molar concentrations(rounded for clarity):

hco3   = 1.72*10^-4
h2co3  = 5.50*10^-4
h2po4  = 0.00118
hpo4   = 4.64*10^-5
h      = 1.60*10^-6

The final pH of this solution is very close to 5.8 and the concentration of P is 47.9 ppm with K at 38.10 ppm. Notice however that apparent carbonic acid has a concentration of 5.50*10-4 M, which implies that the system is not at equilibrium since this amount is significantly larger than what we would expect from Henry’s law. If we reduce the concentration of carbonic acid to half then the pH will increase to 6.01, as we would expect from extracting an acid from the solution. The implication is that – with time – the pH of this solution is going to slowly increase, as carbonic acid decomposes and the solution reaches an equilibrium with the atmospheric carbon dioxide level. This is also why nutrient solutions that are prepared with tap water high in carbonates and then aerated will tend to show a rapid increase in pH – even if the solution is not fed to plants – as the reaching of equilibrium is accelerated by the agitation of the solution and the contact with air (that allows CO2 in solution to escape).

As soon as the above solution is prepared it offers a substantially superior buffering capacity when compared with a solution containing only phosphates. This is why water with high alkalinity tends to provide better pH stability in drain to waste type systems when compared with solutions prepared with RO water. This water contains a significant amount of carbonates that are turned into carbonic acid and bicarbonate as soon as the pH is lowered to the pH range used in hydroponics. As long as the solution is used quicker than the carbonic acid decomposes, there will be a substantial increase in pH stability.

If you are using RO water or water with low alkalinity to prepare your solutions you can obtain a similar effect by adding 100-200 ppm of potassium carbonate before you start preparing the nutrient solution, you can similarly use bicarbonate but I would recommend using potassium carbonate, as it is cheaper. It would also be advisable to use the solution as fast as possible, since time will cause the solution to reach equilibrium and the pH to increase. This effect will take much longer if the CO2 concentration is higher – which is true for setups that use enriched CO2 – or if the temperature is lower, which increases the solubility of CO2.




A guide to different pH down options in hydroponics

The control of pH in hydroponic nutrient solutions is important. Plants will tend to increase the pH of solutions in most cases – as nitrate uptake tends to dominate over the uptake of other ions – so most growers will tend to use pH down much more than they use pH up. While most growers prefer to use concentrated strong acids, there are a wide variety of different choices available that can achieve different outcomes at different cost levels. In this post I want to talk about different pH down options in hydroponics, along with some of their advantages and disadvantages.

Hydrangeas change color as a response to different pH values in soil

The first group of pH down chemicals are strong acids. These are technically acids with very low pKa values, meaning they react instantly with water to generate at least one mole of hydronium for each mole of added acid. They offer the strongest ability to drop pH per unit of volume, which makes them more cost effective. However the fact that they often need to be diluted to make the pH addition process practical – because of how much the concentrated forms can change pH – can make their use more difficult than other forms of pH down. These are the most common options:

Phosphoric acid (from 20 to 85% pure): This acid doubles as a plant nutrient, meaning plants will be affected by the phosphorus added. It is commonly used in food – so food grade phosphoric acid can be bought cheaply – it also has additional deprotonations with strong buffering at a pH value of 7.2 with buffering capacity against bases getting stronger as the pH goes down all the way to 6.2. This is the most commonly used acid by hydroponic growers.

Sulfuric acid (from 20 to 98% pure): This acid is commonly used in car batteries and offers the largest pH dropping ability per unit of volume among all the strong acids. It is however important to use food grade sulfuric acid in hydroponics as normal battery acid can include some metallic impurities – from the fabrication process of sulfuric acid – that might negatively affect a hydroponic crop. Food grade sulfuric acid is safe to use in hydroponics. A big advantage is that plants are quite insensitive to sulfate ions – the nutrient provided by sulfuric acid – so adding sulfuric acid does not really affect the nutrient profile being fed to the plants. Note however that most battery acid products in developed countries are also ok, as the quality of these acids demands the metallic impurities (more commonly iron) to be quite low. If in doubt, you can do a lab test of the sulfuric acid to see if any impurities are present.

Nitric acid (from 30-72% pure): This acid also provides nitrate ions to plants, so it also contributes to a solution’s nutrient profile. It is however more expensive than both phosphoric and sulfuric acids and more heavily regulated due to its potential use in the fabrication of explosives. The acid itself is also a strong oxidant, so storage and spillage problems are significantly worse than with phosphoric and sulfuric acid. Although this acid can be used in hydroponics, it is generally not used by most growers due to the above issues.

Diagram showing the dissociation of a strong vs a weak acid

The second group of pH down chemicals are weak acids. These are acids that do not generate at least one mole of hydronium ions per mole of acid when put in solution, but do provide a pH down effect as some hydronium ions are generated. This means that larger additions will be needed to cause the same effect but at the same time their handling is usually much safer than for strong acids. Here are some options that could be used as a pH down.

Common food grade organic acids (citric acid, acetic acid, etc): Organic acids are a very low cost way to lower the pH of a hydroponic solution as many of these are available off the shelf in super markets in food grade qualities. The main issue with organic acids – which anyone who has used them has probably experimented – is that the effect of the acids does not seem to hold (pH goes up quickly after the acid is added and the solution comes into contact with plants). This is actually caused by the fact that plants and microbes can actually use the conjugated bases of these ions nutritionally, causing an increase in pH when they do so. The initial addition of say, citric acid, will drop the pH – generating citrate ions in the process – these will then be absorbed by microbes and plants, increasing the pH again rapidly. The use of these acids is therefore not recommended in hydroponics.

Monopotassium phosphate (MKP): This salt contains the first conjugate base of phosphoric acid and is therefore way less acidic than it’s full on acid partner. Since it’s a solid its addition is way easier to control compared to the acid and it can also be handled safely with minimal precautions. It provides both potassium and phosphorous to a solution – both important nutrients – and therefore needs to be used carefully when used as a pH down agent (as it significantly affects the nutrient profile of the solution). Since it adds both a cation that helps counter pH increases by plants and phosphate species it provides a double buffering effect against future pH increases. It is a very common ingredients of commercial pH down solutions for this reason.

Monoammonium phosphate (MAP): Similar to the above, except for the fact that this salt adds nitrogen as ammonium, which is a nitrogen form plants are very sensitive to. Plants will uptake ammonium preferentially over any other cation, so MAP provides a very strong buffering effect against nitrate absorption, with potential problems if too much is used (although this depends on the plant species being grown). When MAP is used as a pH down its addition therefore needs to be carefully controlled in order to avoid excess usage. Due to the presence of this powerful ammonium buffer, MAP is generally very effective at preventing future increases in pH, although this might be at the expense of yields or quality depending on the crop.

Potassium bisulfate: This salt contains the first conjugate base of sulfuric acid and is therefore a powerful tool to decrease the pH of a solution. The resulting sulfate ions provide no chemical buffering effect, so the only buffering effect in terms of plant absorption comes from the addition of potassium ions, which can help mitigate nitrate absorption. This salt is also considerably expensive compared with the two above – which are commonly used fertilizers – and is therefore seldom used in hydroponics.

Which is the best pH down solution? It depends on the characteristics of the growing system. Generally a pH down solution needs to be easy to administer, cheap and provide some increase in buffering capacity overtime – to make additions less frequent – so the pH down product or combination of products that best fits this bill will depend on which of the above characteristics is more important for each particular user.

People who use drain-to-waste systems usually go for stronger acids, since they only adjust pH once before watering and then forget about the solution. This means that additional buffering capacity in the solution is probably not going to be very important and cost is likely the most important driving factor. If injectors are used then the strong acids are often diluted to the concentration that makes the most sense for them and most commonly either phosphoric or sulfuric acids are used.

For growers in recirculating systems options that adjust pH with some added buffering capacity are often preferred, because the same solution is constantly subjected to interactions with the plants. In this case it’s usually preferred to create a mixture of strong and weak buffering agents so that both quick decreases in pH and some increased protection from further increases can be given to the solution. In automated control systems using something like a concentrated MKP solution is preferable over any sort of solution containing phosphoric acid, as issues from control failures are less likely to be catastrophic.




Controlling pH in hydroponics using only electricity

The ability of plants to assimilate nutrients changes as a function of pH. This makes maintaining the pH of nutrient solutions within an acceptable range – most commonly 5.8 to 6.2 – one of the most important tasks in a hydroponic crop. This is commonly done with the addition of strong acids or bases to decrease or increase the pH when it drifts away from the intended value. This requires either manual monitoring with careful addition of these substances or automated processes using pumps to ensure the pH always remains at the correct value. However both of these methods lack fine control, require a lot of maintenance and monitoring and can lead to costly mistakes. Today I want to discuss an alternative method that relies on a completely different idea to control pH, the idea that we can oxidize or reduce water using electricity to achieve changes in pH. Yes, you can change pH using literally only electricity.

A modern anion exchange membrane. Fundamental to the idea of an electricty-only pH control system

Let’s start by discussing pH and talking about how it is changes. The pH of a solution is calculated as -Log(|H+|) where |H+| is the molar concentration of H+ ions in solution. In water, the dissociation constant 1×10-14 (at 25C), always needs to be respected, so we always know that the product of |H+| and |OH| needs to give us this number. When you add acids you increase |H+| conversely |OH| decreases and the pH goes down, when you add bases |OH-| increases, |H+| decreases and the pH goes up. In simpler terms everything you need to decrease pH is a source of H+ and everything you need to increase pH is a source of OH.

This is where electrochemisty gives us the simplest solution we could hope for. Water can be oxidized or reduced. When you run a current through water – above the minimum required voltage – water splits into hydrogen and oxygen molecules. In the image below you can see how the water oxidation reaction generates H+ ions while the reaction on the right generates OH- ions. When you do this in a single cell – as shown below – the H+ ions generated at the anode react with the OH- ions generated at the cathode and the pH of the solution remains neutral while oxygen is produced at the anode and hydrogen is produced at the cathode.

<img src="https://scienceinhydroponics.com/wp-content/uploads/2020/04/electrolysis_water.gif" alt="Electrolytic Cells  cell > 0  cell < 0  G
The image above shows the half reactions involved in the oxidation (left) and reduction (right) of water.

However, we can take advantage of ion exchange membranes to separate these two processes, allowing us to control where each reaction happens and where the acid or base is generated (preventing them from just mixing and neutralizing). As a matter of fact, all we need is to have an electrode in our nutrient solution and another electrode in an auxiliary cell, separated from our nutrient solution by an ion exchange membrane. This concept is actually not new and was already proposed in a 1998 paper to control pH in hydroponic systems. Although it was never tried in a production system, all the concepts were validated and were shown to perform adequately in test solutions.

Image taken from this paper, which discussed the topic of electrochemical pH control in hydroponic systems at length.

One of the big challenges of this setup is that the cathode side involves hydrogen gas evolution – which could be dangerous – but can be completely avoided by replacing the cathode’s half reaction with much more benign chemistry. As an example – also suggested in the paper above – you can replace the cathode half-cell with a copper sulfate solution with a copper electrode, with an anion exchange membrane. This would allow you to have your reduction reaction be the reduction of copper onto a copper place, which is a very tame reaction. Since the membrane only exchanges anions you would only have sulfate go to your nutrient solution, which is a benign anion in hydroponic culture. This of course means that your half-cell electrode and solution would need to be replaced with time, but this is completely independent from the control process (much more like refilling a tank of gas). The anode would only evolve oxygen in your nutrient solution, which is a potentially beneficial side effect.

Using a copper sulfate half-cell would however limit the control system to lower pH but this is not a problem since this is the most commonly used operation in hydroponics (very rarely do people have to increase the pH of their solutions). If a proper venting system or catalytic recombination system is used on the cathode side you could also go with the simple water oxidation/reduction route and be able to increase or decrease the pH using basically, pure electricity.

I am definitely planning to build one of this setups in the future. Coupled with modern sensors and micro controllers this could make it extremely easy to maintain very fine control over the pH of the solution, compensating – in real time – all the changes in pH carried out by plants without the risk of heavily over or under compensating (as it happens when you use acid/base additions).




Creating a robust pH/EC monitor for hydroponics using Atlas probes and an Arduino

A few months ago I talked about how you could build a simple sensor station for your hydroponic projects using an arduino (see here). However this small project used the relatively cheap – but I have found not very robust – pH/EC probes and boards from gravity which makes it a poorer choice for a more professional project aiming to constantly monitor the pH/EC of a production hydroponic setup. Today I am going to tell you how you can build a dedicated pH/EC monitor using the robust pH probes from Atlas, which also have several important advantages we will be discussing within this post. I would also like to point out that Atlas is not paying me anything to write this post, I write just because of my experience using their probes.

The pH/EC probes from gravity have several problems when looking for a robust sensing setup. The first issue they have is that the probes are not rated for constant immersion, so they are damaged if you place them within solution the whole time which is probably what you want to do within a production hydroponic setup. The second issue is that the boards require cable connections to the Arduino which introduces a significant amount of noise that can causes problems with measurements. Due to poor isolation there can also be issues with the gravity boards when measuring EC/pH at the same time. To overcome these issues we can use probes and boards from atlas which have the advantage of having no cable connections to the Arduino – connections are through pins directly – plus the probes are rated for constant immersion and are much more robust. These are the things we would need to build this project:

As you notice this sensor project is much more expensive than the sensor station I had discussed before, with a price tag of around 490 USD (not including shipping). However when looking for a robust setup you definitely should favor the additional expense as this will likely be paid off with much longer service times.

When you get the pH/EC kits the first thing you want to do is change your EZO boards (the small circuit boards that come with them) to i2C mode so that you can use them with your mini tentacle shield. To do this follow the instructions here, follow the instructions in the “Manually switch between UART and I2C” section, use female jumpers to make this process easier. Note that you can use your LCD shield analogue 5V and ground pins when you need power within the process.

//Libraries
#include <U8glib.h>
#include <stdio.h>
#include <Wire.h>
#include <Arduino.h>

#define TOTAL_CIRCUITS 2  

///---- variables for pH/EC tentacle shield ------- //

#define TOTAL_CIRCUITS 2   

char sensordata[30];                  
byte sensor_bytes_received = 0;       

byte code = 0;                        
byte in_char = 0;  
int channel_ids[] = {99, 100} ;                   
   
// ------------------------------------------------ //    

// EC values // CHANGE THESE PARAMETERS FOR EC PROBE CALIBRATION
#define EC_PARAM_A 0.00754256

//pH values // CHANGE THESE PARAMETERS FOR PH PROBE CALIBRATION
#define PH_PARAM_A 1.0
#define PH_PARAM_B 0.0

#define XCOL_SET 55
#define XCOL_SET2 65
#define XCOL_SET_UNITS 85

//--------------------------

U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8);   
float pH, EC;

//--------------------------

void draw() {
  u8g.setFont(u8g_font_04b_03); 
  
  u8g.drawStr(0,11,"pH:");
  u8g.setPrintPos(XCOL_SET,11);
  u8g.print(pH);
  
  u8g.drawStr(0,21,"EC:");
  u8g.setPrintPos(XCOL_SET,21);
  u8g.print(EC);
  u8g.drawStr( XCOL_SET_UNITS,21,"mS/cm" );
  
}

void read_tentacle_shield(){

  for (int channel = 0; channel < TOTAL_CIRCUITS; channel++) {      
  
    Wire.beginTransmission(channel_ids[channel]);     
    Wire.write('r');                         
    Wire.endTransmission();                       
    
    delay(1000); 

    sensor_bytes_received = 0;                        
    memset(sensordata, 0, sizeof(sensordata));        

    Wire.requestFrom(channel_ids[channel], 48, 1);    
    code = Wire.read();

    while (Wire.available()) {         
      in_char = Wire.read();           

      if (in_char == 0) {               
        Wire.endTransmission();         
        break;                          
      }
      else {
        sensordata[sensor_bytes_received] = in_char;      
        sensor_bytes_received++;
      }
    }
    
    if (code == 1){
      if (channel == 0){
        pH = atof(sensordata);
        pH = pH*PH_PARAM_A + PH_PARAM_B;
      }
      if (channel == 1){
        EC = atof(sensordata);
        EC = EC*EC_PARAM_A;
      }    
    }
  }
  
}

void setup()
{
    pinMode(13,OUTPUT);  
    Serial.begin(9600);
    u8g.setContrast(0);
    u8g.setRot180(); 
}

void loop()
{
 
  digitalWrite(13, HIGH);       
  delay(800);
  digitalWrite(13, LOW);   
    
  read_tentacle_shield();

  u8g.firstPage();
    do  {
      draw();
    } 
      while( u8g.nextPage() );          
      
}

Once you have changed the EZO boards to i2C you can now plug everything into the arduino and upload the code into your arduino. Plug the EZO boards into the mini tentacle shield and then plug that shield into the arduino. You’ll notice that the EZO boards make it impossible to plug the LCD screen directly on top – as the EZO circuits make the shield too tall – so you should use stackable headers to extend the connections so that you can plug the LCD screen on top without any problems. Make sure you download and install the U8glib library in your arduino IDE before uploading the code.

As with the previous code you’ll notice there are variables called PH_PARAM_A, PH_PARAM_B and EC_PARAM_A within the beginning of the code that you should change in order to calibrate your probes. Follow the instructions about calibration I gave in the previous post in order to figure this out. Using the calibration solutions that come with your kits you’ll be able to perform this calibration procedure. Whenever you want to calibrate your probes you should reset these variables to their original values, reupload the code and retake measurements.

Following this guide you will have a very robust sensor setup using very high quality probes. These probes are also coupled with a board that has no wire connections with the arduino, offering very high quality readings with very small amounts of noise. Additionally the LCD shield opens up the possibility to add more sensors to your station so that you can monitor, temperature, humidity, and carbon dioxide potentially from a single place.




Five dos and don’ts for automated pH control in hydroponics

The pH is one of the most important variables to control in hydroponic culture as it plays a key role in the availability of different ions and their absorption dynamics. Although most growers control pH manually it is often desirable to implement automatic pH control so that you can ensure that your solution always stays within an optimum range. This is especially true in recirculating systems where correcting the pH of the solution after it goes through the plants’ roots is necessary. Today I want to share with you five dos and don’ts when implementing automated pH control in hydroponic culture.

Do test your pH meter frequently with a buffer solution.  In hydroponics pH meters can lose calibration rather quickly as a consequence of being immersed in a nutrient solution that is at a lower ionic concentration than what’s ideal for most glass electrodes. This means that testing your pH meter with a buffer solution often – every week is ideal – is necessary in order to ensure that you are getting accurate readings. If the reading is not accurate you can then recalibrate the meter.

Do recondition your pH meter every month. In line with the above and in other to increase the life of a pH meter and each calibration it’s necessary to immerse the pH electrodes in a pH 4 or 7 buffer solution every month – for at least 2-3 hours – to ensure that the ionic content of the electrode is restored and the glass membrane’s responsiveness remains accurate. If you do this your electrode will be happier and you will need to calibrate less frequently. If an electrode is covered in biofilm the putting it in a hot bleach solution for half an hour before the buffer immersion is also necessary.

Do use electrodes designed for constant immersion. Regular pH electrodes – including those sold with some automated pH controllers – are not meant to be immersed the whole time and therefore get damaged and lose calibration much more quickly when used in this manner. To get best results use pH electrodes that are fabricated with long term immersion in mind. I wrote a blog post about these electrodes and why they are different than traditional pH electrodes.

Do place your electrode as far as possible from your pH changing inputs. When using a pH controller you should place the pH probe as far away as possible from the place where your pH up/down solutions will enter the hydroponic system. This is so that your pH electrode can get a slow change in pH as the pH up/down is mixed with the entire reservoir. Placing the probe close to the inputs will cause very erratic changes in the pH that do not really reflect the effect of the addition across the entire reservoir.

Do have addition limits in your controllers. Allowing a pH controller to add as much substance as needed to correct the pH can be a very bad thing to do. This is because several things can go wrong – pH probe losing calibration, controller getting damaged, electrical noise etc- that can cause unnecessary levels of addition that can kill an entire crop. Always have controllers where maximum additions per unit of time can be specified so that the possibility of this happening is minimized.

Don’t rely on a single pH probe. Although single probe controllers are the most common they can also be the most dangerous. A pH probe can get damaged, it can lose calibration or it can give erratic readings due to other reasons (for example electrical interference from other things in the reservoir). Therefore it’s always best to use two-probe controllers where readings are always verified across the two probes to ensure that the reading the controller is getting is accurate. If you have a commercial enterprise then this is a must, you wouldn’t want to lose an entire crop due to a bad pH probe adding a ton of acid/base to your solution.

Don’t aim for a specific pH value. A pH controller should not aim for a specific value of pH but to maintain pH within an adequate range. Usually the best way for a controller to act is to have a range with high/low thresholds where the controller will act to take the pH to the middle of the range when these thresholds are exceeded. For example a controller can be told to maintain pH in the 5.6-6.4 region and then it will act whenever the pH reaches 5.6 or 6.4 to take it back to 6 when any one of these two thresholds is breached. However if the pH is at 6.4 and the controller drops it to 5.8 it will not try to then bring the pH up (because it’s above the lower threshold).

Don’t place your pH probes near pumps or other electrical equipment in reservoirs. A pH probe takes an electrical measurement and is therefore prone to electrical interference. Having a pH probe close to other electrical equipment – especially those that draw significant current – can cause those wires to induce currents in the pH probe wires and generate all sorts of issues with pH readings. Always place pH probes away from pumps and ensure the pH probe and pump wires are never tangled together.

Don’t use very concentrated acid/base input solutions. A pH controller will be doing very fine control over a small pH range so it won’t need a very large amount of acid/base to do this job. Using very concentrated acid/base can cause the pH controller to completely overshoot its targets and cause it to either cause the system to get into an undesirable state – for example a very low pH if the controller can only add acid – or enter a loop where acid additions are followed by base additions in an endless cycle. Usually you want your acid/base mixtures to be concentrated enough to shift the pH over their addition volume but not much more than that. Strong acids/bases in the 10-20% concentration range are usually more than enough for this job.

Don’t ignore your controller’s data. A pH controller will do its job – control pH within a range – but it will not tell you whether your system is doing ok or not from a plant-health perspective. How often your pH controller has to add acid/base and how much acid/base it’s using to perform its job are important pieces of information that you need to take into account in order to ensure that your system is working properly. Remember that pH controlling substances often also contribute nutrients – like phosphorous or potassium – so it’s important to keep all these additions in check.

Of course pH control is no simple task and different pH controllers will have different advantages and disadvantages. However doing what you can to ensure proper maintenance – cleaning, conditioning electrodes, having proper placement, etc – can go a long way in ensuring that your setup behaves as ideally as possible. If you can then I would advice you build your own controllers using things like arduinos, raspberry pi computers and robust immersion pH probes so that you can have an optimum setup that can deliver all the advantages of pH control with as few disadvantages as possible. I’ll write about building your own pH controller in a future post.