I am developing an IO module for an application and I am trying to make it J1939 complaint. The data required to control this module doesn't fit in with any of the pre defined messages so I'll be using proprietary messages.
The modules can provide a Heatbeat, Input status, output status, device temperature, current feedback per output channel.
Control of the module deals with output state per channel, PWM duty per channel.
For the heartbeat status, I planned on using the request message EA0100 requesting FF0100. The heartbeat would respond with FF0001 and i would add the module type and firmware revision to the 8 bytes of data in the response message
The other status information will be done the same way.
For the input status, I planned on using the request message EA0100 requesting FF0200. The 8 bytes of data would represent a binary signal for each input
I also planned on broadcasting the input state message anytime an input changed states.
does this look correct?
Also, when I want to control the specific outputs, I planned on using EF0100 as the message and the 8 bytes of data would specify the channel, output state and PWM signals
Am I on the right track? I'd love some guidance.