Skip to content

Commit 8faf1a5

Browse files
test
1 parent 678473c commit 8faf1a5

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

README.md

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,9 +73,19 @@ See the examples in `Examples -> SAE J1939` how to change the address, NAME or i
7373
This flow chart in code how this Open SAE J1939 library working. This example demonstrates how to send a request and get an answer.
7474

7575
- Step 1: `ECU X` is going to send a `PGN` to `ECU Y`. Interpret `PGN` as a function code
76-
Example: https://github.com/DanielMartensson/Open-SAE-J1939/blob/4297cff44107e5278f120243cb9a611eafe8c42f/Src/SAE_J1939/SAE_J1939-71_Application_Layer/Request_ECU_Identification.c#L18-L20
76+
https://github.com/DanielMartensson/Open-SAE-J1939/blob/4297cff44107e5278f120243cb9a611eafe8c42f/Src/SAE_J1939/SAE_J1939-71_Application_Layer/Request_ECU_Identification.c#L18-L20
7777
- Step 2: `ECU Y` is going to read that `PGN` message
78-
Example: https://github.com/DanielMartensson/Open-SAE-J1939/blob/4297cff44107e5278f120243cb9a611eafe8c42f/Src/Open_SAE_J1939/Listen_For_Messages.c#L18-L32
78+
https://github.com/DanielMartensson/Open-SAE-J1939/blob/4297cff44107e5278f120243cb9a611eafe8c42f/Src/Open_SAE_J1939/Listen_For_Messages.c#L18-L32
79+
- Step 3: The `PGN` function code will be interpreted
80+
https://github.com/DanielMartensson/Open-SAE-J1939/blob/678473c13cb7eb5fe46d5aac30a53efad4ccefd9/Src/SAE_J1939/SAE_J1939-21_Transport_Layer/Request.c#L20-L52
81+
- Step 4: The `PGN` function code is now interpreted as `ECU Identification`. Then `ECU Y` is going to end the `ECU Identification` to `ECU X`
82+
- Step 4.1: For 1 package message:
83+
https://github.com/DanielMartensson/Open-SAE-J1939/blob/678473c13cb7eb5fe46d5aac30a53efad4ccefd9/Src/SAE_J1939/SAE_J1939-71_Application_Layer/Request_ECU_Identification.c#L26-L42
84+
- Step 4.2: For Multi Package Message, the control byte can either be BAM or RTS. BAM is only used if you send to all `ECUs` e.g address `0xFF = 255`. But if the control byte is RTS, e.g address is not `0xFF`, then Open SAE J1939 is going to send a RTS and listen for a CTS response.
85+
https://github.com/DanielMartensson/Open-SAE-J1939/blob/678473c13cb7eb5fe46d5aac30a53efad4ccefd9/Src/SAE_J1939/SAE_J1939-71_Application_Layer/Request_ECU_Identification.c#L44-L58
86+
- Step 4.3: If `ECU Y` is sending a RTS, then `ECU X` will read the RTS and response with CTS back to `ECU Y`
87+
https://github.com/DanielMartensson/Open-SAE-J1939/blob/678473c13cb7eb5fe46d5aac30a53efad4ccefd9/Src/SAE_J1939/SAE_J1939-21_Transport_Layer/Transport_Protocol_Connection_Management.c#L22-L26
88+
- EC
7989

8090
# SAE J1939 functionality
8191
- SAE J1939:21 Transport Layer

0 commit comments

Comments
 (0)