This guide walks you through connecting a Nexmosphere controller to an Android OnSign Player and configuring the serial port and interactivity rules.
Connecting the Controller
- Have your Nexmosphere devices ready and connected to the Nexmosphere controller (e.g., XN-185).
- Connect the Nexmosphere controller via USB to the Android Player hardware.
A popup will appear asking how to handle the USB-Serial Controller:

Select Always open OnSign TV when USB-Serial Controller is connected and tap OK. This ensures Android remembers the setting after the device reboots.
Setup the Player Serial Port
- Open the Player Manager and select the player to configure.
- Click Settings.
- Scroll down to Serial Port Settings (RS-232).
- Click + Add Port.
- Set Port type to Nexmosphere.
- Select the Port from the dropdown. Choose an option that contains the string
usbin the path. Then remove the last number from the path — for example,/dev/bus/usb/002/002should be changed to/dev/bus/usb/002. Android may change this last number in certain circumstances.

- Enter an Alias — the port name used to reference it in Apps and other OnSign settings. The default value is Nexmosphere.
- Click Save.
Configure Interactions
Once the serial port is configured, OnSign parses all incoming serial data through the Local API. You can create interactivity rules to trigger content based on sensor events.
For example, in a lift-and-learn scenario with RFID tags, the controller sends:
-
XR[PU001]— when tag 1 is lifted -
XR[PB001]— when tag 1 is placed back
Your device's event strings are listed in its user manual. Use the appropriate event string when configuring triggers in OnSign.
To configure an interactivity rule:
- Go to Campaign Interactivity or Player Interactivity.
- Click + Add Trigger and give it a name.
- Set When to Local API.
- In the content field, enter the string pattern that should trigger the interaction.
Important: The pattern is matched as a regular expression. Special characters must be escaped with a backslash (\). Characters that require escaping include: [ ] ( ) { } * + ? | ^ $ . \

Troubleshooting
- The device is not detected: Disconnect the cables, reconnect the device by repeating the setup process, and refresh the page before trying again.
- Player does not detect the Nexmosphere controller: The Android firmware may not support USB-over-serial connections. Verify by checking if any USB-serial device appears after connecting. If nothing appears, the firmware does not support this connection type.
- Serial port connection drops after reboot: The "Always open OnSign TV" permission was not selected when prompted. Reconnect the controller USB, wait for the popup, and select the option again.
- Port not listed in the dropdown: The controller was not connected before opening the serial port settings. Connect the hardware first, then navigate to Settings > Serial Port Settings.
-
Interactivity not triggering: Two common causes: (1) the alias configured in your Player Settings must match exactly what is set in the App — check for typos or extra spaces; (2) the pattern in the Which one field uses regular expressions, so special characters must be escaped with a backslash (
\). Characters that require escaping include:[ ] ( ) { } * + ? | ^ $ . \