# Module Addressing
The J1939 source address is configured with the `ADR0` and `ADR1` pins.
| ADR0 | ADR1 | Address |
| ------ | ------ | --------- |
| N/C | N/C | 80 (0x50) |
| Ground | N/C | 81 (0x51) |
| N/C | Ground | 82 (0x52) |
| Ground | Ground | 83 (0x53) |
# Overcurrent Blanking Time
To prevent transients from causing outputs to turn off due to overcurrent, a blanking time is added which allows outputs to briefly stay in overcurrent. If the output stays above the current limit for this duration, the output is turned off.
![[overcurrent-blanking.svg]]
# Coil Economising
The current required to actuate coil devices is much more than is required to hold them open. The coil economisation feature automatically reduces the output PWM duty to a configure level after a configured delay to reduce power usage. Typically more than 50% power savings can be had using this feature.
The economisation delay can be set from 10ms to 2.5s and the PWM duty from 1% to 100%. Setting the delay to zero disables the economisation feature.
By setting the duty cycle to 0%, this feature can also be used to generate output pulses with predetermined durations.
![[coil-economising.svg]]
# Fail Safe Heartbeat
Outputs can be configured with a timeout to turn off unless the output state is regularly updated.
> [!warning]
> The fail safe feature is not a substitute for functional safety.
The heartbeat interval can be set from 100ms to 25s. Setting the interval to zero disables the feature for that channel.
# Analog Inputs
Each analog input uses an RC low-pass filter with a corner frequency of 7.2 Hz to prevent aliasing of the signal. The input is sampled at 100Hz with an exponential smoothing filter with an alpha of 0.4 applied to the result.
The processed analog readings are transmitted at a 100ms interval over the CAN interface.
# Bus Voltage/Current Monitoring
Both the input voltage and total input current are measured by the PDM. These readings are made sent in the power status CAN frame.
# Internal Temperature Measurement
The package temperature of the microcontroller is sampled and sent in the power status CAN frame. This provides an approximation of the board substrate temperature.