Also, removed per property ACL as it was based on client UID
Test: mm -j ; verified Car Service works
Bug: b/36649684
Change-Id: I7625a013dda8e3ebce5b86a253a8c1befe267c11
Use this infrastructure to move OBD2_LIVE_FRAME support over to the Vehicle HAL 2.0 layer.
This is useful in DefaultVehicleHal 2.0 to let the Emulator layer send/receive information about properties defined by later VehicleHal versions.
Additionally, support the notion that a custom property thusly defined might have logic more intricate than simply a property Id and an area Id,
via a custom handler object that supports get() and set() operations. A default handler object simply falls back to a stored VehiclePropValue, but
more complex implementations are possible.
Test: manual testing in Python:
import vhal_consts_2_0 as c
from vhal_emulator import Vhal
v = Vhal(c.vhal_types_2_0)
v.getConfig(c.VEHICLE_PROPERTY_HVAC_TEMPERATURE_SET)
print v.rxMsg()
v.setProperty(c.VEHICLE_PROPERTY_HVAC_TEMPERATURE_SET, c.VEHICLE_ZONE_ROW_1_LEFT, 70)
print v.rxMsg()
v.getProperty(c.VEHICLE_PROPERTY_HVAC_TEMPERATURE_SET, c.VEHICLE_ZONE_ROW_1_LEFT)
print v.rxMsg()
v.getProperty(0x11e00d00, 0)
print v.rxMsg()
plus
runtest Obd2LiveFrame.java
Change-Id: I9c342e6e2c9ff581beacd238a42780ca10f96d9c
0xdeadbeef is exactly 32 bits, so it is interpretted as an unsigned
integer which was causing a warning. Since it's a test value, I changed
it to 0xdead which is interpretted as a signed integer.
Test: pass
Change-Id: Ibb75b23461700d77158e2337b8a472e87629ad61
Implemented RecurrentTimer class that can be used in VHAL
implementations to trigger an event every X amount of time.
This make sense for continous properties.
Also added linkToDeath for VHAL listeners.
Test: unit tests added and ran
Change-Id: I4a2e0607ff6b15b3e7babbe3fbb9fff8d4e28838
Test: build and flash Mojave board with TARGET_USES_CAR_FUTURE_FEATURES=true.
Test: check that the property is displayed in the logs during startup.
Bug: 35628104
Change-Id: I8b5327ae255cd94ac78a0436aac06b32e3168c28
Test: verified events are now gets propagated to CarSensorManager
(toggle day/night mode in Emulator UI)
Change-Id: Ifc4a755c5f6d31f41ab26ebc873c66c43d9e234a
Fix: b/35926101
Add properties to HVAC_POWER_ON config string
Return NOT_AVAILABLE for properties in HVAC_POWER_ON config string when
power is off.
Change-Id: Icfa06aa169345e973d2e152aa6dbd8c14f3a5d17
- Create base communications interface
- Refactor socket calls to use SocketComm class
Test: Use python scripts and custom emulator to test communications
Change-Id: Ia401587223035e748991516a2285cc31cb71a9c9
the getService() and registerAsService() methods of interface objects
now have default parameters of "default" for the service name. HALs
will not have to use any service name unless they want to register
more than one service.
Test: builds
Bug: 33844934
Change-Id: I1fc92a29178befc1b2232cfcc4b13058d57cd798
Major changes / decisions:
- created empty IVehicle@2.1 interface to distinguish HAL impls
from client's (Car Service) perspective;
- created default 2.1 implementation that currently delegates all
calls to existing 2.0 implementation
- had to refactor a little bit 2.0 thus components could be esily
imported in 2.1
TOOD:
- move OBD and VMS code to 2.1
- decouple "DefaultVehicleHal.cpp"
- rename "DefaultVehicleHal" to Emulator (let's call things by their names)
b/34716856
Test: todo
Change-Id: Ib23650ca1277f0dfb24e5c789d65a19dce8b1abc
We need google shims on the vendor partition because they are providing
an implementation of a vendor defined interface. They were written by
google just as a courtesy/to make the transition easier. They're
basically a set for vendors to assemble their hal implementations
from.
Bug: 34135607
Test: marlin persist.hal.binderization on/off
Change-Id: I2e2af5af39264cf290259755bb9b2eb9827a21f5
Java intermediates are now created in the common rather than the device-
specific generated sources subdirectory.
Bug: 33842609
Test: make
Change-Id: I16af4cd19bf0b24baa0ad9ebfdb86b4d959c8672
Add OBD2_DTC_INFO property to VHAL. This property returns a list of timestamps for which freeze frames are available to be read.
Make OBD2_FREEZE_FRAME indexed on timestamp, such that one has to pass a timestamp to retrieve the freeze frame at that timestamp.
Add OBD2_DTC_CLEAR to delete some or all of the freeze frames stored.
Test: build
Change-Id: I30344ffd6e7527f076b3382c32f5507973c9985b
Add emulator functionality to DefaultVehicleHal:
- Create default list of properties based upon DefaultConfig.h
- Add socket that is reachable via ADB to set/get vehicle properties.
BUG: 29601815
Test: Tested with Python interface from host.
Change-Id: I6f8e4cba37d927565e10797875eb8f5a1840a94f