How to monitor CAN BUS data with cheap ELM327
The main purpose of the ELM327 is not bus sniffing but you can configure it to monitor CANbus messages.
The official data sheet
Setting up an ELM327 for sniffing:
//Reset ELM327 device
ATZ
//Set default settings
ATD
//Set echo OFF
ATE0
//Set CAN protocol SAE J1939 CAN (29 bit ID, 250* kbaud)
ATSPB
//Set spaces OFF
ATS0
//Set linefeed OFF
ATL0
//Set long messages ON
ATAL
//Helps to start monitoring mode for some ELM327 devices
ATPBC001
//Set header ON
ATH1
//Start monitoring
ATMA
Some elm327 adapters and some vehicles does not support monitoring mode. Typical error is when dongle return "SEARCHING..." message and stuck.
As output you will some thing like that:
RAW can bus data: 19:38:26.988 39A80000000000022 19:38:27.004 45D000000000000EF 19:38:27.005 217250C066600FF00 19:38:27.006 2573900C00ED80715 19:38:27.007 39700800000908040 19:38:27.008 293000A27FF500007 19:38:27.008 28000000306006735 19:38:27.009 3B96E3885C86E1480 19:38:27.098 2A600C800BA00C018 19:38:27.198 20BC30487FF040000 19:38:27.199 24BC8C83DF4000000 19:38:27.199 2947C6CC801800080 19:38:27.200 2CB0000280007FF87 19:38:27.201 3CF90000000000000 19:38:27.201 255B60F130063B483 19:38:27.202 215C3FFC3B53BFF93 19:38:27.203 255B68E13006BB5C3 19:38:27.203 295243D005DFCB583 19:38:27.204 2B5000001FF040000 19:38:27.205 3150016140000EC27 19:38:27.205 422000000000000F1 19:38:27.286 29B3FF60070209300 19:38:27.505 4F80016072B07FC08 19:38:27.506 2172504066600FF00 19:38:27.506 3370AE03F00000000 19:38:27.507 45748FE3960069300 19:38:27.508 45D000000000000EF 19:38:27.508 397008000009180C0 19:38:27.509 2A600C800BA00C018
Usual cheap elm327 dongles has very limited message buffer, it's means you will get "BUFFER FULL" error message very often. So you'll have to restart monitoring by resending ATMA command.