You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+24-4Lines changed: 24 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -82,8 +82,16 @@ mkdir build
82
82
cd build
83
83
```
84
84
85
-
To generate Makefiles, tell `cmake` which platform to build firmware for. For example, if you want to build
86
-
firmware for the Kia Soul:
85
+
To generate Makefiles, tell `cmake` which vehicle to build for by supplying the
86
+
appropriate build flag:
87
+
88
+
| Vehicle | Flag |
89
+
| --------------- | ---------------- |
90
+
| Kia Soul Petrol | -DKIA_SOUL=ON |
91
+
| Kia Soul EV | -DKIA_SOUL_EV=ON |
92
+
93
+
94
+
For example, if you want to build firmware for the petrol Kia Soul:
87
95
88
96
```
89
97
cmake .. -DKIA_SOUL=ON
@@ -95,7 +103,7 @@ cmake .. -DKIA_SOUL=ON
95
103
cmake .. -DKIA_SOUL=ON -DSTEERING_OVERRIDE=OFF
96
104
```
97
105
98
-
If steering operator overrides remain enabled, the sensitivity can be adjusted by changing the value of the `TORQUE_DIFFERENCE_OVERRIDE_THRESHOLD` in the corresponding vehicle's header file.
106
+
If steering operator overrides remain enabled, the sensitivity can be adjusted by changing the value of the `TORQUE_DIFFERENCE_OVERRIDE_THRESHOLD` in the corresponding vehicle's header file.
99
107
100
108
* Lowering this value will make the steering module more sensitive to operator override, but will result in false positives around high-torque areas, such as the mechanical limits of the steering rack or when quickly and rapidly changing direction.
101
109
* Increasing this value will result in fewer false positives, but will make it more difficult to manually override the wheel.
@@ -209,10 +217,15 @@ strange behavior while printing that does not occur otherwise.
209
217
# Controlling Your Vehicle - an Example Application
210
218
211
219
Now that all your Arduino modules are properly setup, it is time to start sending control commands.
220
+
212
221
We've created an example application, joystick commander, that uses the OSCC API to interface with the firmware, allowing you to send commands using a game controller and receive reports from the on-board OBD-II CAN. These commands are converted into CAN messages, which the OSCC API sends to the respective Arduino modules and are used to actuate the vehicle.
We've also created a ROS node, that uses the OSCC API to interface with the firmware from ROS messages, allowing you to send commands and receive reports in ROS.
226
+
227
+
[ROSCCO](https://github.com/PolySync/roscco)
228
+
216
229
# OSCC API
217
230
218
231
**Open and close CAN channel to OSCC Control CAN.**
@@ -273,6 +286,13 @@ In order to receive reports from the modules, your application will need to regi
273
286
When the appropriate report for your callback function is received from the API's socket connection, it will then forward the
274
287
report to your software.
275
288
289
+
Each module's reports are described in their respective wiki sections:
0 commit comments