MBMap Registry
  1. Devices
  2. AEPH do Brasil
  3. HORUS

AEPH do Brasil HORUS Modbus register map

Two-channel weighing indicator and transmitter: displayed weight with status (gross or net, stable, negative, overload), tare, and remote tare, zero and print commands

  • Official
  • 14 registers
  • Modbus TCP and RTU
  • Revision 1 · 2026-11-10

Official: Written from the manufacturer's documentation, but not tested on a device yet. Check the map against the manufacturer's documentation before you write to a live device. Tested it? Report a test.

Communication

Protocol
Modbus TCP and RTU
Unit ID
1
TCP port
502
Serial
9600 8N1 · 9600 baud, 8 data bits, none parity, 1 stop bit
Byte / word order
ABCD · bytes big-endian, words high first
Addresses
0-based

Connection values are defaults: the device may be configured differently.

Map

Registers
14 holding registers
Groups
4
Translation tables
1
Revision
1 · 2026-11-10
Added
()
File
maps/aeph/horus.mbmap.json · 5 KB · history
SHA-256
76feb2b4cda5bd0a684b07b7a08afbd37f6cc8050d140faa1da4dc3517f1ec96
Manufacturer
aephdobrasil.com.br

Sources and notes

  • Manual Horus · version 08/25, 2025-08
    chapters 13-15 (Modbus RTU protocol); linked in issue #150

Source: AEPH do Brasil Horus manual, chapters 13-15 (Modbus RTU protocol)

  • Modbus RTU (slave); set PR = rtU on the indicator. FC03 reads and FC06 writes holding registers. Addresses are 0-based, as sent on the wire.
  • The manual allows 9600 to 115200 bit/s, 8 data bits, no parity and 1 or 2 stop bits (set in the serial menu). It gives no default: 9600 and 1 stop bit are placeholders. The address (END) is 1 to 99.
  • The device also offers Modbus TCP over Ethernet or Wi-Fi (port configurable, 502 as an example). The manual does not say that the register table is the same for TCP; it is assumed here.
  • The device has two load-cell channels, but the manual lists registers for channel 1 only.
  • Weight and tare are 17-bit values split over two registers: the high byte of the first register holds the status (or the decimal places), its lowest bit is bit 16 of the value, and the second register holds bits 0-15. They are given here as separate registers because the format has no type for this layout.
  • The register table calls the lower register of weight and tare the 'least significant' one, but the example frames put the status byte and bit 16 in the first register (0x000A, 0x000C); this map follows the frames.
  • Only the weight, tare, remote command, Modbus address and stop bit registers are mapped. The table also lists calibration, filter, zero, display and other configuration registers whose value encoding the manual does not describe, so they are left out.
  • The command values follow the manual's example frames (1 = tare, 2 = zero, 3 = clear tare, 4 = print); the text next to the frames disagrees in places.
  • Written from the manual; this map has not been tested on a device.
AreaAddressNameTypeAccessUnitScaleDescription
HR 11 uint16 R Bits 0-15 of the displayed weight; bit 16 is in the first register. Weight = bit 16 x 65536 + this value, with the decimal point and sign given by the status
HR 10 bool bit 0 R
HR 10 uint16 bits 8–10 R
HR 10 bool bit 11 R
HR 10 bool bit 12 R
HR 10 bool bit 13 R
HR 10 bool bit 14 R
HR 10 bool bit 15 R
HR 13 uint16 R Bits 0-15 of the tare; bit 16 is in the first register
HR 12 bool bit 0 R
HR 12 uint16 bits 8–10 R
HR 2 uint16 W
HR 0 uint16 RW Modbus address of the device (channel 1)
HR 5 uint16 RW Stop bit setting of channel 1; the manual does not list the values

Help improve this map