App 2.40.3: the signal recorder listens to the assistance properties
The ACC recording of 2.32.0 only polled, and the AAD_* properties read their defaults. The head unit's own assistance manager never polls them: it subscribes to each for change events, and a vendor HAL may fill a value only while someone listens. EVHardware gains a read-only listenToProperties and AssistBlock (global vendor properties 0x21x0A1xx, all 108 AAD_* ids); the recorder subscribes to that block for its three minutes and lists the properties heard, those with changing values first. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LhzAVaUyqcw5PkGjz4mWW6
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
package com.evsuite.hardware
|
||||
|
||||
import org.junit.Assert.assertFalse
|
||||
import org.junit.Assert.assertTrue
|
||||
import org.junit.Test
|
||||
|
||||
class AssistBlockTest {
|
||||
|
||||
@Test
|
||||
fun `the assistance manager's properties are in the block`() {
|
||||
// First and last int, the target speed and the object distance (floats).
|
||||
for (id in intArrayOf(0x2140A101, 0x2140A171, 0x2160A15B, 0x2160A12C, 0x2160A114)) {
|
||||
assertTrue("0x%08X".format(id), AssistBlock.contains(id))
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `other properties are not`() {
|
||||
for (id in intArrayOf(
|
||||
0x2140A0FF, // the block before
|
||||
0x2140A201, // the block after
|
||||
0x11400400, // a standard (system) property
|
||||
0x2340A101, // not global
|
||||
0x0140A101, // no group
|
||||
)) {
|
||||
assertFalse("0x%08X".format(id), AssistBlock.contains(id))
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user