SparkForm technical whitepaper
RootVision: continuous, in-situ root imaging
A buried six-camera instrument that photographs living roots on a schedule, records soil temperature at each imaging depth, and delivers stitched profiles and timelapses without disturbing the plant.
Pre-release product. RootVision is in pre-production testing. The figures in this paper describe the current hardware revision and software as tested in SparkForm's lab and early units. Values marked [TBD] have not been finalized and will be published once they are measured.
Abstract
Roots account for much of a plant's response to water, nutrients, compaction and temperature, yet they are the part of the crop researchers can least easily see. The usual options are to dig them up, which destroys the sample and gives a single moment in time, or to lower a camera into a minirhizotron tube by hand, which is labour-intensive and yields sparse, irregular observations. RootVision is a self-contained field instrument that is buried upright beside the plant. Six autofocus cameras in a vertical column image the soil and roots through a clear face, a scheduled controller wakes the unit, lights the face evenly and captures all six cameras in about fourteen seconds, and companion software stitches the six frames into one tall panorama of the root profile, about 33 cm of soil. Six temperature sensors, one at each camera depth, log the soil temperature with every capture. The unit runs on two 21700 lithium-ion cells (4900 mAh), up to 60 days on a single charge at one capture a day, and sleeps fully powered down between captures. Images and readings reach the researcher over WiFi and the cloud, and a USB LoRa dongle (RootBeacon) can wake units in the field on demand. This paper describes the problem, the system, its data pipeline, and how it is deployed.
1The problem: roots are hard to observe
Root architecture, depth, turnover and timing drive drought tolerance, nutrient uptake, lodging resistance and soil carbon. Breeding and agronomy programmes increasingly want these traits measured, and measured over time, because the interesting behaviour (when roots reach a moist layer, how fast they recover after a dry spell, when fine roots die back) happens between sampling dates.
Destructive sampling
Excavation, soil coring and shovelomics give rich data on the sample taken, but the plant is gone afterwards. Each time point needs a new plant, so variation between plants is mixed into variation over time, and a season-long series multiplies field labour. Washing roots out of cores is slow, and fine roots are lost in the process.
Minirhizotrons
Minirhizotron tubes made the same roots observable repeatedly, and they remain the standard non-destructive method. In practice, a person carries a camera to each tube, indexes it to each depth position by hand, and records images one window at a time. Observation frequency is set by staff time, typically weekly or less, and visits are skipped in bad weather, which is exactly when root behaviour is most interesting. Lighting, focus and positioning vary between visits, which complicates comparisons over time, and environmental context such as soil temperature has to be collected separately.
What is missing
What researchers need is an instrument that stays in place, images the same soil profile automatically at a chosen interval, keeps lighting and focus consistent from one capture to the next, records the conditions at each depth alongside the image, and sends the result back without a site visit. RootVision is designed to do that.
2The RootVision device
RootVision is a long, slim unit installed vertically in the soil. Its electronics, cameras and battery are potted in resin: a clear layer forms the imaging face, and a frosted white layer behind it diffuses the unit's own lighting. Only the top end, carrying the status display, the antennas and a sealed USB-C port, needs to remain accessible.
2.1 Optics: a six-camera column
Six 8-megapixel (3264 × 2448) autofocus cameras are mounted in a vertical column behind the clear face, each in its own sealed air pocket. Each uses a Sony IMX179 sensor behind a wide lens (120° diagonal field of view). The cameras are about 52 mm apart and each views roughly 70 × 54 mm of the face, so neighbouring views overlap by about 18 mm and together they image a continuous strip of the soil profile about 33 cm deep. These figures are estimated from the optics and the unit's geometry; each unit's actual coverage is measured when its stitching is calibrated. All six cameras are powered together and captured in sequence, which takes about 14 seconds for the full column.
The six frames are combined by panorama stitching (Section 4.2) into a single tall image: one stitched profile is on the order of 14,000 × 1,500 pixels. At the face each camera resolves about 44 pixels per millimetre (roughly 23 µm per pixel), so a fine root 0.1 mm across spans about four pixels (estimated; to be confirmed by measurement).
2.2 Autofocus
Soil settles against the face, resin thickness varies slightly from one unit to the next, and the lens-to-face distance is short, so focus matters. Each camera has a motorized lens that the firmware drives directly. During setup, an autofocus routine sweeps each camera's full focus range coarsely, then searches finely around the sharpest position. It scores sharpness on the centre of the frame and selects the middle of the sharp plateau rather than a single noisy peak. It keeps a new value only when the improvement is clear and the scene has enough texture to judge. Every scheduled cycle starts with a quick focus check on each camera before it captures.
2.3 Lighting and consistent exposure
Roots are imaged in the dark of the soil, so all light comes from the unit itself. Each camera has its own ring of RGBW LEDs (ten per camera), and two additional 30-LED panels sit behind the frosted layer. During focusing, a camera's own ring is used; during capture, the camera rings are switched off and the panels light the whole face steadily through the diffusing resin, avoiding hotspots and reflections from the clear face.
For timelapse and image analysis, consistency across captures matters more than any single image. Automatic exposure and white balance drift with what the camera sees, so RootVision can lock each camera's exposure, gain and white balance to values chosen during calibration. The settings are reapplied at every capture, and each image records in its metadata whether fixed or automatic settings were used.
2.4 Soil temperature at every imaging depth
Six digital temperature sensors sit inside the unit, one directly behind each camera. Each sensor is thermally coupled to the soil through a brass pad on the back of the unit, so every image comes with a temperature for the same depth. Temperatures are read just before each capture, written into each image's metadata, and kept as a time series on the device and in the app. The sensors are Texas Instruments TMP1075 parts, accurate to ±0.25 °C typical and ±1 °C maximum across the unit's operating range. The brass pads add thermal mass, which slows each sensor's response to rapid changes but does not change its accuracy.
Paired temperature and image series let researchers relate root growth to soil temperature at depth directly, for example root elongation against the warming of deeper layers in spring, without separate loggers.
2.5 Power: built to be left alone
RootVision runs on two 21700 lithium-ion cells with a rated capacity of 4900 mAh, charged from USB-C. Rather than sleeping in a low-power mode, the main computer is switched off between captures: a battery-backed real-time clock holds the schedule and switches the unit back on when the next capture is due. At one capture a day the unit runs up to 60 days on a single charge [TBD: endurance conditions]. A coin cell keeps the clock running if the main pack is disconnected.
A power guard protects unattended units. Before each cycle it measures the cells at rest. When the battery is low, the unit skips image capture and sends only a short status update, and it checks again a day later rather than at the normal interval. If the battery is critically low, it reports that state and sleeps for a week between checks, so a forgotten unit is not run flat. When the unit is plugged in to recover a deeply discharged pack, it suspends normal cycles until the cells are back to a safe level. The battery level and charging history are reported to the app.
2.6 Top end: display, USB-C and GPS
- Status display. A small screen shows what the unit is doing: why it woke (on schedule, called by a RootBeacon, plugged in to USB, or powered on), each step of a cycle ("Making sure every camera is sharp", "Camera 3 of 6", "Sending to the cloud"), the time to the next capture, network address and battery warnings. During setup it shows join and claim QR codes. The display only draws when its content changes, so it costs almost no power.
- USB-C. A threaded, sealed USB-C connector with a screw cap, rated IP67 by its supplier, for charging and, on the next hardware revision, wired data transfer. Everything else is fully encapsulated in resin, so the unit is sealed against water and soil by design; the complete unit has not been independently ingress-rated.
- GPS. A GNSS receiver records the unit's location, which is written into each image's metadata and shown on the fleet map. No manual surveying of plot positions is needed.
2.7 Controller and reliability
An embedded Linux computer runs the capture cycle, stores captures on an internal memory card, and handles networking. A hardware watchdog restarts the unit if software stops responding, and the unit logs each wake, its reason, and each cycle's steps for diagnosis.
3Connectivity
A field unit is reachable in several ways, and the software picks whichever is available. Every change a researcher makes reaches the unit by one of these routes.
3.1 WiFi on the local network
Where a site has WiFi (a research station, greenhouse or plot with a field router), the unit joins it as a client. RootSynapse finds units on the same network automatically and talks to them directly for live status, settings, image transfer and calibration.
3.2 The unit's own access point
With no known network in range, the unit opens its own WiFi access point, protected by a per-unit code printed on its label. A laptop or phone can connect to it directly for setup or to collect data in the field.
3.3 Cloud sync
When the unit has internet access, each cycle uploads its images, temperatures and status to SparkForm's cloud and downloads any changes waiting for it. Units that are registered but not reachable locally appear in the app as cloud units: a researcher can still view their images and change their schedule, camera settings, name or WiFi, and the unit applies the changes on its next connected cycle. Each unit authenticates with its own credential; no shared keys are stored on devices.
3.4 LoRa wake with RootBeacon
A scheduled unit is powered off most of the time, so it cannot simply be contacted. RootVision carries a separate low-power LoRa radio that keeps listening while the main computer is off. About every 30 seconds it sends a short check-in identifying the unit and listens briefly for a reply.
RootBeacon is a small USB LoRa radio with a whip antenna that plugs into a laptop running RootSynapse (or an Android phone). When a researcher chooses Wake (one unit) or Wake all, RootBeacon answers each unit's next check-in with a wake command. The radio then switches the unit on and holds it on, so it can be reached over WiFi for settings changes, a manual capture or data collection, without waiting for the next scheduled cycle. A Wake all session ends on its own after 30 minutes, so units are not left draining their batteries.
The link uses license-free spectrum at 903.9 MHz (North American 915 MHz band); a European 868 MHz version is available on request. LoRa wake range, including through soil for fully buried units, is under evaluation: field tests at increasing distances, in line of sight and with obstructions, are planned. [TBD: LoRa range]
3.5 USB
USB-C charges the unit today. A direct wired network link over the same connector, for data transfer and service without WiFi, is in development for the next hardware revision.
4RootSynapse software
RootSynapse is the companion application for RootVision. It runs on Windows desktops and Android phones and tablets; an iPhone version is in development. The desktop version also does local stitching, calibration and service tasks.
4.1 Scheduling
Each unit has a schedule: a capture interval (for example every 6 hours or once a day) and the time of the next cycle. The schedule can be paused. Next-cycle times are computed so that captures stay on their slots over weeks instead of drifting, which keeps a timelapse evenly spaced. Changing the schedule on a unit in the field takes effect immediately over WiFi, or on its next connection if it is a cloud unit.
4.2 Gallery and panorama stitching
The gallery shows every capture by unit and date, each camera's frame and the stitched profile. Stitching uses a per-unit calibration made once with a printed calibration target: it measures each camera's lens distortion and position, corrects them, aligns the six frames on a common scale, and corrects brightness and colour across each frame so that the joins do not show. Panoramas from calibrated units are produced automatically in the cloud within seconds of a cycle's upload, and can also be stitched locally on the desktop.
On the current hardware the six cameras' fields do not overlap; there is a narrow strip between neighbours that no camera sees. By default the stitch places calibrated frames edge to edge and invents nothing. Optional gap-filling methods exist for display, and an unfilled copy is always kept for analysis. The next hardware revision reduces the camera spacing to close these gaps.
4.3 Timelapse
A sequence of stitched profiles becomes a timelapse video at a frame rate the researcher chooses. Because focus, lighting and exposure are held constant between captures, the change from frame to frame is the roots and the soil, not the camera.
4.4 Soil temperature history
A temperature tab plots all six depths over time, one line per sensor, with a cursor to read the values at any capture. Shallow sensors show the daily swing; deep ones show the slower seasonal trend.
4.5 Fleet map and unit status
A map shows every unit in the account at its GPS position, on street or satellite imagery. Each unit's page shows its battery level and charging history, last wake and reason, schedule, network, and firmware version.
4.6 Calibration tools
On the desktop, a calibration view streams a live preview from each camera, runs autofocus on all six cameras, adjusts exposure, gain and white balance per camera or for all, chooses the lighting used in the preview, and saves fixed capture settings to the unit. Camera on-time is limited automatically during long sessions to protect the camera modules from overheating.
4.7 Firmware updates
Firmware updates are signed packages that a user installs from the app when an update is available, over WiFi or from the cloud. The unit verifies the signature, installs, and runs a self-test over its next boots. If the new version fails, it rolls back automatically to the previous one. A separate recovery partition can restore a working system if the main one cannot start. Settings, calibration, identity and images are kept across updates. A factory reset restores default settings and forgets saved networks while keeping the unit's identity; deleting stored images is optional.
5Data pipeline and cloud
A scheduled cycle produces, for each capture time, six camera images and a set of readings. The path from the soil to the researcher is:
- Capture on the unit. Six full-resolution JPEG images, each tagged in its EXIF metadata with the unit's serial number, camera number, local capture time and time zone, the six soil temperatures, and the GPS fix (also as standard EXIF GPS fields). Images and a temperature log (CSV) are stored on the unit, so nothing is lost while it is offline.
- Upload. When connected, the unit uploads new images and its status (battery, power state, temperatures, location, firmware) to SparkForm's cloud, which runs on Amazon Web Services. Each unit signs in with its own credential.
- Processing. As images arrive the cloud makes thumbnails and, once all six images of a capture are present, stitches the calibrated panorama, keeping an unfilled copy for analysis.
- Access. Researchers sign in to RootSynapse with an account; a unit belongs to the account that claimed it with the unit's printed code, and only its owner can see its data or change its settings. On the desktop, images can also be synchronized directly from units on the local network into a local library, independently of the cloud.
- Return path. Changes made in the app (schedule, camera settings, name, WiFi, image deletions) are applied directly to reachable units or queued in the cloud and fetched by the unit on its next connected cycle.
Because the image files carry their own metadata, they remain self-describing when exported to other analysis tools: depth position (camera number), time, temperature and location travel with each frame.
6Deployment workflow
- Provision. Each unit leaves SparkForm with its identity, cloud credential, hardware check and a label carrying its serial number and a QR claim code. Its hardware features (cameras, sensors, radio, GPS) are tested and recorded before shipment.
- Claim and connect. In RootSynapse the researcher scans the label or enters the code, connects to the unit's own access point, gives it the site's WiFi network if there is one, and the unit is added to the account.
- Calibrate. On the desktop, run autofocus and the stitch calibration with the printed target, and save fixed capture settings so every capture is lit and exposed the same way.
- Install. Install the unit upright with its clear face against undisturbed soil beside the plant or row, and backfill so the face makes good contact. The unit's cross-section is about 106 mm corner to corner, so a hole of at least 110 mm (about 4½ in) diameter fits it; allow about 120 mm where the top end, with its USB-C cap, goes below the surface. The top end with the display stays above the surface, or the unit can be set just below the surface where machinery passes, with the spot marked; the GPS fix records where it is.
- Schedule. Set the capture interval and the first cycle. The unit then runs unattended: wake, focus check, capture, upload, sleep.
- Collect. Images, panoramas, timelapses and temperature histories arrive in the app over the cloud, or are collected on site over WiFi. RootBeacon can wake a unit for an on-site visit, a manual capture or a settings change between scheduled cycles. Charge the unit from USB-C as needed; the app shows the battery level and history.
7Applications
- Root phenotyping in breeding trials. Rooting depth over time, rate of descent and timing of root arrival at depth, compared across lines on the same schedule.
- Drought and irrigation research. Root response to drying and rewetting, at a time resolution of hours rather than weeks, with soil temperature at each depth.
- Cover crops and soil health. Root growth and turnover of cover crop mixes through the season and over winter, without disturbing the plots.
- Agronomy and management trials. Effects of tillage, compaction, fertility or planting date on root development, recorded continuously.
- Horticulture and controlled environments. Root zone monitoring in greenhouse beds and containers on the local network.
- Teaching and demonstration. Live root timelapses for field days and classrooms.
In each case, the value lies in seeing the same roots repeatedly and on a fixed schedule, with consistent imaging and the soil temperature at the same depths recorded alongside.
8Specifications
Current hardware revision, pre-release. Subject to change.
| Imaging | |
|---|---|
| Cameras | 6, in a vertical column behind a clear face |
| Sensor resolution | 8 MP per camera (3264 × 2448), Sony IMX179 |
| Lens | 120° diagonal field of view |
| Focus | Motorized autofocus per camera; sweep-and-refine routine with a check every cycle |
| Field per camera | About 70 × 54 mm of the face; neighbouring views overlap by about 18 mm (estimated) |
| Imaged depth | About 33 cm, continuous (estimated) |
| Effective resolution | About 44 px/mm at the face, roughly 23 µm per pixel (estimated) |
| Lighting | RGBW LED ring per camera (10 LEDs) plus two 30-LED diffused panels; steady panel lighting for capture |
| Exposure control | Automatic, or fixed exposure, gain and white balance per camera from calibration |
| Capture time | About 14 s for all six cameras |
| Output | JPEG per camera with EXIF metadata (time, camera, serial, soil temperatures, GPS); stitched panorama (order of 14,000 × 1,500 px); timelapse video |
| Sensing | |
| Soil temperature | 6 digital sensors, one behind each camera, coupled through brass pads; read every cycle. TI TMP1075: ±0.25 °C typical, ±1 °C maximum |
| Location | GNSS receiver; u-blox MAX-M10S multi-constellation receiver; fix recorded in image metadata and on the fleet map. About 1.5 m (CEP, open sky, receiver specification) |
| Power | |
| Battery | 2 × 21700 Li-ion cells, 4900 mAh rated |
| Endurance | Up to 60 days on a single charge at one capture a day [TBD: endurance conditions] |
| Charging | USB-C, about 12 hours for a full charge (faster charging on the next hardware revision) |
| Power management | Fully off between cycles; real-time clock wake with coin-cell backup; low-battery guard; hardware watchdog |
| Connectivity | |
| WiFi | Client on a site network, or the unit's own access point. 2.4 GHz, 802.11b/g/n |
| Cloud | Automatic upload and settings sync each connected cycle; per-unit credentials |
| LoRa wake | Low-power radio with check-ins about every 30 s; woken by RootBeacon. 903.9 MHz (North America); 868 MHz (Europe) on request |
| LoRa range | Under evaluation [TBD: LoRa range] |
| USB | USB-C, threaded sealed connector with cap (IP67 per connector supplier): charging; wired data on the next revision |
| Physical | |
| Construction | Electronics, cameras and cells potted in resin; clear imaging face, frosted diffuser layer |
| Display | Status screen at the top end |
| Dimensions | About 420 mm long, 61 mm wide (imaging face) and 86 mm front to back; the USB-C cap adds about 14 mm at the top end |
| Weight | [TBD: weight] |
| Sealing | Fully encapsulated in resin; the only exposed port is the capped USB-C connector (IP67 per its supplier). Not independently rated as a complete unit |
| Operating temperature | −20 °C to 60 °C, set by the lithium-ion cells (the other components are rated −40 °C to 85 °C) |
| Storage | On-board card storage, keeps captures while offline. 64 GB |
| Software and accessories | |
| RootSynapse | Windows desktop; Android phone and tablet; iPhone in development |
| RootBeacon | USB-C LoRa radio dongle with whip antenna and status LED, for laptop or Android |
| Updates | Signed firmware packages from the app; automatic rollback; recovery partition |
9Status and roadmap
RootVision is a pre-release product. Units of the current hardware revision are running scheduled captures, cloud sync, calibrated stitching, temperature logging and LoRa wake in SparkForm's testing. The work under way includes:
- Next hardware revision. Camera placement tuned for the wider lenses; faster USB-C charging with a dedicated fuel gauge for more accurate battery readings; a wired data link over USB-C; and thermal improvements around the cells.
- Field validation. LoRa wake range in open ground, through obstructions and for buried units; battery endurance under field conditions; long-term sealing.
- Software. RootSynapse for iPhone; continued work on cloud timelapses and fleet management.
Specifications in this paper will be updated as these are completed. RootVision is made to order: orders are accepted now, with delivery in about a month. To order, or to discuss a deployment, contact SparkForm at clove@sparkform.ca or 1-519-916-0165.
© 2026 SparkForm. RootVision, RootBeacon, RootSynapse and RootCloud are products of SparkForm. Product images are renders of the current hardware; the panorama in Figure 3 is an illustration.