Skip to content
Buy 10+ on select items — save 10% auto-applied
Free US shipping on orders $35+
Order by 3pm ET — ships same-day from the US
Skip to main content

Arduino WCS1700 Current Sensor: Monitor 70A Loads | ShillehTek

May 14, 2026 15 views

Arduino WCS1700 Current Sensor: Monitor 70A Loads | ShillehTek
Project

Build an Arduino WCS1700 current monitor that reads live DC amps up to 70A with safe isolation, ideal for solar, EV charging, and battery loads with ShillehTek.

20 min Beginner / Intermediate3 parts

Project Overview

Arduino + WCS1700 current sensor: In this build, an Arduino reads live DC current (in amps) from a WCS1700 70A Hall-effect sensor so you can safely monitor heavy-load wiring with galvanic isolation.

The wire whose current you are measuring passes through a hole in the module and never electrically connects to your Arduino. That makes it a strong choice for solar arrays, EV chargers, motor controllers, and battery-bank monitoring.

  • Time: ~20 minutes
  • Skill level: Beginner / Intermediate
  • What you will build: An Arduino reading live DC current (in amps) through a high-current wire.
WCS1700 70A Hall-effect current sensor module used with an Arduino to measure high current safely
The WCS1700 pass-through Hall sensor module with an adjustable trigger threshold.

Parts List

From ShillehTek

External

  • A high-current circuit you want to monitor (battery + load, motor controller, etc.)
  • Hookup wire heavy enough for the actual current (AWG 10 / AWG 8 for tens of amps)

Note: The current-carrying conductor passes through the hole in the module. It is not connected to the Arduino. That isolation is the whole point.

Step-by-Step Guide

Step 1 - Inspect the Module

Goal: Identify the WCS1700 pins and key onboard features before wiring.

What to do: Locate the pass-through hole (where the high-current wire goes) and the module pins for power and outputs. Note the trim-pot and status LED if your board includes them.

Top view of the WCS1700 current sensor module showing the pass-through hole and components
Hall sensor under the through-hole, comparator IC, trim-pot for threshold, status LED.
WCS1700 module pinout labels for VCC, GND, AOUT, DOUT, and reference
Five pins: VCC, GND, AOUT (analog), DOUT (digital), and an extra reference.

Expected result: You know which pins to use for 5V power, ground, and the analog output used for current measurement.

Step 2 - Wire It Up

Goal: Connect the WCS1700 analog output to the Arduino so it can be read on an analog input.

What to do: Wire power and ground, then connect the analog output (AOUT) to A0 on the Arduino.

WCS1700 current sensor wired to an Arduino Nano with VCC to 5V, GND to GND, and AOUT to A0
VCC to 5 V, GND to GND, AOUT to A0.
  • VCC to 5 V
  • GND to GND
  • AOUT to A0
  • Thread the high-current wire through the hole (one full pass per x1 gain)

Expected result: The Arduino is powered and can read a voltage on A0 coming from the WCS1700 AOUT pin.

Step 3 - Calibrate Zero

Goal: Record the no-current baseline so you can measure positive/negative current offset from that point.

What to do: With no current flowing through the hole, the sensor outputs about VCC/2 (around 2.5 V on a 5 V supply). Read the value once and treat it as your zero point. Every reading is then offset from there.

Expected result: You have a baseline (zero) voltage that represents 0 A for your specific module and setup.

Step 4 - Upload the Sketch

Goal: Convert analog readings into volts and then into amps using the sensor sensitivity.

What to do: Upload the sketch below, then open the Serial Monitor at 9600 baud. The code averages samples to stabilize readings and prints voltage and current.

Code:

const int PIN = A0;
const float VCC = 5.0;
const float SENS = 0.044;   // V/A for WCS1700 (datasheet typical)
float zeroV = 0;

void setup() {
  Serial.begin(9600);
  long sum = 0;
  for (int i = 0; i < 500; i++) sum += analogRead(PIN);
  zeroV = (sum / 500.0) * (VCC / 1023.0);
  Serial.print("Zero V: "); Serial.println(zeroV, 3);
}

void loop() {
  long sum = 0;
  for (int i = 0; i < 50; i++) sum += analogRead(PIN);
  float v = (sum / 50.0) * (VCC / 1023.0);
  float amps = (v - zeroV) / SENS;
  Serial.print("V="); Serial.print(v, 3);
  Serial.print("  I="); Serial.print(amps, 2);
  Serial.println(" A");
  delay(250);
}

Expected result: The Serial Monitor prints a stable baseline near 0 A when no current flows through the sensor.

Step 5 - Measure a Real Load

Goal: Measure live current through a real high-current wire and observe how it changes over time.

What to do: Thread your load wire through the module hole, power up the load, and watch the current readings update. If you want more sensitivity, multiple passes through the hole can increase the effective signal (follow your module guidance).

WCS1700 current sensor clamped around a high-current wire in a test setup while an Arduino reads current
Thread your load wire through the module hole, then power up the load.
Graph of WCS1700 current readings over time showing changing load current
Plot current over time to see motor inrush, solar production curves, and battery draw.
Arduino Serial Monitor output showing live voltage and current readings in amps from a WCS1700 sensor
Live amps update at about 4 Hz; the 50-sample average helps keep the reading stable.

Expected result: The Serial Monitor shows current changing with your load, including spikes such as motor startup inrush.

Step 6 - Where to Take It Next

Goal: Extend the same measurement into logging, energy calculations, or automation.

What to do: Use the measured current value as an input for any of the ideas below.

  • Log to an SD card to profile battery discharge curves
  • Compute watt-hours over time (multiply by voltage, integrate)
  • Trigger a relay above an overcurrent threshold (software-driven breaker)
  • Stream to a dashboard via ESP32 for live solar / EV charge monitoring

Expected result: You have clear next steps to expand the Arduino + WCS1700 current measurement into a full monitoring system.

Conclusion

You built an Arduino-based current monitor using the WCS1700 Hall-effect sensor to measure up to 70 A with galvanic isolation, then converted the analog output into live amps over Serial.

Want the exact parts used in this build? Grab them from ShillehTek.com. If you want help customizing this project or building something for your product, check out our IoT consulting services.