A current sensor simulator: an ACS712 measuring a motor
Mokxi is a free online ACS712 current sensor simulator that runs in your browser, with nothing to install and no account needed. An ACS712 5 A board in the lead of a 6 V gear motor, its output on A0 of an Arduino Uno and the current on an LCD. Hold the button and the motor starts: the reading jumps to an amp for an instant, then settles at 150 mA.
- 505parts on the bench
- 45boards running now
- 1.00xreal time, on every board
What you can do here
In the circuit above, or in the editor it opens.
- Measure a motor’s current without the motor’s supply touching the Arduino
- Catch the start-up surge of a motor, about an amp
- See the output rest at half the supply with no current
- Turn volts into amps: 185 mV per amp on the 5 A board
- See why one ADC count is 26 mA, and what that does to small readings
- Compare the reading with the sensor’s own current readout
What the running circuit shows
A zero at 2.5 V, a surge and a steady draw.
The motor’s loop is a 6 V bench supply, a push button, the sensor and the motor. None of it connects to the Uno; the ACS712 measures the magnetic field the current makes and puts out a voltage. With no current that voltage is half the supply, 2.50 V, so the first thing the sketch does is read it and print “Midpoint: 511”. Every later reading is measured from there.
With the button up the sketch still prints 11 to 14 mA. That is not current; it is the sensor’s noise. Hold the button and the line becomes “mA: 163 peak: 1004”: for an instant the stalled motor drew an amp, then it spun up and settled at 0.150 A, with A0 at 2.528 V. A motor’s start-up current is several times its running current, and this is the circuit that shows it to you.
The printed 163 mA against a true 150 mA is the honest part. One count of the Uno’s converter is 4.9 mV, and at 185 mV per amp that is 26 mA, so this board cannot tell 150 mA from 165. For small currents, an INA219 is the better sensor.
How the ACS712 is modeled
The datasheet’s line, and its noise.
The output is half the supply plus 185 mV for every amp through the 5 A board, positive or negative, with the noise a real one has. The current path is a real conductor in the circuit, so the sensor reads whatever flows, AC or DC.
What it leaves out: the sensor’s response to nearby magnets and wires, and drift with temperature. On a real bench keep the board away from the motor itself, whose magnets it will happily measure.
Three steps from a blank tab to a running circuit.
Open the editor
It runs in your browser tab. Nothing to install, and you need no account to start.
Your first projectWire it and write the code
Drag parts onto a breadboard, run each wire from pin to pin, and write the sketch beside it.
WiringPress Run
Your sketch compiles in the tab and runs on a model of the chip, with the Serial Monitor beside it.
Run and serial
Open a project and press Run.
Every one runs in the editor exactly as it is drawn, ready to change.
What makers say about Mokxi.
“The AI checker helps check and correct my circuits, and it has way more components than Tinkercad. As a student I really appreciate the tool.”
“I’d been looking for a real online electronic simulator that was intuitive and complete when I found Mokxi. I was able to quickly import a Fritzing file and my Arduino sketch and start testing. Mokxi has all of the makings for the best online Arduino simulator I have been able to find!”
“I’m using Mokxi to develop and simulate an STM32-based four-wheel-drive robot car before building the actual hardware. It allows me to experiment with DC motor control, PWM, RPM measurement using photointerrupters, and different acceleration, braking, and reversing strategies, helping me understand and refine the system before implementing it in real life.”
Questions, answered.
Is it free?
Yes. The circuit on this page, every part in it and the editor it opens in are on the free plan, with no card.
Do I need an account?
No. The circuit runs the moment the page does, and the editor opens without one. A free account is only for saving a project to the cloud and sharing it by link.
How do I convert an ACS712 reading to amps?
Subtract the zero reading, the count with no current, then multiply by 4.9 mV per count and divide by the sensitivity: 185 mV per amp for the 5 A board. In this circuit the zero is a count of 511.
Why does my ACS712 show current when nothing is connected?
Noise, and a zero that is not quite where the sketch assumes. Measure the zero at start-up with no current flowing, as this sketch does, and average many readings. A few tens of milliamps of jitter on the 5 A board is normal.
Can an ACS712 measure small currents?
Not well. On a 5 V Uno one count is about 26 mA with the 5 A board, so anything under 100 mA is mostly noise. Use an INA219 for that range.
Do I need an account at all?
No. The editor, the templates, the gallery, the compiler and Run all work without signing in. Your browser keeps your work as you go. An account saves your projects online, so they follow you to any computer. It also gives you a link to share.
Which boards are supported?
Forty-five, all on the free plan. Arduino: the Uno R3, Uno R4 Minima and Uno R4 WiFi, Nano, Nano ESP32, Nano RP2040 Connect, Mega 2560, Leonardo, Micro, the Pro Mini in its 5 V and 3.3 V builds, and the SparkFun Pro Micro. ESP32: the classic DevKit V1, the ESP32-S3, the ESP32-C3 and C6 DevKits, the Espressif DevKitC V4, the Freenove ESP32-WROVER, the Wemos LOLIN32 Lite, the Wemos D1 R32, the Cheap Yellow Display, the TTGO T-Display, the ESP32-C3 SuperMini and the Seeed XIAO ESP32-C3, C6 and S3. ESP8266: the NodeMCU, the Wemos D1 mini and the ESP-01S. Also the Raspberry Pi Pico and Pico W, the Seeed XIAO RP2040, the Waveshare RP2040-Zero, the Seeed XIAO SAMD21, the WCH CH32V003, the STM32F411 Black Pill, the STM32 Nucleo-F411RE and the STM32F103 Blue Pill, the BBC micro:bit V2, and the ATtiny85 and the ATmega328P in its 16 MHz and 8 MHz builds, which plug straight into the breadboard as bare chips. Your own code compiles in the browser for all of them. Then the Raspberry Pi 4, Pi 5 and Zero 2 W computers, which run your Python with gpiozero and RPi.GPIO, with nothing to compile. Each board page lists what it can and can’t do. For example, the WiFi boards have pretend WiFi, not a real radio, and the page says so.
Is my sketch really compiled in the browser?
Yes. A real compiler (clang, built for the web) runs in your browser. It downloads once, and your browser keeps a copy. After that, every build happens on your own computer. There is no build server and no waiting in line, so there are no build minutes to run out of.
Which browsers work?
Any up-to-date Chrome, Edge, Firefox or Safari, on a computer, a phone or a tablet. They all support WebAssembly, which Mokxi needs, and they have for years.
Does it work on a phone?
Yes. The editor works with touch, the buttons are big enough to tap, and the layout fits a small screen. The simulation runs on the phone itself.
Can I try Pro before I pay?
Yes. Every account can try Pro free for 7 days, once. It takes a card, nothing is charged for those days, and if you cancel before they end you pay nothing. It starts when you choose it.
Can I cancel anytime?
Yes, in one press from your account page. Your plan runs to the end of what you paid for.
Do you offer refunds?
Yes, once per account. Write to us within 14 days of a payment and we refund all of it. Lifetime Pro is refunded in full within 14 days of buying it.
Is there a student discount?
Yes. Students get Pro at half price with a school email.
Do students need accounts?
No. The simulator works signed out, so your class starts from one link with nothing to sign up for. An account only adds cloud saving and sharing, and a student can make one later, or never.
Does it work on a Chromebook?
Yes. Everything runs on the machine in front of the student, so a Chromebook works as well as a lab PC.
What does it cost for a class?
Nothing, if your students only need to open and run circuits: the whole simulator is on the free plan. The class tools (a roster, starter projects, auto-graded checks, the gradebook) come with Pro and Classroom. Classroom is $9.99 a student a year, from 5 students, so at least $49.95 for the year. Your own seat is free, and from 50 students each one costs less. Your students get Pro’s room while they are in your classes. Pay by card, invoice or purchase order. Pro on its own runs classes for up to 10 students in all. To try the class tools with real students first, start the free 30-day trial from your class page: one class of up to 20 students, no card.
Is student work private?
Yes. A student’s projects in a class are always private: they cannot be opened by link or put in the gallery. One exception, and only for reading: a teacher may open, and never write, a project owned by somebody in a class they teach, which is what a card on the class wall does. What we store about a student, who processes it, how a school has it deleted, and how we handle COPPA consent for students under 13 and FERPA as a school official are all on the student data privacy page at /privacy/students.
Is Mokxi AI free?
Every signed-in account gets questions every day: 5 on a free account, 50 on the Pro trial, 100 on Pro and the other paid plans, and 25 on Lifetime Pro.
Does Mokxi AI work with ESP32 and Raspberry Pi Pico sketches?
Yes. It knows which board the project is on and answers for that board, from an Uno to an ESP32, an ESP8266, a Pico or an STM32.
Can Mokxi AI change my code without asking?
No. It proposes a change as a card. Accept is yours, and only appears once the changed code compiles; Ctrl+Z undoes it.
What does Mokxi AI send with a question?
Your project text, the matching help articles and the last six messages of the chat, never your name or account. "What is sent" shows exactly what went.
Latest arrivals in Mokxi.
More simulators
Each one opens on a circuit that is already running.
Catch a motor’s surge
Open the circuit, hold the button and read the peak. Nothing to install, and no account needed.





