Difference between revisions of "Creating Fingerprints"

From comma wiki
Jump to: navigation, search
(new fingerprints location)
Line 22: Line 22:
 
4. <CTRL> + 'C' to break out of the process.
 
4. <CTRL> + 'C' to break out of the process.
  
5. Copy the DBC messages obtained from step 3 into the "_FINGERPRINTS" section of... /data/openpilot/common/fingerprints.py [Create new sub-section for car, or overwrite pre-existing fingerprint of similar car.]
+
5. Copy the DBC messages obtained from step 3 into the "FINGERPRINTS" section of... /data/openpilot/selfdrive/car/{car make}/values.py [Create new sub-section for car, or overwrite pre-existing fingerprint of similar car.]
(as of 0.4.7 the new location of the fingerprints is /data/openpilot/selfdrive/car/{car make}/values.py)
 
  
 
6. Turn off car's ignition, then powercycle EON.
 
6. Turn off car's ignition, then powercycle EON.

Revision as of 15:09, 17 July 2018

OpenPilot recognizes which car is connected by comparing the CAN signals read to lists in... /data/openpilot/common/fingerprints.py

Currently, different trim packages of the same model often have different fingerprints, which can require one to create their own fingerprint if Comma hasn't already included it.

This procedure does NOT teach you how to install OpenPilot, SSH, use VIM, etc.


1. Turn off car, connect Panda to car (normally via Giraffe), and connect Panda to EON running OpenPilot.

2. Run these commands in 2 separate sessions (SSH'd into EON)...

/data/openpilot/selfdrive/boardd/boardd
cd /data/openpilot/selfdrive && PYTHONPATH=/data/openpilot PREPAREONLY=1 /data/openpilot/selfdrive/debug/get_fingerprint.py

3. Turn on the car's ignition, and wait up to ~20 seconds to ensure all the appropriate DBC messages are seen, like this...

number of messages: 107
fingerprint 36L: 8, 37L: 8, 166L: 8, 170L: 8, 180L: 8, 295L: 8, 296L: 8, 426L: 6, 452L: 8, 466L: 8, 467L: 8, 550L: 8, 552L: 4, 560L: 7, 562L: 6, 581L: 5, 608L: 8, 610L: 8, 614L: 8, 643L: 7, 658L: 8, 713L: 8, 740L: 5, 742L: 8, 743L: 8, 800L: 8, 810L: 2, 814L: 8, 824L: 2, 829L: 2, 830L: 7, 835L: 8, 836L: 8, 863L: 8, 869L: 7, 870L: 7, 871L: 2, 898L: 8, 900L: 6, 902L: 6, 905L: 8, 913L: 8, 918L: 8, 921L: 8, 933L: 8, 944L: 8, 945L: 8, 950L: 8, 951L: 8, 953L: 8, 955L: 8, 956L: 8, 971L: 7, 974L: 8, 975L: 5, 993L: 8, 998L: 5, 999L: 7, 1000L: 8, 1001L: 8, 1014L: 8, 1017L: 8, 1020L: 8, 1041L: 8, 1042L: 8, 1044L: 8, 1056L: 8, 1057L: 8, 1059L: 1, 1071L: 8, 1076L: 8, 1077L: 8, 1082L: 8, 1083L: 8, 1084L: 8, 1085L: 8, 1086L: 8, 1114L: 8, 1132L: 8, 1161L: 8, 1162L: 8, 1163L: 8, 1164L: 8, 1165L: 8, 1166L: 8, 1167L: 8, 1175L: 8, 1227L: 8, 1228L: 8, 1235L: 8, 1237L: 8, 1279L: 8, 1552L: 8, 1553L: 8, 1556L: 8, 1557L: 8, 1568L: 8, 1570L: 8, 1571L: 8, 1572L: 8, 1595L: 8, 1777L: 8, 1779L: 8, 1904L: 8, 1912L: 8, 1990L: 8, 1998L: 8

4. <CTRL> + 'C' to break out of the process.

5. Copy the DBC messages obtained from step 3 into the "FINGERPRINTS" section of... /data/openpilot/selfdrive/car/{car make}/values.py [Create new sub-section for car, or overwrite pre-existing fingerprint of similar car.]

6. Turn off car's ignition, then powercycle EON.

reboot