AgIsoStack++
A control-function-focused implementation of the major ISOBUS and J1939 protocols
|
A protocol that handles the ISO 11783-12 Diagnostic Protocol and some J1939 DMs. More...
#include "isobus/isobus/isobus_diagnostic_protocol.hpp"
#include "isobus/isobus/can_general_parameter_group_numbers.hpp"
#include "isobus/isobus/can_network_manager.hpp"
#include "isobus/isobus/can_parameter_group_number_request_protocol.hpp"
#include "isobus/isobus/can_stack_logger.hpp"
#include "isobus/utility/system_timing.hpp"
#include <algorithm>
Go to the source code of this file.
Namespaces | |
namespace | isobus |
This namespace encompasses all of the ISO11783 stack's functionality to reduce global namespace pollution. | |
A protocol that handles the ISO 11783-12 Diagnostic Protocol and some J1939 DMs.
This protocol manages many of the messages defined in ISO 11783-12 and a subset of the messages defined in SAE J1939-73. The ISO-11783 definition of some of these is based on the J1939 definition with some tweaks. You can select if you want the protocol to behave like J1939 by calling set_j1939_mode. One of the messages this protocol supports is the DM1 message. The DM1 is sent via BAM, which has some implications to your application, as only 1 BAM can be active at a time. This message is sent at 1 Hz. In ISOBUS mode, unlike in J1939, the message is discontinued when no DTCs are active to minimize bus load. Also, ISO-11783 does not utilize or support lamp status. Other messages this protocol supports include: DM2, DM3, DM11, DM13, DM22, software ID, and Product ID.
Definition in file isobus_diagnostic_protocol.cpp.