Switching GND seems like a very bad idea. You'll have power going in on V+ and probably leaking out all sorts of ways through the GPIO protection diodes onto the bus risking damage. Keeping GND tied to the car's chassis would normally be a priority.
OBD is connected to car. Arduino connects to obd's 12v gnd and two digital pins. If I shouldn't switch GND or 12V (I tried that before - same thing) how can I turn off arduino
![schematic](https://cdn.statically.io/img/i.sstatic.net/ZCvaj.png)
simulate this circuit – Schematic created using CircuitLab
Figure 1. Switching the 12 V supply off (or disconnecting the ground) may power up the microcontroller board through the MCU's input protection diodes.
![schematic](https://cdn.statically.io/img/i.sstatic.net/gwRpK.png)
simulate this circuit
Figure 2. A rough representation of the microcontroller board with its onboard 5 V regulator and the protection diodes on the GPIO inputs of the MCU.
It should be clear from Figure 2 that if the 12 V power is switched off but the OBD is still powered up and feeding the microcontroller that the protection diodes will pass current out to the CPU's internal V+ "wiring" and power up the chip. The amount of power available will depend on the current sourcing capability of the OBD, the resistance of the diodes and what gets turned on in the MCU and your LCD.
Applying voltage to an un-powered chip is generally to be avoided.
![enter image description here](https://cdn.statically.io/img/i.sstatic.net/EYfLB.jpg)
Figure 3. The USB edge connector is designed so that the outer GND and +5 V contacts make before the data lines. This ensures that the USB slave device receives power before the data lines are energised. Image source: Crowd Supply.
You need a three-pole switch to cut the data lines as well as the power.