@ -2,9 +2,17 @@ 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					 "cells": [  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					  {  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "cell_type": "code",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "execution_count": 2 ,  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "execution_count": 1 ,  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "metadata": {},  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "outputs": [],  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "outputs": [  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    {  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					     "name": "stderr",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					     "output_type": "stream",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					     "text": [  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "kj/filesystem-disk-unix.c++:1703: warning: PWD environment variable doesn't match current directory; pwd = /mnt/c/Users/jnewb/AppData/Local/Programs/Microsoft VS Code\n"  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					     ]  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    }  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   ],  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "source": [  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "\"\"\"In this example, we use the public comma car segments database to check if vin fingerprinting is feasible for ford.\"\"\"\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "\n",  
				
			 
			
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
				 
				 
				
					@ -19,7 +27,7 @@ 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					  },  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					  {  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "cell_type": "code",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "execution_count": 3 ,  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "execution_count": 2 ,  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "metadata": {},  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "outputs": [],  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "source": [  
				
			 
			
		
	
	
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
				
				 
				 
				
					@ -54,7 +62,7 @@ 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					  },  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					  {  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "cell_type": "code",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "execution_count": 4 ,  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "execution_count": 3 ,  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "metadata": {},  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "outputs": [  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    {  
				
			 
			
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
				 
				 
				
					@ -66,7 +74,7 @@ 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    }  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   ],  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "source": [  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "from openpilot.tools.lib.logreader import comma_car_segments_source,  get_first_message\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "from openpilot.tools.lib.logreader import get_first_message\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "VINS_TO_CHECK = set()\n",  
				
			 
			
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
				 
				 
				
					@ -77,35 +85,35 @@ 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "    continue\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "  for segment in database[platform]:\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "    lr = LogReader(segment, default_source=comma_car_segments_source )\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "    lr = LogReader(segment)\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "    CP = get_first_message(lr, \"carParams\").carParams\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    "    VINS_TO_CHECK.add((CP.carVin, CP.carFingerprint))"  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   ]  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					  },  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					  {  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "cell_type": "code",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "execution_count": 6 ,  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "execution_count": 4 ,  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "metadata": {},  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   "outputs": [  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    {  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					     "name": "stdout",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					     "output_type": "stream",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					     "text": [  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 3FTTW8E31PRXXXXXX real platform: FORD MAVERICK 1ST GEN              determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 1FM5K8GC7LGXXXXXX real platform: FORD EXPLORER 6TH GEN              determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 00000000000XXXXXX real platform: FORD ESCAPE 4TH GEN                determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 3FTTW8F98NRXXXXXX real platform: FORD MAVERICK 1ST GEN              determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 1FTVW1EL4NWXXXXXX real platform: FORD F-150 LIGHTNING 1ST GEN       determined platform: FORD F-150 LIGHTNING 1ST GEN      correct: True\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 3FTTW8E99NRXXXXXX real platform: FORD MAVERICK 1ST GEN              determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 1FM5K8GC7NGXXXXXX real platform: FORD EXPLORER 6TH GEN              determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 1FM5K7LC0MGXXXXXX real platform: FORD EXPLORER 6TH GEN              determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 1FM5K8HC7MGXXXXXX real platform: FORD EXPLORER 6TH GEN              determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 3FMTK3SU0MMXXXXXX real platform: FORD MUSTANG MACH-E 1ST GEN        determined platform: FORD MUSTANG MACH-E 1ST GEN       correct: True\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: WF0NXXGCHNJXXXXXX real platform: FORD FOCUS 4TH GEN                 determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 1FMCU9J94MUXXXXXX real platform: FORD ESCAPE 4TH GEN                determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 1FTVW1EL4NWXXXXXX real platform: FORD F-150 LIGHTNING 1ST GEN       determined platform: FORD F-150 LIGHTNING 1ST GEN      correct: True\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 00000000000XXXXXX real platform: FORD ESCAPE 4TH GEN                determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 3FTTW8F98NRXXXXXX real platform: FORD MAVERICK 1ST GEN              determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 5LM5J7XC9LGXXXXXX real platform: FORD EXPLORER 6TH GEN              determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 3FMCR9B69NRXXXXXX real platform: FORD BRONCO SPORT 1ST GEN          determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 3FMTK3SU0MMXXXXXX real platform: FORD MUSTANG MACH-E 1ST GEN        determined platform: FORD MUSTANG MACH-E 1ST GEN       correct: True\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 1FM5K8HC7MGXXXXXX real platform: FORD EXPLORER 6TH GEN              determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 1FM5K8GC7NGXXXXXX real platform: FORD EXPLORER 6TH GEN              determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 5LM5J7XC8MGXXXXXX real platform: FORD EXPLORER 6TH GEN              determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 3FTTW8E31PRXXXXXX real platform: FORD MAVERICK 1ST GEN               determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 3FTTW8E99NRXXXXXX real platform: FORD MAVERICK 1ST GEN               determined platform: mock                              correct: False\n"  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 3FMCR9B69NRXXXXXX real platform: FORD BRONCO SPORT 1ST GEN          determined platform: mock                              correct: False\n",  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      "vin: 1FMCU9J94MUXXXXXX real platform: FORD ESCAPE 4TH GEN                determined platform: mock                              correct: False\n"  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					     ]  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    }  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					   ],