1*** Variables ***
2${UART}                       sysbus.uart0
3${URI}                        @https://dl.antmicro.com/projects/renode
4
5${LSM330}=     SEPARATOR=
6...  """                                                 ${\n}
7...  using "platforms/cpus/nrf52840.repl"                ${\n}
8...                                                      ${\n}
9...  lsm330_a: Sensors.LSM330_Accelerometer @ twi0 0x1d  ${\n}
10...                                                      ${\n}
11...  lsm330_g: Sensors.LSM330_Gyroscope @ twi0 0x6a      ${\n}
12...  """
13
14*** Keywords ***
15Create Machine
16    Execute Command          mach create
17    Execute Command          machine LoadPlatformDescriptionFromString ${LSM330}
18
19    Execute Command          sysbus LoadELF ${URI}/nano33ble--LSM330.arduino.mbed.elf-s_3002380-fb992eb29148d2cf83ff43b1255024364f1e3d79
20
21*** Test Cases ***
22Should Read Acceleration
23    Create Machine
24    Create Terminal Tester    ${UART}
25
26    Execute Command           sysbus.twi0.lsm330_a AccelerationX 1
27    Execute Command           sysbus.twi0.lsm330_a AccelerationY -1
28    Execute Command           sysbus.twi0.lsm330_a AccelerationZ 2
29
30    Start Emulation
31
32    # those are raw values read from sensor's registers
33    # (this is how the original Arduino sample works)
34    Wait For Line On Uart     Acceleration in X-Axis : 16383
35    Wait For Line On Uart     Acceleration in Y-Axis : 49153
36    Wait For Line On Uart     Acceleration in Z-Axis : 32766
37
38Should Read Rotation
39    Create Machine
40    Create Terminal Tester    ${UART}
41
42    Execute Command           sysbus.twi0.lsm330_g AngularRateX 100
43    Execute Command           sysbus.twi0.lsm330_g AngularRateY -100
44    Execute Command           sysbus.twi0.lsm330_g AngularRateZ 250
45
46    Start Emulation
47
48    # those are raw values read from sensor's registers
49    # (this is how the original Arduino sample works)
50    Wait For Line On Uart     X-Axis of Rotation :1300
51    Wait For Line On Uart     Y-Axis of Rotation :52536
52    Wait For Line On Uart     Z-Axis of Rotation :32500
53
54