Appearance
Common mistakes
This chapter covers what goes wrong on any box in this line, whatever its application. Problems specific to one kind of equipment are in that application's own FAQ.
Read the LED first
The box has one LED and it is worth ten minutes of bus tracing.
| The LED | The box is | What to do |
|---|---|---|
| blinking once a second, evenly | running normally | the fault is elsewhere — bus, settings, channel wiring, or the equipment |
| flashing about two and a half times a second for two seconds, then back to normal | answering a locate request | nothing — someone asked this box to identify itself |
| steady on, or steady off, with the box powered | not running its application: stuck during startup, or still in the bootloader | power-cycle it once. If it comes back the same way, note the product ID and software version and report it — it does not fix itself |
| off, with no power at the box | not powered | check the supply |
There is no separate blink code for a firmware problem. A box that cannot start its firmware simply never starts blinking.
The box does not appear on the bus at all
| Likely cause | How to tell | Fix |
|---|---|---|
| It has never been given an instance number | a factory box ships with InstanceNum = 255, which means "not addressed" — it answers a UID scan but publishes nothing | muxen-uds -i can0 uid --scan, then give it an instance number by UID |
| The MUXEN bus is not terminated correctly | 60 Ω across a powered-down bus; anything near 120 Ω or 40 Ω is wrong | one 120 Ω at each physical end, nowhere else |
| No power, or the CAN connector not wired | LED off | check supply and the CAN connector |
| The CAN wires are on a serial channel | this box has one CAN connector and four serial connectors, and they are not the same thing | move the CAN pair to the CAN connector |
A box with no instance number is not broken and does not need reprogramming. It is waiting to be told who it is. It still answers a UID scan, and the scan is how you reach it:
sh
muxen-uds -i can0 uid --scanmuxen-uds -i can0 scan lists what is already publishing on the bus; uid --scan also finds the boxes that are not.
Two boxes fight over the same identity
Two devices with the same function and the same instance number on one bus produce values that jump between two sources, alarms that clear themselves, commands that reach the wrong box. It happens whenever a second gateway is added with the settings of the first, or a spare box is installed without being reconfigured.
Remember that one box publishes several devices: its own generic I/O, plus one device per serial channel that carries something. Every one of them needs its own instance number, and they are configured independently.
muxen-uds -i can0 uid --scan reports addressing collisions. Each function + instance pair must appear once.
If you cannot tell two identical boxes apart in a locker, ask one of them to flash:
sh
muxen-uds -i can0 -d <address> locateNothing arrives from the equipment on a channel
| Likely cause | Fix |
|---|---|
| Wrong firmware for that equipment | check ProductId against the catalogue in CAN / serial gateways — Overview |
| Speed or duplex mode wrong | both are fixed by the firmware, not settable on the board. If the equipment is configurable, it must be set to what the firmware uses — see The hardware and the application manual |
| The equipment is on the wrong channel | channels are numbered 1 to 4 and each application decides what it expects on each one |
| The two wires are swapped | on a two-wire Modbus segment this is silent — nothing answers, nothing complains |
| The segment is not terminated, or terminated twice | one termination at each physical end; the gateway supplies its own end when the firmware turns it on |
| The equipment's own address is not what the application expects | see the application manual |
| The equipment is off, asleep, or in a mode where it says nothing | power it up and make it do something |
One channel going quiet does not affect the other three. If all four went quiet at once, look at the box — power, firmware, LED — not at the equipment.
The relay or the analog input does nothing
| Symptom | Cause | Fix |
|---|---|---|
| the box's own I/O never appears on the bus | EnGenIo is 0 by default — the generic I/O device is off until it is enabled | set EnGenIo to 1, give the I/O device an instance number, and restart the box |
| the analog input reads 0 mV | nothing is wired to it, or the sensor has no supply | check the sensor and its supply |
| the dry-contact inputs never activate | there are none — see The hardware | use the relay and the analog input, or a separate MUXEN I/O device |
| the second relay does nothing | there is only one relay | — |
A setting I changed has no effect
Every parameter takes effect only after a restart. Writing a setting stores it in the box's memory; the box reads its settings once, when it starts, and works from that copy until it is restarted. Nothing rejects the write, nothing warns you, and reading the parameter back shows the new value — because the read comes from the stored copy, not from the running one. The box is simply still running on the old value.
Always write with --reboot:
sh
muxen-uds -i can0 -d <address> writeconfig --name <name> --value <value> --rebootIf you changed several settings without it, one restart at the end applies them all.
After a factory reset, the box has disappeared again
The factory-reset routine restores every parameter to its default. All the pairing, all the per-channel configuration, all the application settings are gone. The instance number can be kept or reset depending on how the routine is called — and if it was reset, the box goes back to 255 and stops publishing.
There is no undo. Read the configuration out and keep it before resetting anything:
sh
muxen-uds -i can0 -d <address> readconfigThe firmware update failed
Nothing is damaged. The box is still running the firmware it had before — that is by design, see Loading and updating a firmware. The usual causes, in order: an image built for another board (5.x versus 6.x, or -MODBUS versus -SERIAL-V2), a bus busy or interrupted long enough for the transfer to time out, or simply the wrong product. Check the hardware ID and the software version of the box, pick the matching image, quiet the bus, retry.
