Applications that can be used to do some testing on the device

Projects and/or hardware that can be used to do functional testing


Lava can be used to do functional tests on real hardware. It can be easily installed on PureOS, an FSDG compliant GNU/Linux distribution.


Labgrid has features similar to Lava but it is probably easier to learn because it's probably way easier to get started with it.


The OsmoGSMTester project is able to be interfaced with the Android RIL through ofono and can emulate a GSM network with the help of a compatible GSM base station or SDR.

This presentation from 2019 has many insights on what kind of issue we might expect in interfacing it with smartphones.


The Simtrace 2 project can be used, along with SIM card readers to programmatically feed a SIM card to a smartphone. This can be used to run test on real networks.

Replicant supported devices and testing


  • Antenna connector for the modem
  • The ability to control the device buttons in order to be able to programmatically power on and off the device, and trigger boots into the bootloader and recovery
  • Optionally a way to connect to the serial port, programmatically

Galaxy S2 (I9100)

  • The Galaxy S2 (I9100) has:
    • An antenna connector
    • The SOC serial port that is accessible behind the USB connector at a low voltage
    • A full size mini-sim (easier to interface with)
Holding the smartphone in place:
  • The smartphone could either be screwed on a metallic surface or an external case could be screwed on a metallic surface enabling the smartphone not to move.
SIM cards:
  • Simtrace 2 lacks screw holes so a way must be found to make sure that it doesn't move as it uses flex cables to interface with the SIM socket of the smartphone. That may be fixed in a subsequent hardware revision.

Serial port and USB:



Antenna connector and GSM tower or SDR:
The Galaxy S2 (I9100) has two antenna connectors:
  • One internal connector, TODO: find the connector type
  • One external connector, TODO: Find the connector type

Example setup

See also the links inside the Serial_port article for more background on how to get serial port access on devices like the Galaxy SIII (i9300) or the Galaxy S2 (i9100).

test infrastructure example (

See for the source of the file.

Using a device without a battery.

  • The i9305 could probably work at lower voltages like 3.3V through the battery connector, but it would require testing it. In that case it might also be a good idea to test it in all configurations (all hardware features being used, cpuburn etc).
  • The 4 pin 'FPC' style battery connector available from amazon, marketed as being for the 'S4 value edition i9515' ( is capable of contacting the i9300's battery.

USB modems

When trying to enable protocol tracing in modems we can connect the device modem (somewhat directly) to a laptop

  • Do we have samsung-ipc on top of the virtual UARTs?
  • The cbd daemon mentioned in the blog post about booting the Galaxy S7 modem doesn't list UART as main link though.
  • Adding the modem USB id when in debug mode (1519:0020) in a search engine shows various usb keys
  • Do phones like the Galaxy SII have smasung-ipc on top of the USB link or UART links when in debug mode?

Updated by Denis 'GNUtoo' Carikli 11 months ago ยท 34 revisions

Also available in: PDF HTML TXT