Appearance
Commissioning
Nothing about the genset is declared by hand: the gateway discovers it. What you do commission is the box's own identity on the MUXEN bus, and then — for a Fischer Panda — how the genset is allowed to start and stop on its own.
Everything below is run on the boat's Brain.
1. Wire it and check it lives
CAN 1 to the MUXEN bus, CAN 2 to the genset's J1939 bus, power on. The system LED must blink once a second. Anything else: see Common mistakes.
2. Find it on the bus
sh
muxen-uds -i can0 uid --scanA factory box has no instance number yet (InstanceNum = 255) and publishes nothing until it gets one. This scan finds it anyway.
3. Give the box its instance number
The box itself is one MUXEN device — its generic I/O — and it needs a number. The genset device is created later, by discovery.
sh
muxen-uds -i can0 uid --uid <the-box-uid> --instance 4 --preferred-function-code 17--preferred-function-code is not optional: once a genset has been discovered this box answers on two functions, and without it the tool does not know which of the two you are numbering.
Instance numbers run 0…62 and must be unique per function on the boat. Do this one box at a time — two unconfigured boxes on the bus at once collide on the parking address.
4. Watch the genset appear
Power up the genset and watch:
sh
mosquitto_sub -h 127.0.0.1 -t 'device/4/#' -vWithin a few seconds of the genset claiming its address, a generator device appears and starts publishing once a second. Its instance number is the genset's own J1939 instance, captured the first time the genset is seen and stored from then on.
If nothing appears, see Common mistakes — J1939 gateway — start with the bus speed and, on a v2, with the second-bus supply.
5. Check the number it took
sh
muxen-uds -i can0 scanFunction 4 is the generator function, and its instance must be unique on the boat. If the genset took a number already used by another generator, change it:
sh
muxen-uds -i can0 -F 4 -I <current> writeconfig --name InstanceNum --value 2 --reboot6. Bind the genset to a battery zone
This step matters only for a Fischer Panda; a Cummins Onan is read only and ignores all of it.
BindToParc tells the gateway which battery zone the genset charges. Until it is set, the gateway has no state of charge to work from and runs the genset stand-alone: monitoring and manual start/stop work, automatic start does not.
Left at its factory value, BindToParc is latched to stand-alone the first time the genset speaks. To get automatic start you must write the zone number explicitly, after the genset has been discovered:
sh
muxen-uds -i can0 -F 4 -I <instance> writeconfig --name BindToParc --value 1 --reboot7. Set the automatic start thresholds
Only meaningful once step 7 is done.
sh
muxen-uds -i can0 -F 4 -I <instance> readconfig| Parameter | What it decides |
|---|---|
SocToStart | below this state of charge, the genset is started |
MaxCurrentPercent | share of the bank's maximum discharge current above which the genset is started to assist |
SocToStopAfterCurrentHelp | state of charge above which an assist run is allowed to end |
ChargeCurrentToStop | charge current below which a full bank is considered done charging |
Defaults and units are in Reference — J1939 gateway.
8. Try it
sh
mosquitto_pub -h 127.0.0.1 -t 'device/4/<instance>/command' \
-m '{"startRequest":true,"ForceCmd":true}'ForceCmd starts the genset regardless of the battery state; without it the gateway refuses a start it knows it would have to cut off immediately. Watch device/4/<instance>/life go through starting to on.
9. Keep a copy
sh
muxen-uds -i can0 -F 4 -I <instance> readconfig --save-as-csv genset.csv
muxen-uds -i can0 -F 17 -I <io-instance> readconfig --save-as-csv cancan-io.csv