Freematics OBD-II Emulator MK2 is world’s smallest OBD-II emulator with KWP2000, ISO9141 and CAN bus simulation. It provides an 16-pin female OBD-II port identical to that of a real car and responds to requests for OBD-II PIDs (including DTC and VIN) from plugged-in OBD-II compliant device. It emulates up to 6 active vehicle diagnostic trouble code (DTC) for Mode 03, 07, 0A respectively as if a real car has when encountering a component malfunction or fault.
Freematics OBD-II Emulator is practically useful for OBD-II related application development on desk. Once extended with external control, it can even be used to provide a standard OBD-II port for vehicles that don’t have one and thus existing OBD-II device/software can work with the vehicle.
The emulator can be controlled by GUI software via a USB cable or wirelessly by iOS device (iPad/iPhone) with our Freematics Emulator App. It can also be programmatically controlled via USB or serial UART interface for further development.
- Standard 16-pin OBD-II female port (powered)
- Implementing data bus (CAN, KWP2000, ISO9141-2, J1850 PWM, J1850 VPW) used in vehicle
- Simulating OBD-II Mode 01 PIDs (0100-0163)
- Simulating OBD-II DTC (mode 03/07/0A, up to 6 active DTCs)
- Simulating OBD-II readiness monitors
- Simulating VIN data (Mode 09)
- Control by GUI software (via USB), iOS App (via BLE) or programmatically (via serial UART or USB)
- Firmware upgrade via USB
Following protocols are implemented:
- CAN/ISO15765 500Kbps/11bit
- CAN/ISO15765 250Kbps/11bit
- CAN/ISO15765 500Kbps/29bit
- CAN/ISO15765 250Kbps/29bit
- KWP2000/ISO14230 Fast
- KWP2000/ISO14230 5Kbps
- J1850 VPW (optional)
- J1850 PWM (optional)
Please note the emulator does not actively generate CAN signals without presence of OBD device.
The emulator has following sockets on its enclosure:
- 16-pin female OBD-II port
- DC input jack
- USB port
- I/O socket
The I/O socket (6-pin or 4-pin XH-2.5) provides an interface for serial TTL connection as well as DC power supply. This makes it possible for a micro-controller like Arduino to manipulate the emulator’s states and data in real-time via AT command-set. For 6-pin socket (J1850 version), the pin definitions are Tx, Rx, GND, 3.3V, 5V (left-to-right). For 4-pin socket, the pin definitions are Tx, Rx, GND, 5V (left-to-right).
Open-Source GUI Software
An open-source GUI software is provided for adjusting OBD-II PIDs, DTC and VIN through a Windows PC (MAC and Linux version soon). The software can be downloaded HERE. Please extract the downloaded compressed file and run FreematicsEmulator.exe to launch the GUI.
The emulator can be controlled via BLE (Bluetooth Low Energy) with our Freematics Android App.
The new iOS App will be available soon.
To start using the emulator with PC GUI, follow these steps:
1. Connect DC 12V power adapter to the emulator
The emulator requires DC 12V power supply. If your connected OBD-II device will be power consuming, a power adapter with higher output current rating is necessary. The DC input socket is located beside the USB port.
2. Plug in USB cable and connect to PC
Driver is normally automatically installed on Windows 7/8/10. For Windows XP, please download the driver from here.
3. Open Freematics OBD-II Emulator GUI software and connect with the emulator
Run FreematicsEmulator.exe to launch the GUI software. Once the GUI is loaded, it will automatically attempt to connect with the emulator. Once connected, the Connect button will turn into Disconnect.
4. Plug in your OBD-II device (with OBD-II male connector) into emulator’s OBD-II female port
Your OBD-II device should then work as if plugged in the OBD-II port of a real car. You can use the GUI to change the value of OBD-II PIDs, state of readiness monitors, diagnostic trouble code (DTC) and VIN.
To start using the emulator with Freematics App, follow these steps:
1. Connect DC 12V power adapter to the emulator
The emulator requires DC 12V power supply. Connect the power adapter to the emulator.
2. Install Freematics App
Download and install Freematics App on your android or iOS device.
3. Search and connect to the emulator
Once the App is launched, it will search for nearby emulator and found devices will be listed on screen. Tap Connect button to connect and the control interface will be loaded.
4. Plug in your OBD-II device
Once connected, you will be able to use your Android or iOS device’s touch screen to adjust the value of PIDs
Serial Control Interface
The communication between Freematics OBD-II Emulator and the host device (PC or mobile devices) is done by a pre-defined text-based command set. Our GUI software is just implemented on this. If you would like to develop your own GUI software or host control hardware, please refer to Freematics OBD-II Emulator Control Command Set.
The emulator is powered by a DC power source up to 30V. A power adapter rated at 12V/1A with 5.5/2.1mm connector (center positive) is supplied on demand as courtesy without warranty. It is recommended to use a DC power supply with higher rating especially when you need to use some OBD-II devices requiring high power surge. A voltage adjustable power source is useful for emulating voltage change in real cars. Please also note the input voltage is bypass to the OBD port pin 16 (battery power pin).
- Freematics OBD-II Emulator MK2 x 1
- USB Cable x 1
- DC 12V Power Adapter (5.5/2.1mm) x 1
- Quick Start Guide
- Freematics Emulator GUI Software Download
- USB Driver Download
- Freematics OBD-II Emulator Control Command Set
- OBD-II PID Codes & Descriptions
- OBD-II Diagnostic Trouble Codes (DTC)
- OBD-II Readiness Monitors Explained