summaryrefslogtreecommitdiffstats
path: root/src/can
AgeCommit message (Collapse)AuthorFilesLines
2017-03-16Improve: DEBUG messages.Romain Forlot1-1/+1
Change-Id: Ib52f22e7bc5bc5d14edbb31ad6006caee23c4098 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Make decoder systematic use of openxc-utils to buildRomain Forlot1-12/+5
its objects. We don't want random initialization on boolean value of openxc_DynamicField (has_string, has_numeric...) else we have a risk that the final decoded and convert into json object will not be the good one. Change-Id: If4d69e6ace615fd8e097ba9a04e5482c82b9a7db Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Implement signals states decoder and change mapRomain Forlot4-23/+26
to a vector. Change-Id: I185724f2966fecac6659d401751da56d2886ed9d Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Search into generic_name as well as name + prefix, butRomain Forlot1-1/+1
always register generic_name into subscribed_signals. It will be the output on event and make easier to find the subscribed signals into the map without prefix. Change-Id: Iaf0060bedb54003b0c77121afd2bd35d832dba25 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Adding/Fix classes constructors to make them correspondRomain Forlot2-0/+13
to the ones generated. Change-Id: I6b0b778f59ac52fe66e36a327f60ae58550ac271 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Separation of classes in the same file.Romain Forlot4-64/+86
Change-Id: Ifc690cc27028659ffaf5a8a2e9caabc1e0718fd4 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Move member from obd2_signals_t class toRomain Forlot1-1/+1
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>
2017-03-16Get decoding diagnostic request from decoding thread of can_bus_tRomain Forlot4-31/+101
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>
2017-03-16Change the way to check signal type making prefix_Romain Forlot2-1/+3
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>
2017-03-16Fix: set to microsecond frequency check of diag requestRomain Forlot1-5/+0
Change-Id: I871ff68afd7f398d4c7d3a550c8926c1f7e67cb3 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16fix: test for opened CAN socket.Romain Forlot1-5/+5
Change-Id: If9e3a0511c7ccc703817069a56bd38d7e64ebb09 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Default value about thread state set at false.Romain Forlot3-13/+4
Change-Id: I1934aa4d9a9d945a32d8e369cf0f36b1e06d3f34 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Fix: wrong location to make the increment because we useRomain Forlot1-1/+1
the device after so... This was total crap ! Change-Id: I9bb43c3f75c613a5927f342b3c574871c0eb65bb Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Make diagnostic manager initialization processus.Romain Forlot2-8/+8
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>
2017-03-16We doesn't modify member once getted, we can use const returnRomain Forlot2-4/+10
and const method. Change-Id: I0f7465af74b1c9a546af45a0d1eea33c93537e0c Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Manage prefix on CAN and OBD2 prefix. Searching signalsRomain Forlot3-2/+16
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>
2017-03-16Instead of a global pointer, config is now a Singleton.Romain Forlot1-2/+2
Change-Id: I0cfc34f330c531ba5f070542a1cb723be4bcc70a Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Also initialize the id_ renamed address_ member. This memberRomain Forlot3-7/+6
is mapped to the address node from json Change-Id: Ied13067723552c2396337a9f85fe5e1418ba8caf Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Adding needed getter for diagnostic manager. UsefulRomain Forlot2-0/+7
to determine if both object use the same CAN bus device Change-Id: I97dbf807198a420c305c8fbbd2cb4bfcdda4c294 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Fix: include statement with wrong path.Romain Forlot5-14/+14
And minor fixes. Change-Id: Ica55c0708edd86d0aa37e7117b3c3fad551a0167 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16separation to a new file of can_message_set_tLoïc Collignon3-21/+84
Change-Id: If21021d8905d40d443d4432faeb38f8a3275697c Signed-off-by: Loïc Collignon <loic.collignon@iot.bzh>
2017-03-16Change FrequencyClock struct to class and rename it.Romain Forlot3-4/+4
Change-Id: I1076ad90e14815f3d0ab71ca9fa359d1d3c1748d Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Fix: wrong tested variable for socket.Romain Forlot1-2/+3
Change-Id: Ice2325441474f1a075140e13dfffa0261106dff7 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16C Header firstRomain Forlot1-1/+1
Change-Id: Ief8c66e99c689a362b645ad3b918d8b342ada59a Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Add necessary to be able to initialize diagnostic manager shims.Romain Forlot2-6/+6
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>
2017-03-16Fix: bugs in class due to the wrapping of C socketRomain Forlot2-7/+8
into a class. Added missing include and adjust methods signature. Change-Id: Id016b452e0b641a14482c288e4713acae941ee1d Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16typoRomain Forlot1-1/+1
Change-Id: I62d9e858409b464dd69ebfae76ca73097fae560e Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Fix: include path (where I think to fix them...)Romain Forlot1-6/+7
Change-Id: Ib44693efc9347fc4fdf40a1748725d5191303199 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Move some functions to configuration class.Romain Forlot2-25/+0
Change-Id: I87b1b6961206ae3848cf6aca367698218fe1523e Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Create getter/setter needed for can_signal_t class.Romain Forlot3-12/+117
Change-Id: I8253fcbe7edb6673d9f6bcf85d6109800a4cf6e8 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Fix: used new created classes.Romain Forlot1-1/+1
Change-Id: Ib0188ac952f64b3bc2203c0310a21de380c75854 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Added a static method to get used by Diagnostic managerRomain Forlot2-0/+32
that respect the requested signature. Change-Id: Id10215597d65ecaf280fe6252d78bc74a306958e Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Fix: wrong socket variable called.Romain Forlot1-1/+1
Change-Id: Ib09b084e7202d184abf73cf92fea4afbcf4acf47 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Typo and formating.Romain Forlot4-14/+13
Change-Id: I864a2fe7f974b0f2bf5000f55c2dc71ecf32a314 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Constructor making mandatory to pass a can_bus_dev_tRomain Forlot2-3/+3
instance to initialize it as it is reference. Change-Id: I0261a5e2fdca5a84fd736d7ceae837ff9156b935 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Misplaced test of rtr_flag bool and length assignationRomain Forlot1-5/+2
Mini simplification of the method... More incoming. Change-Id: I2e7c2c5226e33265591acc6c8bbbe5f5f670db18 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Fix: method to allocate a new can_message_t objectRomain Forlot2-69/+78
from a canfd_frame. A new constructor added ad-hoc. Change-Id: Id6b909666105da0c4885351db9291aa430d138f0 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Again change enum name and add "_t" suffix to getRomain Forlot2-19/+19
syntax coloration into IDE... Neat, isn't it ! Change-Id: Ieee2618336be80ddf97ccaa29bc83098a6463c56 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Use the new created class and their respectivesRomain Forlot1-7/+9
methods to get their attributes. Change-Id: Ib96031388356541615cd2c428d3ad1a73c79e215 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Use static method now as they are all static. No needRomain Forlot1-3/+1
to instanciate an object to decode now. Change-Id: Id9bf378642ad66b7b4f39d909678ecc5ebb756cc Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Change all old struct name to the new class.Romain Forlot6-32/+33
Change-Id: I8aa4430117c401182ef458a06a2aeb08957db1bb Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Forward declaration needed instead of include theRomain Forlot1-1/+2
whole file. Lighter. Change-Id: I14af5868679e5c65bda9a4395b040cc28af04059 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Change CanMessageFormat name to make itRomain Forlot2-17/+17
as the other type. Change-Id: I4b3ae3998175613458492a0f02cce06a576cbfa8 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Clean old C struct, now as C++ classRomain Forlot2-47/+22
Change-Id: Iba4c4a47b140c53d766c348064857069feefdb19 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Added missing method of the class.Romain Forlot1-20/+123
Change-Id: Ic03ec222e69efc7adde4680dc5612896eac562fe Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Make all class function as static to be accessibleRomain Forlot1-20/+18
without instance. Change-Id: I80fcf55010b81e6f3af6892adf2c351d502f50dd Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Poco-ification of CanSignal struct as can_signal_t classRomain Forlot1-93/+35
Change-Id: I1239b862b255efaefc459d4f9d0a93c6be6ba2cb Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Fix: declaration and implementation of needed methodsRomain Forlot2-1/+11
under their respective class as they were standalone before that. Change-Id: I3ca6fe68bb40f883106ddbe07db8f2dc7d4f618b Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-03-16Cleaning old can_bus_dev_t now implementedRomain Forlot4-162/+30
separatly Change-Id: I4529100f118afe25aee747d36a77dc5b533878a5 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh> Conflicts: src/can/can-bus.hpp
2017-03-16Make convert method static to get called at the returnRomain Forlot2-153/+80
statement of read. Also clean unsafe function, that can't be called separatly because they need to get called in a certain order. Change-Id: I5670f0cd1c0fdea4f228045b9124ecd60097ebb2 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>