Age | Commit message (Collapse) | Author | Files | Lines |
|
Diagnostic request must have a name to be subscribed. Else, we
can't decode or event push for now.
Change-Id: I0901a71da31320d8598e512614437aceb552713d
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I787cd94b338c458fda0259bd2bcf47a1fa85cc3f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Added decoder and callback member that will be set by generator and taken
at submission to be used later, storing them into an active diagnostic
request instance, when response CAN message comes in.
Change-Id: I9ded05de3bb28ec55e4e007d72d0e1924141a6a6
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change the method to static 'cause it will be call from outside of the class.
Change-Id: I88dcd845559fac7892cd489cd6e8198c143ee2a8
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
A CAN message will be considered as a Diagnostic response when its
arbitration ID is between standardized 0x7E8 and 0x7EF.
Checking which request belong to that response will done in later methods
Change-Id: I7a093edf44b62a4552b90fe3d8935f94dc677cf4
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Main reason for that behavior revert is because of generator that rely
on CAN device name and so we have point on these object by specify the
device name.
Instead of shared pointer between objects, instead binding is based on
device name. With a device name you can get the shared pointer on it using
new static method from can_bus_t object.
Change-Id: I331e0ad8d03c88a15c697d12a9fce3699b0cd962
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
can_signal_t and active_diagnostic_message return name
with prefix using this method. If you need without it then
use get_generic_name.
Change-Id: I6b153eb20214049c10619d39fcc65c8641a9e32f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I9a0726ab41c4801e7a5305731ce78ddd03aff9e1
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I752db65cb3fbca4d33b932f3a0c597adfaf79903
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Implements event_loop logic.
Change-Id: Ia5ac32820a0421bbcb69d8b0dd3bea2b7b582444
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Control size manually, don't rely on STL container.
Change-Id: Iede2f9b233c5b8a6dc77c9b146ffc92da8e7a989
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I341d29d217b2a92652e9985d8c93829e0211bddc
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Regular events is made launch a timerfd event from binder event loop and then
in the event handler, reschedule next launch in the future based upon the
signal frequency.
Change-Id: I0b1e84eb2135474f4bcc5ee256ba513eea4035a6
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
while adding the request. It is more logic to make that here
than in the subscription operation.
Change-Id: I19b29bc11c5fb6e5828a0bf189fac1333b0199ed
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
between diagnostic manager vector.
Change-Id: I9ea196b5dc5bbf2dd4509080a9a58d754fa42b6c
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
active_diagnostic_request_t (adr)class. It's more logical
to have them here as call about incoming diagnostic CAN
messages are made against adr class not obd2_signal_t that
it's a subset of diagnostic messages.
It's made to handle obd2 requests as well as normal UDS
diagnostic request for constructor proprietary diagnostic
signals.
Change-Id: I96c714640d6ecfa25dfc9942974057c1797eb0e1
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Decoding divided in 2 subfunctions dedicated to decode either
pure CAN messages or diagnostic (obd2) message. About now,
a diagnostic request has a name then it will be pushed
on the event_queue as a SimpleMessage. Without name full
details of diagnostic response will be pushed as diagnostic
response. This behavior follows the one from OpenXC.
Change-Id: I255f3f6487fa9511ea47c74606014995a7b0f720
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
attribute as static with a static class method which
will check that the beginning of string argument
matches the prefix.
Change-Id: Idb129c7179391da61447996560957b2791aa9383
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I61cca1117a987280383538a0b0e307429bee4fc3
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
method to retrieve the active_diagnostic_request.
Change-Id: Icfba704e40be211021dc81ec18fa3602d736afdb
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
When subscribed, the signal is added to recurring request list
of diagnostic manager and an event is added to the systemd
event loop with timer set using frequency parameter from the
requested signal.
Change-Id: I4d604c498047d7744c090b7f03fce0f2b427fd01
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
It is initiliazed with by default the first CAN bus
device in the CAN bus device list from CAN bus manager.
The object is instancied at configuration_t object first
invokation and after all CAN buses has been initialized then
the diag manager is initialized too.
Change-Id: I4894f2c62f575676c34efec3608b97de8c5326e1
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
and const method.
Change-Id: I0f7465af74b1c9a546af45a0d1eea33c93537e0c
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
is made on generic_name (without prefix) and returned
vector of string is filled with name with prefix. Then
you can process on them based upon their name differently.
OBD2 signals will generated recurring request on diagnostic
manager and decoding will not be handled the same way too.
Change-Id: I2c5239ef49661941a0a748debe0bd536b2954b3a
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I0cfc34f330c531ba5f070542a1cb723be4bcc70a
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I8a518540b54552d60c6fd1054a0fc41dda5400b4
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Fix subsequents bugs into the other depending class
diagnostic manager
Change-Id: I8920c489fc15a61a36ff29d58aab59c2e6388f85
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Needed overload of operator and constructor set for
active_diagnostic_message_t class. Without we can't make
the basic operation needed by the manager.
Get rid of original raw pointer on "entry" which avoid some
tests.
It miss the acceptance filters implementations for now.
Change-Id: I1ca61ff843c13255af6d9a60ce72a8b8bc9d1c18
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
And minor fixes.
Change-Id: Ica55c0708edd86d0aa37e7117b3c3fad551a0167
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
objects initialized that can be grabed after at runtime.
Don't know the impact on performance for now about maximum
limit.
Change-Id: I220614d479b8254ae0efda66380e96434bcbfbb2
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
We have to conform to functions signatures from isotp-c
to have it working.
Change-Id: I429def66f54e53277e87aa99e66292cdb47c1c5f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
a default constructor.
It is needed to initialize configuration_t correctly as
it allocate a diagnostic manager but do not initialize it
unless it is needed later. There is no need to initialize it
if we do not send and receive diagnostic requests.
Change-Id: I3d52d1ea92454e7b065479a2f0dd54a291ddd991
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: Ie9159b039e468e511b497884816453093048aa80
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: Ib44693efc9347fc4fdf40a1748725d5191303199
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: If44be94dfd847089d494088d33f7b6c7f5d9098e
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: Ie060009315c99919271ac706fdc1ab384e3d7218
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I7d7a96b45323f698e884c4db289370eec199d990
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I87b1b6961206ae3848cf6aca367698218fe1523e
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I864a2fe7f974b0f2bf5000f55c2dc71ecf32a314
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: Idbe268d07ebf53a63c9543d9cca94ded34a29731
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I1f16a7acb32407420b2c5f5deb5b815829b0b610
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: Ib66e49960a348896020fba56f7d98910623af83f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: Ia635a7483e2fcda3b98fd3d3b3f7e996d26926d0
Signed-off-by: Loïc Collignon <loic.collignon@iot.bzh>
|
|
that will be used by the binding to access generated
elements. It will hold generated structure/objects and
make a resume to the binding configuration.
Idea is to have an object that can be inherited
in the generated code to extend its functionnalities
or change some of its behoviors.
Change-Id: If2ce5cbe2eb98a74a8e3f13000ee02855674216f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
by Diagnostic manager in its queue and list.
Change-Id: I565d06634a55b99cc97f36ec6d695b3b0bf21dca
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I74042051346a0f0f4de7152e2a668c041edaebde
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
It will hold communication through uds-c lib allowing
to communication with diagnostic protocol obd2. It is
attached to can_bus_dev_t class 'cause it must regularly
send CAN message through it.
Change-Id: I2d9d8dfaca10e9865bf82b0ae83e65490ca982f8
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
member function from class obd2_signals class.
Change-Id: I5a0f1cfd0c2fb9374cc3928861ca4e8a52911942
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
temporarly to get compiled project.
Change-Id: I7235f503c42a3e31d09094c42882b74e5e809493
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I6643333cfcc8bea120496c53f1cd3b8596e33398
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|