Modbus TCP client
Function codes 01, 02, 03, 04, 05, 06, 15 and 16, with per-connection timeout, retries and errors that name the cause.
Modbus TCP FieldKit For iPhone and iPad
Find a device on your Wi-Fi, read its coils and registers, chart live values and confirm each write before it leaves the phone. RS-485 devices work through a Wi-Fi or Ethernet converter with RTU over TCP.
$5.99 once. No subscription, no in-app purchases, no account.
FC 05, 06, 15 and 16 stop on a sheet that lists the target and each value. You confirm or nothing goes out.
Find devices and Scan Unit IDs send one FC 03 read at a time and write nothing.
Profiles, logs and scan results stay on the device until you export them. What can leave the device.
This is the request FieldKit sends when you read three holding registers from address 0. Start with this frame when a device gives an odd answer.
You can start with only the Wi-Fi network. The app takes you from finding the device to charting its registers.
One purchase includes everything below.
Function codes 01, 02, 03, 04, 05, 06, 15 and 16, with per-connection timeout, retries and errors that name the cause.
Reach RS-485 devices through a transparent Wi-Fi or Ethernet converter. If a read times out, the app offers one read with the other framing.
Scan your own Wi-Fi subnet on up to eight ports. Results show who answered Modbus, who answered with an exception and which open ports gave no Modbus answer.
Try 1 to 10 plus 0 and 255, or the full range 1 to 247. A full scan takes about 75 seconds. It reads one register per unit and writes nothing.
Up to 16 blocks at 1 to 60 second intervals. Charts cover 5 minutes, 15 minutes or 1 hour, and a failed poll shows up as a gap in the line.
Columns timestamp, block, address, raw, value, unit and status, in UTF-8 with UTC times. The file leaves only through the share sheet.
Save endpoints and register definitions with value format, byte and word order, scale and unit. Default export strips hosts, labels and values.
Filter Client, Server or combined entries and export sanitized JSON for a colleague or a support ticket. Raw frames and register values stay out of it.
Modbus has no undo. FieldKit keeps reads and writes apart and puts a confirmation between you and each write.
You remain responsible for the equipment. Try writes on a simulator or a non-production register map first.
Start the server, point your SCADA, HMI or client code at the iPhone's address, and test against a register map you control.
1502 by default. We don't promise background operation or port 502 on iOS.
An iPhone has no RS-485 port, but a transparent converter on your Wi-Fi or Ethernet does the job. Choose RTU over TCP and the app sends RTU frames with CRC to the converter's TCP port.
Check this list before you buy. It tells you whether FieldKit fits your job.
| Code | Function | Limit per request |
|---|---|---|
| 01 | Read Coils | 2000 bits |
| 02 | Read Discrete Inputs | 2000 bits |
| 03 | Read Holding Registers | 125 registers |
| 04 | Read Input Registers | 125 registers |
| 05 | Write Single Coil | 1 coil |
| 06 | Write Single Register | 1 register |
| 15 | Write Multiple Coils | 1968 coils |
| 16 | Write Multiple Registers | 123 registers |
Real screens from the App Store listing, with demo addresses.
You pay Apple once. The App Store shows the price for your country.
There is no free version or trial. Apple handles refund requests at reportaproblem.apple.com.
Devices that speak standard Modbus TCP on your network: PLCs, energy meters, HMIs, gateways, inverters, and ESP32 or Raspberry Pi projects. RS-485 devices work through a transparent Wi-Fi or Ethernet converter.
The app doesn't support vendor-specific extensions such as Solarman V5, even on port 8899.
It supports RTU over TCP: the app sends RTU frames with CRC to a converter's TCP port. It has no RS-485, USB, serial or Bluetooth connection of its own, and it does not support Modbus ASCII.
Find devices checks your Wi-Fi subnet, up to a /24, on ports you choose. Scan Unit IDs tries the unit numbers on a known host and port. Both only send FC 03 reads.
Switch the address notation to PLC 4xxxx and enter 40001. The app sends protocol address 0. The same setting offers 0-based and 1-based. How Modbus addressing works.
No. Find devices, Scan Unit IDs and Live monitoring send read function codes only. Writes go through Prepare write and Confirm write, and nothing else sends them.
No. Plan on the server running while the app is open on screen. The default port is 1502, and iOS doesn't guarantee port 502, so point your client at 1502.
Yes. Run the FieldKit server on a second iPhone or iPad, or start a Python simulator on your laptop. Three ways to test Modbus TCP without a PLC.
Modbus work needs only the local network, and iOS asks for Local Network permission on the first connection. The app uses the internet for crash reports and usage counts while those switches are on, and for feedback you choose to send.
Crash reports go to Sentry and anonymous usage counts to our own Aptabase server. Both switches start on, and you can turn each off in Settings. Neither includes hosts, IP addresses, profile names, register values or raw frames. Read the policy.
Not at the moment. FieldKit runs on iPhone and iPad with iOS 18 or later.
The app's interface is available in English, German, Brazilian Portuguese, Russian, Japanese, Korean, Simplified Chinese, and Traditional Chinese.
Reference articles with frames we captured from a real server, and three tools that run in your browser.