Testing the SenseCap S700 V2 weather station

Testing the SenseCap S700 V2 weather station

A few weeks ago, we presented the Yocto-SDI12 which communicates with SDI-12 sensors. Today, we're going to use the Yocto-SDI12 to retrieve measures from Seed Studio's integrated SenseCAP S700 V2 weather station and display them using Yocto-Visualization for Web.

Weather Station

Seed Studio's SenseCAP S700 V2 weather station combines several interesting meteorological measures: temperature, relative humidity, atmospheric pressure, luminosity, rain detection, wind direction and speed.

Luminosity sensor    Rain sensor
Wind sensor    Temperature, humidity and pressure sensor
Sensors on the SenseCAP S700 V2

When the station is connected directly to a computer via a USB Type C cable, you can use an application to display the values and perform a few configuration actions. Once installed outdoors, the station can transmit data either via MODBUS (RS-485) or SDI-12.

The ultimate aim of our experiment is to optimize the watering of a vegetable garden. So, for the time being, we're going to place the SenseCAP S700 V2 station directly in the vegetable garden, to obtain local measures of luminosity, temperature and rainfall, taking into account the surrounding trees. This won't be ideal for measuring wind direction, which is bound to be swirling at this location, but it's the precise location for which we want to measure environmental conditions.

Weather station in the vegetable garden
Weather station in the vegetable garden


The weather station offers a choice between SDI-12 and RS-485. The big advantage of SDI-12 is that it needs only three wires to power and communicate with one or more sensors. We therefore used a simple electric cable with reinforced insulation designed for outdoor use to connect our station in the middle of the vegetable garden. In addition to the weather station, we took the opportunity to connect two soil moisture sensors to the same cable.

Please note: when shipped from the factory, the weather station is configured to use the RS485 interface. You therefore need to launch the USB configuration application to modify the communication parameters and activate the SDI-12 mode.

One minor disappointment is that Seed Studio's SDI-12 implementation does not fully comply with the standard when it comes to managing the response time to measure commands. Fortunately, these specificities can be set in Yocto-SDI12 to remedy this problem: you can modify the minimum time to wait after an M command directly in VirtualHub on the Yocto-SDI12 configuration page.

Power supply

Generally speaking, SDI-12 sensors are powered by 12V, and this is the case for the SenseCAP S700 V2 station. However, its electronics generate excessively high consumption peaks, and the 12V voltage source integrated into the Yocto-SDI12 can't directly satisfy them. To get around this problem, we add a 0.5 Farad supercapacitor in parallel to the 12V supply line, to act as an energy reserve, and upstream an LM317 regulator regulated by a 10 Ohm resistor so as never to consume more than 125mA on the Yocto-SDI12's 12V output. In this way, the current regulator gradually charges the supercapacitor, which is then used to power the weather station, withstanding its consumption peaks.

Power supply installation diagram
Power supply installation diagram

The whole system is connected to the network via a YoctoHub-Ethernet, which can post measures directly to a web server.

Automatic measure

Our first objective is to collect measures and visualize them using Yocto-Visualization for web, installed on an instance of VirtualHub for web. For this to work autonomously, we need to create a job on the Yocto-SDI12 that polls the weather station every 30 seconds to read temperature, air humidity, atmospheric pressure, luminosity, wind direction and speed, as well as maximum rain accumulation, 24-hour rainfall, current rain intensity and maximum rain intensity. The Yocto-SDI12's job configuration interface lets you do all this with just a few clicks:

Weather station measuring job Measuring job for air values measured by the weather station

In addition to polling the weather station every 30 seconds, every 24 hours the module sends a command to reset the accumulated rainfall measurement, giving us a 24-hour accumulated value.

A few examples

Here's an example of a temperature graph taken with the SenseCAP S700 V2 over a few days:

SenseCAP S700 V2 temperature from June 3 to 9
SenseCAP S700 V2 temperature from June 3 to 9

Here are the meteorological readings for the same period, obtained from meteoart.com.

meteoart.com weather from June 3 to 9
meteoart.com weather from June 3 to 9

Let's compare the data taken with the SenseCAP S700 V2 and those provided by meteoart.com. The measures agree to within +/-3░C, which can be explained by the fact that the meteoart.com measure corresponds to the measures taken at Cointrin airport, 10km away. Daily temperature fluctuations recorded by the SenseCAP S700 show peaks and dips that mirror the meteoart.com forecasts.

Here is a graph of all the values recorded at our station on June 9 between 12pm and 11pm.

SenseCAP S700 V2 weather for June 9
SenseCAP S700 V2 weather for June 9

And the readings for the same period according to meteoart.com:

meteoart.com weather for June 9
meteoart.com weather for June 9

Once again, objective comparison is difficult due to differences in conditions caused by the 10km distance between the two measure sites.

There is one limitation of the SenseCAP S700 V2 station, however: due to its measuring technology, it is unable to detect light precipitation. Its rain detector requires sufficiently large drops to see them.

At this stage, it's difficult to comment on the reliability of wind measures at the location we've installed the station. We may come back to this topic in a few months' time, if we get the chance to move it...


The combination of the Yocto-SDI12 and the SenseCAP S700 V2 station has enabled us to set up a solution for the combined measurement of multiple meteorological parameters, with online visualization but without having to use a proprietary cloud service, without too much difficulty. This was our first objective, and we achieved it.

In a second phase, we'll be able to study the impact of precipitation, temperature and luminosity on soil moisture, and see if it's possible to optimize automatic watering accordingly. But that's another story, which will have to wait a few more weeks...

Add a comment No comment yet Back to blog

Yoctopuce, get your stuff connected.