Romain Forlot [Tue, 5 Nov 2019 14:37:47 +0000 (15:37 +0100)]
subscription: Optimizing opening sockets
Also review some aligment and make more space between bool ops
Bug-AGL: SPEC-2988
Change-Id: I613f294a630caf48eea7bb0c7b9c36b07cbacfbf
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 7 Jan 2020 15:29:23 +0000 (16:29 +0100)]
socketcan-j1939: format how to define_opt()
Bug-AGL: SPEC-2932
Change-Id: Ifec401451dc541b71dc2f98d25f5c953f1bcf532
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 5 Nov 2019 12:55:19 +0000 (13:55 +0100)]
can: clean and format
Little optimization in create_rx_filter_can function and
make format coherent on bit operations.
Bug-AGL: SPEC-2988
Change-Id: Ic9c53ba4c937604bbf3500ee89c7b5a5dbca7cfd
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 5 Nov 2019 09:14:35 +0000 (10:14 +0100)]
can: Fix receiving and sending extended CAN frames
Bug-AGL: SPEC-2779
Change-Id: I672450b51b46082b6a913bef2d6e27d64c49e6fc
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Mon, 4 Nov 2019 16:17:27 +0000 (17:17 +0100)]
can: Remove extended flags
It doesn't matters to know whether or not a can signal is
using standard or extended CAN ID because this could be
retrieved using bit mask on the CAN ID when receiving and
sending.
Bug-AGL: SPEC-2988
Change-Id: Id96c576045bf087df51beb011742ad631336f814
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Mon, 4 Nov 2019 12:21:08 +0000 (13:21 +0100)]
cmake: Remove build warnings
Remove unused flag with C++.
Bug-AGL: SPEC-2988
Change-Id: I85376914f64b9dfe9015a6439185ad6a53cdb117
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Wed, 6 Nov 2019 10:31:50 +0000 (11:31 +0100)]
j1939: Following kernel updates
Compatatibility for latest kernel/glibc version
See: https://github.com/torvalds/linux/commit/
0768e17073dc527ccd18ed5f96ce85f9985e9115
Follow j1939 integration in the kernel which remove SO_J1939_RECV_OWN
Bug-AGL: SPEC-2932
Change-Id: Id01e92330582da299af675676987cd667272e2c5
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Scott Murray [Tue, 3 Dec 2019 21:59:24 +0000 (16:59 -0500)]
Change example message 0x3D9 back to non-FD
Update agl-vcar example definition to change message 0x3D9 back to
regular CAN so it will be usable on non-FD capable hardware again.
Bug-AGL: SPEC-3012
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: I74064c5a8f4111f8f774104d27b86c8f15451539
(cherry picked from commit
12e75ea716e1b5054be0228e2859e14a11be622a)
Scott Murray [Tue, 3 Dec 2019 22:17:07 +0000 (17:17 -0500)]
Fix filter bitmask generation
Fix filter bitmask generation in encoder_t::encode_data; the mask
bits need to be left-aligned in each byte, not right-aligned.
Bug-AGL: SPEC-3013
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: Ie084f81e3d8c06e69b5bb7562055187395099ac7
Scott Murray [Tue, 3 Dec 2019 21:07:49 +0000 (16:07 -0500)]
Update steering wheel LIN message definition
The steering wheel LIN message does not work in low-can after it has
been updated to include commit "Update function rx_filter_can for
multi frame prevision." (
59bffa4 in master,
a41ee0d in halibut), due
to the length value now being required in the message definition.
The length has been added to the definition for agl-vcar and the
application-generated.cpp files regenerated. As well, the new J1939
and FD flags have been added to the message definition for
consistency.
Bug-AGL: SPEC-2951
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: Ice079268827dfbb2bf2c79b6c5e897dcab8fc433
Scott Murray [Wed, 13 Nov 2019 05:37:23 +0000 (00:37 -0500)]
Add steering wheel LIN message signal definitions
Add signal definitions for the button status information in the
steering wheel demo LIN message.
Bug-AGL: SPEC-2951
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: Id4909161f8f159858a3d29e310a3b43a787f2d03
Li Xiaoming [Fri, 30 Aug 2019 01:45:56 +0000 (09:45 +0800)]
refactor(config.xml.in):Replace required api with required binding
Appfw docs:
"required-api local": OBSOLETE SINCE FF (AGL6), PROVIDED FOR
COMPATIBILITY.Use the feature urn:AGL:widget:required-binding instead.
Bug-AGL: SPEC-2781
Change-Id: I9627f1c59d89f9687c09a41a3bedf1c56bb90f59
Signed-off-by: Li Xiaoming <lixm.fnst@cn.fujitsu.com>
Arthur Guyader [Wed, 28 Aug 2019 09:34:00 +0000 (11:34 +0200)]
Update documentation
Bug-AGL : SPEC-2779
Change-Id: I461f7e32322faba7e822791ff2e3851039e03548
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Tue, 27 Aug 2019 09:51:26 +0000 (11:51 +0200)]
Remove file socketcan-j1939 that was not removed before
Bug-AGL : SPEC-2780
Change-Id: I4ddf9389faffebe0334b0004b69bb7336277c29d
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Thu, 29 Aug 2019 10:46:13 +0000 (12:46 +0200)]
Remove in function convert_from_addr, the variable flags was not used
Bug-AGL : SPEC-2780
Change-Id: Ib31a32565c3bc38ea039003bd924a43318fb7c4e
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Mon, 26 Aug 2019 13:49:37 +0000 (15:49 +0200)]
Remove in function rx_filter_can, the variable val was not used
Bug-AGL : SPEC-2780
Change-Id: Ifce6e67fd55699d088952b0f722694d211ec7398
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Tue, 27 Aug 2019 13:40:55 +0000 (15:40 +0200)]
Add new decoders bytes for signal of long size
This commit adds the decoder bytes. It allows to
return a sequence of bytes in hexadecimal form.
Bug-AGL : SPEC-2780
Change-Id: I27180774f044c48a9d7baa2739b15a2e85b8b2e2
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Tue, 27 Aug 2019 09:41:57 +0000 (11:41 +0200)]
Change signature of decoders
This commit changes the signature of decoders. It is
now necessary to specify the version of the signals
so that the low-can-generator generates the associated
wrapper and not need to modify the decoder already
developed.
Bug-AGL : SPEC-2780
Change-Id: I044b1a3a6bacb9fc59bd6d3f77a1dbc437a3aa86
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Tue, 27 Aug 2019 12:48:29 +0000 (14:48 +0200)]
Add some typedef to reduce the size of the lines
Bug-AGL : SPEC-2779
Change-Id: Iebcf7492133cd7789d301593ff999b24ae10a054
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Wed, 28 Aug 2019 08:36:40 +0000 (10:36 +0200)]
Change vector to list to allow to remove signal.
This commit allows to remove signals. We need that because
subscription to an iso tp message needs to be individual.
Bug-AGL : SPEC-2779
Change-Id: I1d6410ebfc8ea82d33addf1bb828d9cd810b006a
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Tue, 27 Aug 2019 12:45:58 +0000 (14:45 +0200)]
Update bit position and bit size in signal
It's necessary to change the size of attributes
to manage multi packet signal.
Bug-AGL : SPEC-2779
Change-Id: If211c218ffa5a2e81ccfb32d3a5eeae0267e8f74
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Tue, 27 Aug 2019 12:44:48 +0000 (14:44 +0200)]
Add feature ISO TP (multi frames and peer to peer)
This commit adds the ISO TP feature. The ISO TP protocol
allows to communicate between two ECU. The protocol
allows multi packets management.
Bug-AGL : SPEC-2779
Change-Id: Ic222615b547f28e926930e6c1dea2c0265055afd
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Tue, 27 Aug 2019 12:43:08 +0000 (14:43 +0200)]
Replace all enum types with masks
This commit allows to change all enum types by masks.
Now to implement new protocol you don't need to add
more attribute in class. All can be contained in
the flags field.
Bug-AGL : SPEC-2779
Change-Id: I814d0052139be5d5efefc9ff1b4b558f46b85e90
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Mon, 26 Aug 2019 13:46:08 +0000 (15:46 +0200)]
Update function tx_send for multi frame prevision
Bug-AGL : SPEC-2779
Change-Id: Ib0b04fe3648c5b83c23327431e21161b6b2489b6
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Wed, 14 Aug 2019 11:28:11 +0000 (13:28 +0200)]
Only defined signals can be written
This commits ensure that only known signals
could be written using the binding's api.
Before that you was able to wrote raw frames
on the CAN bus without any checks if this
was a known signals to the binding.
Bug-AGL : SPEC-2779
Change-Id: Ied6680e926f2a9c221fee31d8fb78d2d39c41132
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Mon, 26 Aug 2019 13:41:46 +0000 (15:41 +0200)]
Update function rx_filter_can for multi frame prevision.
This commit updates the functions rx_filter_can to anticipate
the development of the multi-frame.
Bug-AGL : SPEC-2779
Change-Id: I5f67cf84e5d3e47c75c588f8776ead92eb6c3c8e
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Mon, 26 Aug 2019 13:39:33 +0000 (15:39 +0200)]
Change function get_bcm_msg to return a reference.
Bug-AGL : SPEC-2779
Change-Id: I303d2423151dac497917299737070ffb645267d3
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Tue, 27 Aug 2019 12:40:08 +0000 (14:40 +0200)]
Move attributes flags and maxdlen
This commit moves attributes flags and maxdlen from
class can_message_t to class message_t.
Bug-AGL : SPEC-2779
Change-Id: I56f9cd54d8b9822636311c603501326b36692cf4
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Wed, 14 Aug 2019 11:22:15 +0000 (13:22 +0200)]
Add function remove last bcm frame
This commit creates the function remove_last_bcm_frame.
This function removes the last bcm frame of the subscription.
Bug-AGL : SPEC-2779
Change-Id: I5bb6f07a8d677c4aa882549fc1950f00a0b1da04
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Mon, 26 Aug 2019 13:33:13 +0000 (15:33 +0200)]
Add many frames in a subscription in the function tx_send.
This commit convert the message to a vector of canfd_frame.
If there are several canfd frames then we add all of them
to the subscription.
Bug-AGL : SPEC-2779
Change-Id: I876aaf5ab7fed2fedb79367f77b987ba4745cdfc
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Mon, 26 Aug 2019 13:32:20 +0000 (15:32 +0200)]
Add function to convert vector to canfd or can frame.
This commit allows to convert the data vector to canfd or
can frame. In the two cases the struct is a canfd frame,
but if the type is not fd, the max size of a frame is 8.
Bug-AGL : SPEC-2779
Change-Id: I60edf6a602a47572d5e5bfb508c7ca6d8761832b
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Mon, 12 Aug 2019 14:27:51 +0000 (16:27 +0200)]
Add function get_data_vector with index
This commit adds the function get_data_vector to get
another vector between the index indicates.
Bug-AGL : SPEC-2779
Change-Id: I704d78467839ee7f9a2fec397e9b0db8da43d79d
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Mon, 26 Aug 2019 14:48:28 +0000 (16:48 +0200)]
Update function to encode and decode message
This commit update encoder and decoder files.
This new implementation allows to manage larger signals.
Bug-AGL : SPEC-2779
Change-Id: Iec6dfbd279863aa8b8e8f9e3ce951f0c8aa80dae
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Tue, 27 Aug 2019 12:37:01 +0000 (14:37 +0200)]
Update j1939 decode with function to_hex
Bug-AGL: SPEC-2386
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Change-Id: Ia10abfd73a6ea9d42770566e23bc4b206723f081
Arthur Guyader [Mon, 12 Aug 2019 09:51:34 +0000 (11:51 +0200)]
Add file converter to manage all conversions
This commits create a class converter
to access conversions functions.
For example to_hex, or for future usage
in multi packet signal_to_bits_bytes.
Bug-AGL : SPEC-2779
Change-Id: Ife652006a7756547184ed548bda5ffef0d09d941
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Arthur Guyader [Tue, 27 Aug 2019 12:34:37 +0000 (14:34 +0200)]
Uniform indentation with tabulation
Bug-AGL : SPEC-2779
Change-Id: I834221ae1a04fdb188062ce1b7251e648c4845de
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Romain Forlot [Mon, 12 Aug 2019 15:58:50 +0000 (17:58 +0200)]
Fix: only one subscription could be made
Only one subscription could be made and then only one subscriber
could receive associated events. As the relationship between events
and subscriber is not 1-1 but 1-N, so this was the mistake. Now 1 event
is created for N subscriber where before there was 1 event for 1
subscriber and subsequent subscribers could not receive same events
than the ones already subscribed.
Bug-AGL: SPEC-2726
Change-Id: I4e4a80ac9f9b6b4c6b006108ee55f355a7c1e377
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Arthur Guyader [Mon, 29 Jul 2019 13:21:08 +0000 (15:21 +0200)]
Update documentation.
Bug-AGL: SPEC-2386
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Change-Id: I9e6b07ef48d634fe643e0eb2477fedfd34a7abb9
Arthur Guyader [Mon, 29 Jul 2019 13:20:32 +0000 (15:20 +0200)]
Add tests for J1939 features.
This commit adds tests for the J1939 features.
Bug-AGL: SPEC-2386
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Change-Id: I2545eb2f9a27561714fc5efcbd885afcb237770d
Arthur Guyader [Mon, 29 Jul 2019 12:53:14 +0000 (14:53 +0200)]
Integrate the J1939 features : address claiming and write.
This commit allows to write J1939 messages and add the management
of the address claiming.
Bug-AGL: SPEC-2386
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Change-Id: I1bb95a7ba6f6ebe463319c3972d9d46897181d51
Arthur Guyader [Mon, 29 Jul 2019 10:19:13 +0000 (12:19 +0200)]
Add feature to build messages and fix some functions
Allows to build a message (J1939,BCM) with a signal and a value.
Bug-AGL: SPEC-2386
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Change-Id: Iadca13a927ff83f713f39da441c88356695a1285
Arthur Guyader [Tue, 2 Jul 2019 15:46:16 +0000 (17:46 +0200)]
Update examples and can_samples
Update of examples for new features (is_fd,is_extended,is_j1939).
Bug-AGL: SPEC-2386
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Change-Id: I8c3afbafdde4f5818d73c0e71a3b7e47fb7d8fc6
Romain Forlot [Mon, 1 Jul 2019 16:55:23 +0000 (18:55 +0200)]
signals.cpp: Make an insensitive string comparison
When sending a CAN signal make an case-insensitive comparison as it isn't
necessary to be strict on that, so case insensitive if fine.
Update the documentation accordingly.
Bug-AGL: SPEC-2582
Change-Id: I998b64cdd9a381da3da582aeba42ab726fff1259
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Sebastien Douheret [Thu, 27 Jun 2019 18:41:05 +0000 (20:41 +0200)]
Fix spelling
Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
Change-Id: Iea56414f8ccf3d96b2fc67126b066c4032fe86a8
Sebastien Douheret [Thu, 27 Jun 2019 18:32:38 +0000 (20:32 +0200)]
Fix invalid markdown filename in documentation
Bug introduced by previous commit ID
b8261a3b218
Bug-AGL: SPEC-2386
Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
Change-Id: I3694f955109e5828bdf0209cc705655a0ed002c0
Romain Forlot [Tue, 25 Jun 2019 14:23:02 +0000 (16:23 +0200)]
Minor improvements
- Remove now unused forward declaration of active_diagnostic_request_t
- Factorize calling the signals_manager at binding initialization.
- retab...
Bug-AGL: SPEC-2386
Change-Id: I418fddd80ef8b856c198dc697760a6edf0918012
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Arthur Guyader [Fri, 24 May 2019 10:17:17 +0000 (12:17 +0200)]
Add J1939 frame example.
Bug-AGL: SPEC-2386
Change-Id: I4478b3cd1e60a8e46e4602c38265962c4c3575a8
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Arthur Guyader [Fri, 24 May 2019 10:17:12 +0000 (12:17 +0200)]
Update the documentation for J1939.
Bug-AGL: SPEC-2386
Change-Id: Ice568aebb10cc6eb3d7ac013b2e6ce08451332ba
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 25 Jun 2019 13:33:12 +0000 (15:33 +0200)]
Updating application-generated.cpp.
This commit updates differents application-generated.cpp files
with the low-can generator updated with j1939.
This commit adds the description of j1939 messages.
Bug-AGL: SPEC-2386
Change-Id: I798a7da34c1be3526fec6bc3e424a6b88eaf46ff
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 25 Jun 2019 14:24:39 +0000 (16:24 +0200)]
Small fixes (include and pointer)
Bug-AGL: SPEC-2386
Change-Id: I3a622b9d236283aff479f187451cd86557a9aba7
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 25 Jun 2019 14:21:31 +0000 (16:21 +0200)]
Modify function to open socket j1939
The function open_socket has been modified
to open a j1939 socket with a filter
Bug-AGL: SPEC-2386
Change-Id: Ieed5c1d14efdb469f5a7b831c9e8a950e04e9d42
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Arthur Guyader [Fri, 24 May 2019 10:16:57 +0000 (12:16 +0200)]
Add the possibility to subscribe an id or a pgn
The commit allows at the time of subscription to do:
-> low-can subscribe {"id": 48}
-> low-can subscribe {"pgn": 61442}
The generation of event_filter has been extracted in a separate function.
Bug-AGL: SPEC-2386
Change-Id: I592e668c63be448562b27c81fcdc111cd34f3676
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Wed, 26 Jun 2019 13:51:19 +0000 (15:51 +0200)]
Rename some of the classes removing can- prefix
This commit renames files and classes :
- can_message_definition_t -> message_definition_t
- can_message_set_t -> message_set_t
- can_signals_t -> signals_t
This prepares the implementation of j1939 protocol.
Bug-AGL: SPEC-2386
Change-Id: Ie3ee4f25c236c861b92eb12a56fa03a5a9afffbb
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Wed, 26 Jun 2019 08:05:42 +0000 (10:05 +0200)]
New constructor j1939 message definition
Add a new constructor for the j1939 message definition
with additional name and data length member.
Bug-AGL: SPEC-2386
Change-Id: Iff531f122942b6741a6a97718e639a4814b8d2bf
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Wed, 26 Jun 2019 08:34:04 +0000 (10:34 +0200)]
Change can_message_t class usage for new j1939
This commit transforms the class can_message_t as the base class
and creates two derived classes: j1939_message_t and can_message_t.
Bug-AGL: SPEC-2386
Change-Id: I6d3afd8e4f5abff2cd0ec4e9910bd52a2893de76
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Wed, 26 Jun 2019 07:14:42 +0000 (09:14 +0200)]
Add CMake option to compile with J1939
Add option USE_FEATURE_J1939 to compile j1939 in file config.cmake
This will be set up by default depending on the presence on the
building host of the J1939 CAN module headers.
Bug-AGL: SPEC-2386
Change-Id: I54d4594ff01d4e509bfa0862f3cb486562024aed
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 25 Jun 2019 15:12:37 +0000 (17:12 +0200)]
Use subscription's sockets as shared_ptr
This change is made to leverage C++ to read and write the different socket
classes depending on CAN protocol used.
Bug-AGL: SPEC-2386
Change-Id: I5e25e271fc82e9627f836aeb43b2af5ef25db83a
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 25 Jun 2019 15:13:22 +0000 (17:13 +0200)]
Use shared_ptr to set message_set parent
Better to use shared_ptr instead of raw pointer if possible.
Bug-AGL: SPEC-2386
Change-Id: Id853d8ac6cddd1e53edd84e3bf27b0f1f5d92d4b
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Arthur Guyader [Fri, 24 May 2019 10:16:28 +0000 (12:16 +0200)]
Implement a new socket type CAN for j1939 protocol
This commit implements a new socket class for the j1939 protocol and
prepares the bases classes by modifying the write and read methods.
Bug-AGL: SPEC-2386
Change-Id: I16ba493418a4bb37a0262b61a2a2629be6ab5051
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Hiroki Koga [Wed, 5 Jun 2019 08:37:11 +0000 (17:37 +0900)]
Modify to receive signal with bigger value than the number of states
Fix the bug about a part of decode_state in can-signals.cpp.
If a state of signal is allocated not in order, the signal
which is bigger value than the number of states cannot be received,
because can_signal_t::get_states compares signal value with
the number of states.
By this modification, get_states is changed to judges
whether a signal value exists in states or not.
Bug AGL: SPEC-2504
Change-Id: Ia67413507950654567808f7a08d0b0b3b47cbd23
Signed-off-by: Hiroki Koga <hiroki@witz-inc.co.jp>
José Bollo [Wed, 15 May 2019 11:09:31 +0000 (13:09 +0200)]
Require to run at platform scope
Add the required permission
urn:AGL:permission::partner:scope-platform
to run at platform scope.
Bug-AGL: SPEC-545
Bug-AGL: SPEC-2006
Change-Id: I8878ecad50bcf2c0f8fd8419e43f1009a22a1d85
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Romain Forlot [Fri, 18 Jan 2019 13:42:34 +0000 (14:42 +0100)]
Fix: double free issue
handle is already freed during the active_diagnostic_request destruction.
Bug-AGL: SPEC-2415
Change-Id: Ia26d5c9d2974ca34d411c3182b218141a84c8f21
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 30 Apr 2019 13:52:16 +0000 (15:52 +0200)]
Removing submodule
Migration wasn't complete, submodule deinit didn't achieve to erase the
submodule or something wasn't pushed, anyway we have to manually remove
the submodule to get rid of it.
And this commit adds the afb-helpers library as a link dependency
Bug-AGL: SPEC-2139
Change-Id: Iedbdb2d75fc75de553254b266c319bd1538d95c3
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Clément Bénier [Mon, 15 Apr 2019 12:54:53 +0000 (14:54 +0200)]
documentation: fix broken links in documentation
- use relative links
Change-Id: Ic8d85e6cad82e272d136b2bc4c9a1f965b101fbc
Signed-off-by: Clément Bénier <clement.benier@iot.bzh>
Pierre MARZIN [Tue, 2 Apr 2019 13:51:57 +0000 (15:51 +0200)]
docs: Fix broken links
Change-Id: Icc71985cab22e015fa4b901a9545bec3e2cb524d
Signed-off-by: Pierre MARZIN <pierre.marzin@iot.bzh>
Matt Ranostay [Sat, 16 Mar 2019 00:30:43 +0000 (17:30 -0700)]
binding: can-low-level: remove useless .gitmodules
Bug-AGL: SPEC-2268
Change-Id: I48725d0589f188511873fa91d49cd425e1dd2ceb
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
Raquel Medina [Tue, 26 Feb 2019 22:37:54 +0000 (00:37 +0200)]
autobuild: fix warnings due to cp command exit error
- bring latest version of autobuild script in
- move conf.d/autobuild to root folder
- update autobuild script to fix warnings triggered by
cp operation error.
Change-Id: I81b8000f6b11ac2571a8dbb329d45ec417092c99
Bug-AGL: SPEC-2164
Signed-off-by: Raquel Medina <raquel.medina@konsulko.com>
zheng_wenlong [Wed, 6 Feb 2019 08:25:30 +0000 (17:25 +0900)]
Add fake can data for dashboard
Add these fake can data.
We want to modify dashboard, let is show more information.
accelerator.pedal.position
steering.wheel.angle
transmission.gearinfo
transmission.mode
turnsignal.status
lightstatus.brake
parking.brake.status
Change-Id: Ief9f29684f3463af0d0f98f1dd213b633d1889bb
Signed-off-by: zheng_wenlong <wenlong_zheng@nexty-ele.com>
Frederic Marec [Mon, 17 Dec 2018 15:15:11 +0000 (16:15 +0100)]
docs: add yaml book
Bug-AGL: SPEC-1988
Change-Id: I67cf5f375d8f363e830ba9d04ff62ea7a3939510
Signed-off-by: Frederic Marec <frederic.marec@iot.bzh>
Romain Forlot [Fri, 7 Dec 2018 16:17:43 +0000 (17:17 +0100)]
Smalls improvements
- Improve robustness reading a BCM socket
Adding checks on system calls and remove the initialization of the
struct that will hold the received message, not so much needed in
that case.
- More accurate log message at subscription/unsubscription step whether
this is a FD CAN messages or not and if this a subscription or an
unsubscription that is requested.
- Initialize the full struct of vehicle message to avoid memory warning
about conditionnal jump based on uninitialized bytes.
- Memleak: Free raw pointer on active diagnostic requests
Change-Id: I4bbf4d851c0fa1efdb6fa6034fac3d1dcafa1a73
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Mon, 10 Dec 2018 17:08:47 +0000 (18:08 +0100)]
Simpler handling of binding subscriptions
Don't use a child class for subscription, only use one because there
isn't other different subscriptions type to be implemented about now
and if so then we could split again.
Remove functions no longer useful and move afb events and afb
subscriptions part to low-can-subscription
Change-Id: Ie3e4255961ac557465098cdb48730098a950461a
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Thu, 29 Nov 2018 18:00:02 +0000 (19:00 +0100)]
Filter tests improvements
- Unsubscribe using the tear down feature instead of invoking it inside a test
which could not be called if a previous assertion failed.
- Always use the same event so make the 'api' and 'evt' variables at file scope.
- Asserting the bash script's return launcher execution
Change-Id: I6be151d07f890aef053a5ada06216aac7941c165
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Fri, 7 Dec 2018 16:36:38 +0000 (17:36 +0100)]
Cleaning the code for now unused functions
Also formating and retabulating some comments
Change-Id: I95eda93e78fabeb336ca02e94307364954ab2318
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Fri, 28 Sep 2018 15:12:18 +0000 (17:12 +0200)]
CAN FD implementation
Add a flag to CAN message definitions which set the message as using FD
protocol if true.
Use a new generated file with the new FD flag field on the message
definitions.
Change BCM socket "struct" using an union to store the CAN frames either
using the FD struct or the classic non FD struct. A BCM socket can only
one frame type once configured.
Use as much as possible the "struct canfd_frame" in the binding and only
make a difference before writing or reading the socket. From a memory
point of view both struct are identical and only the last member differ
and could hold more data with messages of 64 bytes long. So the
canfd_frame is compatible with the can_frame and can be differentiated
by a flag set in the can_id member.
Remove now unused code processing can_frame.
Keep the diagnostic manager using the classic CAN frame.
Set the maximum number of frames that a BCM socket can handle to 257.
Bug-AGL: SPEC-1980
Change-Id: Ifcc041281ea6745fc25cbd384743761f4446f489
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Wed, 21 Nov 2018 13:24:40 +0000 (14:24 +0100)]
Adds more tests about writing on CAN bus
This commit adds comprehensive tests about writing messages
on CAN bus.
Increase timeout to use in native test to be able to complete
the test suite.
Bug-AGL: SPEC-1965
Change-Id: Ica555dbac1038bb50e5f76c516c1198a78475a9e
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 20 Nov 2018 18:55:23 +0000 (19:55 +0100)]
Rework writing CAN message on CAN buses.
- Adds the possibility to use a custom encoder function
- Use of wrap_json functions instead of raw json-c functions
- Return the error informations in the request return.
- Reduce conditionnal imbrication
Bug-AGL: SPEC-1965
Change-Id: I766b3cf3e6998d03a8a2f3e51117e8b26fc9b56f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 20 Nov 2018 18:47:49 +0000 (19:47 +0100)]
Use newly generated cpp file with default encoders
Change-Id: I7bf15568a16e0c84c4f590ca07eba48ecd34157f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 20 Nov 2018 18:46:00 +0000 (19:46 +0100)]
Handle several can_frame in a BCM message
Also clean an unused function
Change-Id: I4faabf5a1af53da898ee70f2bc4b528acea3ded3
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 20 Nov 2018 18:40:47 +0000 (19:40 +0100)]
Adds a new function to build from a json_object.
Build an openxc_DynamicField from a json_object.
Change-Id: I57033daca5fd4f198b872f015255893d9f8f9303
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 20 Nov 2018 18:38:15 +0000 (19:38 +0100)]
Adjust "encoder" signature to fit cpp usage
Adjust "encoder" signature to fit cpp usage like for the decoder functions.
Change-Id: I5872c5e32fd69356124fefbc82fd1f77ab8acbf4
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 20 Nov 2018 18:35:22 +0000 (19:35 +0100)]
Code format and style changes
Change-Id: Icfb7cdb53deba8d82b91f884c6b815adf0f17adf
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 20 Nov 2018 18:55:30 +0000 (19:55 +0100)]
Update gitignore
Change-Id: Iacc55ff5e0b9723897db190db3e5cd73cab8e7b9
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 20 Nov 2018 16:57:54 +0000 (17:57 +0100)]
Added afb-helpers submodule
Use the afb helpers lib to be able to use wrap_json functions.
Change-Id: I3a66ac4eb7d80ff921de13a7e749311d33f0572e
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Frederic Marec [Tue, 6 Nov 2018 16:26:09 +0000 (17:26 +0100)]
Change .gitmodules following submodule migration
Remove app-template in .gitmodules
Remove .gitmodules
Change-Id: I41808c8135cfb24baaaaba526781fc149fd918fe
Signed-off-by: Frederic Marec <frederic.marec@iot.bzh>
Romain Forlot [Wed, 31 Oct 2018 15:40:59 +0000 (16:40 +0100)]
Migrate app-templates to CMake module
Bug-AGL SPEC-1682
Change-Id: I9f8e4f8bb2c7a020e41215022d2528ea9c26afe1
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Thu, 11 Oct 2018 10:25:27 +0000 (12:25 +0200)]
Migration to binding v3
Change-Id: I0bcccb15200064bd7d83edbf06c1e7202069189a
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Thu, 11 Oct 2018 12:19:42 +0000 (14:19 +0200)]
Updated app-templates submodule
Submodule conf.d/app-templates
f0b24b0..
0f25ab2:
> Adding warning message to migrate on CMake module
> common.cmake: fixed erroneous search path for os-release
> Fix: missing gcov symbol in compiled binaries
> app-templates doc: Changed doc to fit new format.
> Update Docs
> Fix: typo
Change-Id: Ie81d583faf3b703d773dadc82f2fe88453951c2d
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Thu, 11 Oct 2018 12:18:00 +0000 (14:18 +0200)]
Change the project name
Change the project name to be consistent with other AGL services project.
Change-Id: I2dbd53f59673217c8796bc23c208ed55c1b1716f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Jose Bollo [Tue, 9 Oct 2018 10:01:16 +0000 (12:01 +0200)]
Use feature 'required-binding'
The feature "urn:AGL:widget:required-binding" is now
preferred to the feature "urn:AGL:widget:required-api"
for requiring a local binding.
Bug-AGL: SPEC-1800
Change-Id: I67508e271b184de362597eeaf20d86bdb17fbd9a
Signed-off-by: Jose Bollo <jose.bollo@iot.bzh>
Romain Forlot [Tue, 25 Sep 2018 12:54:34 +0000 (14:54 +0200)]
Use the unified script to launch tests
This use the dedicated script to launch tests on native
development environment and get rid of the dedicated script
afb-test.sh.
Change-Id: Iaefa95bfd9c842da5ef87bd1adba87d5241a3d8c
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Sebastien Douheret [Thu, 20 Sep 2018 06:34:53 +0000 (08:34 +0200)]
doc: Changed doc to new format
- split book.json to match new format
- changed description in README.md
- remove useless files
Change-Id: Ie41edb058cf7cfc4920c5c84767097c4e46d34cb
Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
Romain Forlot [Wed, 12 Sep 2018 14:01:59 +0000 (16:01 +0200)]
Reach fixture files in all cases.
Depending if you are executing tests on a board or natively
with one or more binders you have to reliably be able to reach
your fixtures files. Using the bindingRootDir you always point to
the right directory and know exactly where are your files.
Change-Id: I61e7cd9d7ff43637dff6e63ffc82a7485cf92443
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Sat, 28 Jul 2018 00:30:14 +0000 (02:30 +0200)]
Cleaning, set up binding version in config.cmake
Change-Id: I2e8d89b09982c9f3770a5a3e10d281e0ad87651c
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 14 Aug 2018 16:33:27 +0000 (18:33 +0200)]
Use TEST app-templates labels
Change-Id: I03b12b6edd04eae51efba509e6d92be3a91702de
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Tue, 14 Aug 2018 16:56:34 +0000 (18:56 +0200)]
Specify the API name to be tested
Since the API is hardly guessable we need a variable
to be able to build a test widget using CMake template
function that will configure the config.xml file
automatically
Change-Id: Ibbb50c8a84356bbe39427453ccf1ebd0785286e5
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Mon, 13 Aug 2018 08:49:36 +0000 (10:49 +0200)]
Use dedicated API name for the test
Use dedicated API name for the test and not using the generic
one already used by the raw afb-test.
Change-Id: I79eb590a9a1d8c2538bd1b9d8bfc5a8537cf6c00
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Sat, 28 Jul 2018 00:34:44 +0000 (02:34 +0200)]
Update gitignore
Change-Id: I510914c895cafedba5c407fe6ea9e23414eae076
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Fri, 27 Jul 2018 18:02:56 +0000 (20:02 +0200)]
Several tests improvements and fixes
- New tests about authenticate and write on CAN bus.
- Fixes diagnostic messages handling, all diagnostic messages are received
through the same handle then in its data there is the detailled message
name.
- Set after and before method the same between the both file then they could
be played separately. About now setting multiple times those methods will override
them and the latest set wins
- Disable the Step3 for now because of segfault
- Fix unsubscribe argument to match the previous subscription else
it doesn't match and verb call fails
- Fix: typo,wrong variable
Change-Id: I2f4c2873e57611c946a99d4313021bb7bfea679c
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Fri, 27 Jul 2018 17:51:52 +0000 (19:51 +0200)]
Updated examples files and default configuration
Let use the new decoder's function and set some hvac signals
as writable to be able to test this feature.
Change-Id: I27e1c2be069b8bb55ed931ad1fb629aa2d4e5b86
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Romain Forlot [Fri, 27 Jul 2018 17:50:04 +0000 (19:50 +0200)]
Tiny doc fix
Change-Id: Ic3f1c572fccacb1c78e38c6a94aafcd0f9740aff
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>