apps/low-level-can-service.git
6 years agoMake Kernel check not mandatory 57/10357/4
Romain Forlot [Tue, 25 Jul 2017 13:10:06 +0000 (15:10 +0200)]
Make Kernel check not mandatory

Use 2 different checks, one specify a mandatory kernel version
and the other will output a warning and position a preprocessing
variable that can be used in the code to exclude portions of code
that use kernel features not available under a certain version.

Bug-AGL: SPEC-772

Change-Id: I04523abe96749aeeb185e90eee154fd70a4cbf19
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoudpate app-templates
Romain Forlot [Fri, 21 Jul 2017 13:25:47 +0000 (15:25 +0200)]
udpate app-templates

Yocto fixes
Cleaning left files
Autobuild scripts
See app-templates git log :D

Change-Id: I14389a03dae5f06bf7d757031180971a09130465
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoExamples reorganization
Romain Forlot [Thu, 20 Jul 2017 14:40:35 +0000 (16:40 +0200)]
Examples reorganization

Separated by protocols and created signals from reversed
engineered signals.
Meld all used signals into an "agl-vcar" folder to be used as
default.

Change-Id: I27f7bc227a6fcea3db6672819e6a4d7bbf09863b
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFormat
Romain Forlot [Mon, 17 Jul 2017 08:59:10 +0000 (10:59 +0200)]
Format

Change-Id: I036befbfb38b01d046d35a1364c28e0835dcbd41
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoCheck whether a signal is writable before sending
Romain Forlot [Mon, 17 Jul 2017 08:57:45 +0000 (10:57 +0200)]
Check whether a signal is writable before sending

Change-Id: Id04d04a07e43738f7379e33fa7c6022eaa426343
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoSplit big function to several smaller
Romain Forlot [Mon, 17 Jul 2017 08:56:46 +0000 (10:56 +0200)]
Split big function to several smaller

Change-Id: I070fdafd51e789eb37b963a100b57cae9dff3e25
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFix: encoding value method has wrong signature.
Romain Forlot [Fri, 14 Jul 2017 15:31:12 +0000 (17:31 +0200)]
Fix: encoding value method has wrong signature.

Change-Id: I227c721f782eef85f83db9ffdb7cc0e180d17da4
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoHandle object without signal, only a bus
Romain Forlot [Fri, 14 Jul 2017 15:30:43 +0000 (17:30 +0200)]
Handle object without signal, only a bus

To be able to send or receive message on bus without depending
upon on a signals, this is adds opening socket just with a bus_name
if provided.
Also handle send a frame on bus depending on a signal or not.

Change-Id: I3a60a03a2d36db4db14b9ae90eefc4bbc8f21e32
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoBe able to write raw frame & encode value to sent
Romain Forlot [Thu, 13 Jul 2017 16:51:20 +0000 (18:51 +0200)]
Be able to write raw frame & encode value to sent

Check whether the argument is a raw frame or a Signal + Value
to encode then send.
1 new class to handle encoding part of a value as well as
a new method for can_signal_t which return index of a map from
its value.

Change-Id: I288d2aeec28ce74c9ca35750db18557c9251e1df
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoCreate an auth verb to raise privilege of session
Romain Forlot [Thu, 13 Jul 2017 16:47:18 +0000 (18:47 +0200)]
Create an auth verb to raise privilege of session

Simply raise to a LOA of 1 the current session if asked
Need to add some checks to not allow anyone raise its session
must hold a specific permission urn:AGL:permission::platform:can:write
to be able to authenticate.

Change-Id: Id4e01ca20ba8437e97a64db682fdd3ebf45ce7b4
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoSignal isn't required so now have a default value
Romain Forlot [Thu, 13 Jul 2017 16:42:59 +0000 (18:42 +0200)]
Signal isn't required so now have a default value

We could want to send a message through the bus not attached to
a can_signal_t object in case of complete RAW message

Change-Id: I133671f8cdcc52a98c8bde9e343c0dc7edcb366e
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoInclude HVAC and meld with Toyota examples one.
Romain Forlot [Thu, 13 Jul 2017 09:15:46 +0000 (11:15 +0200)]
Include HVAC and meld with Toyota examples one.

Change-Id: Ia55dbcd7cabcd38d532a239cb00f8480a095bda2
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUse compile generated DB instead of this file
Romain Forlot [Wed, 12 Jul 2017 15:43:36 +0000 (17:43 +0200)]
Use compile generated DB instead of this file

Change-Id: I4734103e3820a98decc44bd66c9ed682141b423c
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoCleaning and renaming.
Romain Forlot [Wed, 12 Jul 2017 15:42:30 +0000 (17:42 +0200)]
Cleaning and renaming.

Change-Id: I24b78e3d41124650da286a50297f1c51410c2c6a
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFix: compile error initializing afb_auth struct.
Romain Forlot [Wed, 12 Jul 2017 15:42:16 +0000 (17:42 +0200)]
Fix: compile error initializing afb_auth struct.

std=c++11 isn't needed.
Added new class to the build and comment an other that
isn't used.

Change-Id: Ic32dead5e1ab55e0405f5e70224e4dad2c066116
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoImplements new verbs to write on CAN bus
Romain Forlot [Wed, 12 Jul 2017 15:40:36 +0000 (17:40 +0200)]
Implements new verbs to write on CAN bus

This will open a new BCM socket not dedicated to a subscription
use to that mean.

Change-Id: Idf353015f731e32d6eb7c7856bd73167c66e790f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoExample regeneration
Romain Forlot [Tue, 11 Jul 2017 15:03:20 +0000 (17:03 +0200)]
Example regeneration

Change-Id: Iab06c4aebcc4172ae831c8fda2d3986315fb94c2
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoMarkdown lint
Romain Forlot [Tue, 11 Jul 2017 15:03:07 +0000 (17:03 +0200)]
Markdown lint

Change-Id: If93e9353fbafc7d926a2987a2e6a0c0253248de4
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoDefault pkg dependency no pertinent.
Romain Forlot [Fri, 21 Jul 2017 10:01:18 +0000 (12:01 +0200)]
Default pkg dependency no pertinent.

libmicrohttpd is a dependency of afb-daemon so no need
to specify it and the project did not use it anyway

Change-Id: I3de5b24d58a44a361d6aa5738179069201403c54
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFix canmessage default frequency 89/10289/1
Yuichi Kusakabe [Fri, 21 Jul 2017 03:57:20 +0000 (12:57 +0900)]
Fix canmessage default frequency

Default CAN message is frequency_cloc_t(0.0)=1Hz setting.
But this value is not recived under 1000ms CAN data.
This patch is default frequency change 2000Hz(0.5ms).

Change-Id: I3c099b75da244ee147b67bc3ce7a95aea2bbf6fa
Signed-off-by: Yuichi Kusakabe <yuichi.kusakabe@jp.fujitsu.com>
6 years agoFix subscribe response 85/10285/2
Romain Forlot [Thu, 20 Jul 2017 15:51:20 +0000 (17:51 +0200)]
Fix subscribe response

This patch is "No signal(s) found for %s." return value is ret = -1.

Change-Id: Ia6f4f2db13beb7f9d3507d890383fc13cbddac0f
Signed-off-by: Yuichi Kusakabe <yuichi.kusakabe@jp.fujitsu.com>
6 years agofix link option 29/10229/1
Ronan Le Martret [Tue, 18 Jul 2017 15:58:24 +0000 (17:58 +0200)]
fix link option

Change-Id: Ibca245fc8c6ec7c68d24b9c6e693156974f186ef
Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
6 years agoFix: autobuild script errors when no DEST definied
Romain Forlot [Tue, 11 Jul 2017 15:52:03 +0000 (17:52 +0200)]
Fix: autobuild script errors when no DEST definied

Change-Id: I8b8113e6c8b36b8e9040a41e9a575856153f817f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoDifferent errors between no file and wrong content
Romain Forlot [Mon, 10 Jul 2017 17:02:37 +0000 (19:02 +0200)]
Different errors between no file and wrong content

Change-Id: Ic705e09811b3479af8dc2287c53fa53fdcdff656
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoIntegrates latest fix from app-templates submodule
Romain Forlot [Fri, 7 Jul 2017 16:51:19 +0000 (18:51 +0200)]
Integrates latest fix from app-templates submodule

Change-Id: Iafa227798f3a3d8e0d4bf3d4b226a528abe4c1dc
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUpdate struct to follow af-binder changes.
Romain Forlot [Fri, 7 Jul 2017 15:32:07 +0000 (17:32 +0200)]
Update struct to follow af-binder changes.

Added an info fields in struct.

Change-Id: I93165911c1ceb62c9893fa1c4635088f0df36b3f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFix: uninitialized variables.
Romain Forlot [Wed, 5 Jul 2017 16:36:30 +0000 (18:36 +0200)]
Fix: uninitialized variables.

Change-Id: I1e506f225ce6f17836708c32106ce45c80150ee6
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoCan't set compile FLAG using set using Yocto build
Romain Forlot [Wed, 5 Jul 2017 16:36:17 +0000 (18:36 +0200)]
Can't set compile FLAG using set using Yocto build

If set, then these are the flags that are used by bitbake
without append its own flags which provides toolchain variables
environment mandatory to correctly build for another target.

Change-Id: Id5ddfc11c3d7d2e1eee418989aabaa73a933a41a
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoRemove useless Makefile as we use CMake files.
Romain Forlot [Wed, 5 Jul 2017 14:26:58 +0000 (16:26 +0200)]
Remove useless Makefile as we use CMake files.

Change-Id: I99848f5369420a81cf1e38076d97840e4eab6ee7
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoDAB RC3 Fixes follows appfw API break.
Romain Forlot [Tue, 4 Jul 2017 12:27:16 +0000 (14:27 +0200)]
DAB RC3 Fixes follows appfw API break.

Following functions now return 0 on success and negative value
on failure :
    o afb_req_subcall
    o afb_req_subcall_sync
    o afb_service_call
    o afb_service_call_sync

Verbosity macros used in v2 bindings now needs to be prefixed
with AFB_ (ERROR -> AFB_ERROR)

Change-Id: Ica4346f215bb142fcda0c6ea15e7074f7091f4cc
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUpdate README
Romain Forlot [Thu, 29 Jun 2017 22:47:42 +0000 (00:47 +0200)]
Update README

Change-Id: Idf39ee8002e4a9f08b0cba487c9b6517acb9aa7f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFix: Yocto build failure.
Romain Forlot [Thu, 29 Jun 2017 13:31:33 +0000 (15:31 +0200)]
Fix: Yocto build failure.

Change-Id: I515bc344f0ff6203eac6f43b2047aa7c5d0fc9aa
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFix native build for openSUSE_Tumbleweed 41/9941/2
Ronan Le Martret [Wed, 28 Jun 2017 22:35:21 +0000 (00:35 +0200)]
Fix native build for openSUSE_Tumbleweed

 * add library specification "-pthread" to CXX_FLAGS.
  fix build error under gcc7 "undefined reference to `pthread_create'"

Change-Id: Ic952682086744f0e3f3e5f292495c7bc8b922316
Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
6 years agoFix: autobuild scripts.
Romain Forlot [Thu, 29 Jun 2017 08:50:44 +0000 (08:50 +0000)]
Fix: autobuild scripts.

Wrong behavior when no DEST variable defined. mkdir failed
and copy too. Now mkdir and copy happens only when DEST is
defined

Change-Id: I8a3701f1f0fae7ecae60195300c3d8d8db4493c7
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoMerge "Update config.cmake"
Romain Forlot [Wed, 28 Jun 2017 16:23:39 +0000 (16:23 +0000)]
Merge "Update config.cmake"

6 years agosubmodule update and autobuild script generation
Romain Forlot [Wed, 28 Jun 2017 16:17:25 +0000 (18:17 +0200)]
submodule update and autobuild script generation

Change-Id: I9d434addc928124227f4d60599d30add4f8895b9
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUpdate config.cmake 17/9917/1
Ronan Le Martret [Wed, 28 Jun 2017 16:06:10 +0000 (18:06 +0200)]
Update config.cmake

Change-Id: I24e08bbb2dc735125cea9a9fee18641c21938713
Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
6 years agoUpdate to the latest app-templates version
Romain Forlot [Wed, 28 Jun 2017 09:39:23 +0000 (11:39 +0200)]
Update to the latest app-templates version

No more needs to call any macro and only include
config.cmake file is mandatory. Common.cmake is include
from config.cmake file
Generation autobuild script in conf.d/autobuild dir

Change-Id: I71a18a91755d76912fd8ff93c66bab231d4db301
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
# Conflicts:
# conf.d/app-templates

Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUpdate to the latest app-templates version
Romain Forlot [Tue, 27 Jun 2017 17:00:16 +0000 (19:00 +0200)]
Update to the latest app-templates version

No more needs to call any macro and only include
config.cmake file is mandatory. Common.cmake is include
from config.cmake file
Generation autobuild script in conf.d/autobuild dir

Change-Id: I71a18a91755d76912fd8ff93c66bab231d4db301
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoEnable check kernel version before build
Romain Forlot [Mon, 26 Jun 2017 16:36:23 +0000 (18:36 +0200)]
Enable check kernel version before build

Upgrade app-template submodule that allows to correctly
check kernel version and uncomment kernel_minimal_version
variable definition.

Change-Id: I97d10e2506a89780fa611dc7f96eafb3f2be29cd
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoPermission about car was a test, removing it. Renesas_delivery_Q2
Romain Forlot [Thu, 22 Jun 2017 14:39:32 +0000 (16:39 +0200)]
Permission about car was a test, removing it.

target param isn't necessary because are implicit

Change-Id: I1704f8d28b0d7bf8a156c9dab9c4d37cb4b63347
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoAdd some reminder...
Romain Forlot [Thu, 22 Jun 2017 14:37:30 +0000 (16:37 +0200)]
Add some reminder...

Change-Id: Ifb81989c39f31f73ce7dc7dcbebfc6039f6a6a47
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoNeeded feature to make binder load the binding
Romain Forlot [Wed, 21 Jun 2017 10:01:12 +0000 (12:01 +0200)]
Needed feature to make binder load the binding

Change-Id: I5c312e082bc710f3d3f381d09be055af4950cd1a
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoReview of documentation
Romain Forlot [Tue, 20 Jun 2017 14:43:28 +0000 (14:43 +0000)]
Review of documentation

Change-Id: I49763cc9264c0121db2950cfee56d69c66d0e4c7
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoMove submodule directory
Romain Forlot [Tue, 20 Jun 2017 14:37:08 +0000 (16:37 +0200)]
Move submodule directory

Change-Id: I2c603ab49bab01fd1221147cfe9c97bdacea91a9
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoSeparation Generator to a dedicated repo
Romain Forlot [Tue, 20 Jun 2017 10:24:05 +0000 (10:24 +0000)]
Separation Generator to a dedicated repo

Change-Id: Id94831651c3266861435272a6e36c7884bef2c45
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUpdate doc revision and pdf cover. 75/9775/1
Sebastien Douheret [Tue, 20 Jun 2017 08:49:55 +0000 (10:49 +0200)]
Update doc revision and pdf cover.

Change-Id: Ia566b39055a39cb14760f3a17b4240690c1a8f56
Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
6 years agoAdd .gitreview
Romain Forlot [Tue, 20 Jun 2017 08:54:29 +0000 (08:54 +0000)]
Add .gitreview

Change-Id: Ie52d9470d792ce3556d3a153316fc7384cd10e64
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoAlign with AGL version
Romain Forlot [Tue, 20 Jun 2017 08:11:17 +0000 (08:11 +0000)]
Align with AGL version

And unify prefix with audio binding and others bindings

Change-Id: I685afd2e4c75c813ac9af8ab3281fedc04b9289e
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoNow even generator can be built in SDK environment
Romain Forlot [Wed, 14 Jun 2017 13:34:11 +0000 (15:34 +0200)]
Now even generator can be built in SDK environment

Change-Id: I7fdcddca9002e8d1cfb21049198d798c8551319c
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUpdate build and package configuration file.
Romain Forlot [Mon, 12 Jun 2017 10:07:11 +0000 (12:07 +0200)]
Update build and package configuration file.

Change-Id: I9e5f596744479ed21f375e3cdd97c5d68bfa4c7a
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUpdate documentation PDF metadata
Romain Forlot [Fri, 9 Jun 2017 16:11:39 +0000 (18:11 +0200)]
Update documentation PDF metadata

Change-Id: I64aa4cbae216d1ce4b48efaad704a158088b4494
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoRename submodule path to app-templates as the repo
Romain Forlot [Fri, 9 Jun 2017 16:11:24 +0000 (18:11 +0200)]
Rename submodule path to app-templates as the repo

Change-Id: Ic4c2c5e50a19199614b7f1aaa8e1d2f9992fb3af
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUpdate git clone command in documentation
Romain Forlot [Fri, 9 Jun 2017 10:33:30 +0000 (12:33 +0200)]
Update git clone command in documentation

Change-Id: I0cf5fbaed72dfd8602ce9f8e10feb97fa9a17ce4
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUpdate submodule about cmake templates and config
Romain Forlot [Fri, 9 Jun 2017 09:25:28 +0000 (11:25 +0200)]
Update submodule about cmake templates and config

Change-Id: Ia4cdc62993fd585a89e214d21fdf465d0af3d59b
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoChange name and version
Romain Forlot [Fri, 9 Jun 2017 07:03:43 +0000 (09:03 +0200)]
Change name and version

Change-Id: Ifaf6850773f94111a9501f7ded85ad4d62797f0b
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFix: warning at compile time after migration to v2
Romain Forlot [Fri, 9 Jun 2017 07:03:20 +0000 (09:03 +0200)]
Fix: warning at compile time after migration to v2

Change-Id: I7bd4168d74ee0c144cea8ca85f30b5b6928d68f8
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUpdate documentation
Romain Forlot [Fri, 9 Jun 2017 07:02:32 +0000 (09:02 +0200)]
Update documentation

Change-Id: Ieea8476f65433ebd41da2ca992b9984310eb6c5f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoMigration to AFB Binding V2
Romain Forlot [Thu, 8 Jun 2017 13:25:27 +0000 (15:25 +0200)]
Migration to AFB Binding V2

No more binder interface needed to use logging macros and
others stuff like make_event or any other calls

Change-Id: Iaee60697373bc8a0e67518e924b36b5389533e68
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoComments, Cleanup, format
Romain Forlot [Thu, 8 Jun 2017 10:41:09 +0000 (12:41 +0200)]
Comments, Cleanup, format

Change-Id: I9f032cc232e77ce73e889a1656f1ad86cfdec774
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoCleanup include and prepare to switch binding v2
Romain Forlot [Wed, 7 Jun 2017 21:38:19 +0000 (23:38 +0200)]
Cleanup include and prepare to switch binding v2

Change-Id: I032e8ec32c3ff5b2464f2802dd93683752316049
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFix: read 2 times for 1 incoming CAN frame.
Romain Forlot [Wed, 7 Jun 2017 13:42:21 +0000 (15:42 +0200)]
Fix: read 2 times for 1 incoming CAN frame.

Change-Id: I7be7b5e704b3cb081e1dbd73a6ba7f88a2bbc62f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoPossible uninitialized variable returned.
Romain Forlot [Wed, 7 Jun 2017 13:41:40 +0000 (15:41 +0200)]
Possible uninitialized variable returned.

Change-Id: Id6ffed520aa238304afdddcd37a64e93002196aa
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoAdd some useful DEBUG information for read frames
Romain Forlot [Wed, 7 Jun 2017 13:41:00 +0000 (15:41 +0200)]
Add some useful DEBUG information for read frames

Change-Id: I026111942b4b8486b46f56d5fc92fcebde4dc91f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFix: invalid CAN frame read leads to an exception
Romain Forlot [Wed, 7 Jun 2017 13:40:16 +0000 (15:40 +0200)]
Fix: invalid CAN frame read leads to an exception

The frame is reported like before but ignored now.

Change-Id: I8314cdb5fa99d950023bf881c72daea2ef9bb935
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoImprove reliability on multi-threading.
Romain Forlot [Wed, 7 Jun 2017 12:27:33 +0000 (14:27 +0200)]
Improve reliability on multi-threading.

- Limits call to signals_manager and subscribed signals map
- Unlock and lock mutex in the right order to avoid possible dead locks.

Change-Id: Ifb152af833ad8bdde5dc4fc3a27b1a7c27046523
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFix: exception unsubscribe all at start
Romain Forlot [Tue, 6 Jun 2017 23:29:59 +0000 (01:29 +0200)]
Fix: exception unsubscribe all at start

When unsubscribing but no diagnostic subscription made there
is an exception when cleaning empty requests vector.

Change-Id: I40bdd01969fd1a1c6fecb0a438c46d0df584de83
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFix: c++11 detected and not applied from config
Romain Forlot [Tue, 6 Jun 2017 23:28:21 +0000 (01:28 +0200)]
Fix: c++11 detected and not applied from config

Change-Id: Iedf1f88e142a3f579ada3794b1f0f8813105d880
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoFix: unsubscribe from 1 app remove diagnostic req
Romain Forlot [Tue, 6 Jun 2017 23:27:24 +0000 (01:27 +0200)]
Fix: unsubscribe from 1 app remove diagnostic req

Let the function on_no_client do the cleaning of the remaining active
diagnostic requests.

Change-Id: I6fc2477d53200e3475f62cd453804827172a99c0
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoSeparate low_can_subscription class from callbacks
Romain Forlot [Tue, 6 Jun 2017 23:25:04 +0000 (01:25 +0200)]
Separate low_can_subscription class from callbacks

Change-Id: I682cacca1af53f898ac4c428f823562c50e7cce4
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUpdate signals.json and generated files.
Romain Forlot [Tue, 6 Jun 2017 08:23:51 +0000 (10:23 +0200)]
Update signals.json and generated files.

Adding fake windows signals,
Fix wrong bit_position about doors (not fake signal)
In fact all signals are fake except of doors signals and OBD2
diagnostic messages.

Change-Id: Ia5877bb9720b11b0ff3593788d3e79324b0fa44e
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoUpdate generator at latest low level binding
Romain Forlot [Tue, 6 Jun 2017 08:18:08 +0000 (10:18 +0200)]
Update generator at latest low level binding

- renaming configuration to application
- make message_set as a vector of shared_ptr
- Setting up object parent in graphs at application object instanciation

Change-Id: Ib33103d5cebbd9381375d2832582a25ae0f9f199
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
6 years agoRemove demo UI from the project
Romain Forlot [Tue, 6 Jun 2017 07:21:42 +0000 (09:21 +0200)]
Remove demo UI from the project

Low level CAN binding is a standalone service that doesn't
have to be delivered with an UI.

Change-Id: Ic3995704a63b56f21168e2e9da8e45b3117a0f41
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoLet the thread to be managed outside the binding.
Romain Forlot [Fri, 2 Jun 2017 17:50:15 +0000 (19:50 +0200)]
Let the thread to be managed outside the binding.

Change-Id: Ib905a3e0ea58a32761c4dda4a391c1d7b311c12a
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoC++ coding style
Romain Forlot [Fri, 2 Jun 2017 17:49:46 +0000 (19:49 +0200)]
C++ coding style

No changes on the object so it is a const method...

Change-Id: I55b50d0d6fc0dd120f58ca56b6a68172353a5ef5
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoRemove pointer generator that make memory leaks.
Romain Forlot [Fri, 2 Jun 2017 17:48:24 +0000 (19:48 +0200)]
Remove pointer generator that make memory leaks.

Only have 1 place where to generate a pointer from a DiagnosticRequest
is in low-can-cb.cpp when subscribing. Else now using reference instead
of raw pointer.

Change-Id: I7fd2f3d30afa90017b945e6b711922036123b6d3
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoGet diag manager's socket into subscription obj
Romain Forlot [Fri, 2 Jun 2017 17:45:01 +0000 (19:45 +0200)]
Get diag manager's socket into subscription obj

Subscription index map is the socket ID which implies the following:
- All diagnostic messages subscriptions are stored into a vector
holding diagnostic_message and there is 1 socket for all like the
diag manager did.
- Reworked workflow to open a BCM socket and adding an RX filter more flexible.
- Separated methods to handle on_no_clients event.
- Cleaning diagnostic manager code to remove all unneeded stuff now.
- Embed diagnostic response in VehicleMessage decoded message to be able
transmits the PID in event push thread. This is needed by to correctly handle case
when there is no clients subscribed to an AFB event. Else we can't find
the diagnostic message to remove from low_can_subscription vector.

Change-Id: Iab13fd556cda3c69827bcd67f3a23a03cb6a2cf2
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoUpdate submodule.
Romain Forlot [Fri, 2 Jun 2017 00:05:18 +0000 (02:05 +0200)]
Update submodule.

Change-Id: I2f8bc5bbe7325b50c62a40d1f081b5bf771179c8
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoFix: Handle several subscriptions to a signal
Romain Forlot [Fri, 2 Jun 2017 00:03:27 +0000 (02:03 +0200)]
Fix: Handle several subscriptions to a signal

Change-Id: I460bae0056761f6468ca4dc55a594f1529d53c83
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoAdding accessor to diagnostic msg shared ptr.
Romain Forlot [Fri, 2 Jun 2017 00:02:55 +0000 (02:02 +0200)]
Adding accessor to diagnostic msg shared ptr.

Change-Id: I9d32239b3ebd762ab3a337fc734d504ee8dc8c5f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoChange way to validate a subscription object
Romain Forlot [Fri, 2 Jun 2017 00:02:20 +0000 (02:02 +0200)]
Change way to validate a subscription object

Better to check validity of 2 differents type of signals
used and checks that its event is valid.

Change-Id: I1435bbe81a43fd80eae049d43b5e37fc8f893074
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoFix warning compile
Romain Forlot [Thu, 1 Jun 2017 16:42:39 +0000 (18:42 +0200)]
Fix warning compile

Change-Id: Id0f088f030c0a23b4347c4886a3d756538cbb651
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoImplement minimum and maximum subscription filters
Romain Forlot [Thu, 1 Jun 2017 16:18:33 +0000 (18:18 +0200)]
Implement minimum and maximum subscription filters

Change-Id: I6b027cdb37e425e185b8d2278ae775f857ff96bc
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoBetter handling of duplicate non recurring request
Romain Forlot [Thu, 1 Jun 2017 16:18:07 +0000 (18:18 +0200)]
Better handling of duplicate non recurring request

Change-Id: Ib6015d5dac66751622f3e287429475b6b708c3d5
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoMethods to ease access to DynamicField members
Romain Forlot [Thu, 1 Jun 2017 16:17:29 +0000 (18:17 +0200)]
Methods to ease access to DynamicField members

Change-Id: I8974827340e3faf60a511900cbdcf117ce43fb53
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoClose socket by default when destroying object
Romain Forlot [Thu, 1 Jun 2017 13:59:57 +0000 (15:59 +0200)]
Close socket by default when destroying object

As socket is back to only movable, only one copy of a socket
can be present at a time, so when the object is destroyed we have
to close the socket too.

Change-Id: Id64bb53919ce7c24476c26ba9a8520affa3f6273
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoDelete pointer and content, possible memory leak
Romain Forlot [Thu, 1 Jun 2017 13:58:44 +0000 (15:58 +0200)]
Delete pointer and content, possible memory leak

Change-Id: I21e65bcaaa444c03bbc634f1d437e6ff363623b6
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoInitializing all struct by default to avoid errors
Romain Forlot [Thu, 1 Jun 2017 13:58:20 +0000 (15:58 +0200)]
Initializing all struct by default to avoid errors

Change-Id: I54eab7da7e5819f633a5612abe46d44550068aab
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoFormat
Romain Forlot [Thu, 1 Jun 2017 13:57:29 +0000 (15:57 +0200)]
Format

Change-Id: Ibbd48a1c0fe0e7567cbf3f5f1c6919e542883924
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoLeft over renaming variable
Romain Forlot [Thu, 1 Jun 2017 13:57:24 +0000 (15:57 +0200)]
Left over renaming variable

Following change from configuration_t to application_t some
variable name doesn't correspond now : conf -> app

Change-Id: I56c3a83113777a43af9024a9bc9b53f705b60b0f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoFix: Frequency filter doesn't apply on diagnostic
Romain Forlot [Thu, 1 Jun 2017 13:55:53 +0000 (15:55 +0200)]
Fix: Frequency filter doesn't apply on diagnostic

As socket isn't managed by low_can_susbcription yet,
create_rx_filter was just using signal frequency setting.
Now, it take the frequency asked in argument if provided.

Change-Id: If44458b2b0e34df44337670dd9a5b2b58324bfbe
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoCleaning
Romain Forlot [Thu, 1 Jun 2017 11:48:36 +0000 (13:48 +0200)]
Cleaning

Change-Id: I73e9acf8b3a28db2134cf1f4bcb1b2aa7fd224fc
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoUse UDS PID has key to record subscriptions
Romain Forlot [Thu, 1 Jun 2017 11:48:19 +0000 (13:48 +0200)]
Use UDS PID has key to record subscriptions

can_signal_t use socket number but has for OBD2 diagnostic request
there is only 1 socket to listen all response then we use PID has key
to find the subscription later on the processing.

Change-Id: I5f0554e1a4ac43e1046d9b7b7f9bb00d3a753562
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoSimplify processing event
Romain Forlot [Thu, 1 Jun 2017 11:46:10 +0000 (13:46 +0200)]
Simplify processing event

Set afb_event into subscription object then there is no more
std::pair used t access it, better use a method from
low_can_subscription_t class

Change-Id: Ic0772d97c18ca8899821cf3ce175166bbe0be660
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoFormat
Romain Forlot [Thu, 1 Jun 2017 08:33:05 +0000 (10:33 +0200)]
Format

Change-Id: Ib3f8f0c8cbffaf7b5d1acb8c4541526dad03a9c9
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoFix: segfault subscribing diagnostic messages
Romain Forlot [Thu, 1 Jun 2017 08:32:48 +0000 (10:32 +0200)]
Fix: segfault subscribing diagnostic messages

Wrong object used when subscribing.

Change-Id: I356c8cedc57191268ce3ea1838999fbe03472ae2
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoFix: get signal name no matter type of signal.
Romain Forlot [Thu, 1 Jun 2017 07:43:43 +0000 (09:43 +0200)]
Fix: get signal name no matter type of signal.

One method to return name depending upon which type it is,
can or diagnostic.

Change-Id: I1e96f88654e14316d3afe527fa6fa0d8ddbf410d
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoUsing isnan to define frequency.
Romain Forlot [Thu, 1 Jun 2017 07:07:43 +0000 (09:07 +0200)]
Using isnan to define frequency.

Change-Id: Iba93089dc982644898540b286892c436229f38d2
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoMissing pragma once...
Romain Forlot [Thu, 1 Jun 2017 07:07:15 +0000 (09:07 +0200)]
Missing pragma once...

Change-Id: I3088089af5a817ed68ef0276869a01d7323e6ae7
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
7 years agoImplement method to filter messages before pushing
Romain Forlot [Thu, 1 Jun 2017 07:07:00 +0000 (09:07 +0200)]
Implement method to filter messages before pushing

Change-Id: I94223ebead4a011a1fb56ed0c3676c433e01319b
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>