01
Install the application
Download the DMG for an Apple Silicon Mac running macOS 14 or later. Open it and drag mmcom into Applications. The app is Developer ID signed and notarized by Apple. To explore without equipment, select Demo, connect and open Registers.
02
Connect over USB / RS-485
Plug in an adapter with automatic direction control. Select USB · RS-485, refresh the port list and choose your /dev/cu.* port. Baud rate, data bits, parity and stop bits must match the device. If no port appears, check the adapter driver. Follow the equipment documentation for A/B wiring, the common wire and termination.
03
Read your first register
Open Registers, set the Unit ID and choose function 03 for Holding Registers or 04 for Input Registers. Use the manufacturer's register map for the address and count. Select zero-based or one-based addressing explicitly: a documented register 40001 often means protocol address 0. Run the read and open the values table. RTU uses CRC-16/Modbus.
04
Find unknown serial settings
Open Device discovery in the USB · RS-485 panel. Choose an address range and allowed UART settings. mmcom scans addresses 1–247 and confirms a match with two valid CRC responses. Discovery cannot find every device: the function, register and timeout matter. Stop other masters on the bus before scanning.
05
Use a network gateway
For Modbus TCP, enter the server IP, port and Unit ID. The app adds MBAP, without CRC. For a transparent RS-485 gateway, choose raw TCP and send RTU frames with CRC if required by the gateway. Configure baud rate and parity on the gateway. iPhone supports the network path only; no public mobile build is available yet.
06
Save your results
Inspect timestamped TX/RX. Switch between HEX, DEC and text, filter the log and export it to TXT before quitting: only the latest 2,000 events are retained in memory. Check the device map before writing; function 06 changes one register and 16 changes several. Polling performs reads, and writes are not retried automatically.