For Android: use a Bluetooth ELM327 adapter v1.4 or newer (see below)

For iOS: use a WiFi ELM327 adapter v1.4 or newer

In order to use Carista, you must have an ELM327-compatible device. This is a separate piece of hardware that you plug into your vehicle’s OBD2 port in order to allow Carista to communicate with your vehicle. Carista for Android should work with all ELM327-compatible Bluetooth devices (v1.2 or newer for OBD2 diagnostics, v1.4 or newer for manufacturer-specific diagnostics and customizations), but some low-quality devices may perform poorly or fail to connect at all. We do not sell any hardware; however, many online retailers like Amazon do, and here are some example ELM327-compatible devices:
Disclaimer: due to differences between device manufacturers, we cannot guarantee that these will work. Please look at reviews for specific sellers, etc. and make your own decision.
WARNING: Do NOT use fake devices that claim to use version 2.1 of ELM327. Practically all devices that claim version 2.1 are fake and do NOT work well even if you don’t use the v2.1 functionality. The most common symptom is that the connection just hangs and the app is stuck waiting forever.
Also, note that since OBDLink devices are NOT supported for our customization and advanced-diagnostics functionality, since they use an older ELM327 interface (v1.3a). They work fine for OBD2 diagnostics though.

Here are some sample Bluetooth ELM327 devices (for Android):

BAFX Products (TM) - PIC18F2480 Bluetooth OBD2 scan tool - For check engine light and other diagnostics - Android compatible
DBPOWER Super Mini V1.5 OBD2 OBD-II Bluetooth CAN-BUS Auto Diagnostic Tool
LYL® Vgate ELM327 v1.5 Bluetooth Mini Small Interface OBD2 Scanner Adapter Torque Android