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 and configured through BLE (Bluetooth Low Energy) by Freematics Emulator App available in App Store.
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 Emulator 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 Emulator App
Search “Freematics Emulator” in App Store and install it on your iOS device. The app works on iPhone 4s or later and iPad 2 or later which is capable of Bluetooth Low Energy communication. The App is free of charge.
3. Search and connect the emulator
Click the search icon on top-right and the App will search for nearby Freematics OBD-II Emulator through BLE. The found emulators will be listed. Tap on one (or the only one) to connect.
4. Plug in your OBD-II device
Once connected, you will be able to use your iOS device’s touch screen to adjust the value of PIDs and configure the emulator. The Custom tab allows you to add any supported OBD-II PIDs to the screen as a knob. This is done by tapping the top-left icon and choose the PIDs from the list.
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
- Freematics Emulator iOS App
- OBD-II PID Codes & Descriptions
- OBD-II Diagnostic Trouble Codes (DTC)
- OBD-II Readiness Monitors Explained