Introduction
The Kiosk app is the default launcher for Android-powered ZoraBots-robots (e.g. James/Cruzr). This app is used as:
-
Main display
-
User-interface to configure features
-
Platform to launch other apps
Content of the kiosk
The following parts can be discerned in the main Kiosk app:

Menu-bar
At the top of the screen, the title-bar is shown with the title or (custom) icon of the current kiosk-dataset.
This section is used to:
-
Edit the settings of the kiosk-app
-
View the current battery-level
-
Move the robot to the (nearest) charging station
At the top of the Kiosk, the title-bar is shown with at least 2 controls:

The title-bar is used to:
-
Open the settings for the kiosk (1)
-
Show the battery-level
-
Move the robot to the (nearest) charging station (if the settings are unlocked)
The middle of the title-bar is used to either:
-
Display the title of the current kiosk or folder (if no custom icon is defined)
-
Display a (default) icon (if no title is defined)
-
Display a custom icon (regardless of the set (folder)-title)
Battery
In the top-right corner of the title-bar, the battery-icon is shown. Tap this icon to display the menu showing the option Go to charging station and the current battery-level in percentages.

Tap the option 'Go to charging station' to dock the robot with the nearest charging station. (1)
The nearest charging station needs to be clear and connected to the charger, otherwise James will not dock with it. |
Main Content
In the center of the screen, the content of the current kiosk is shown (e.g. Multimedia, Applications, …). The content of the kiosk can be changed (quite easily) using ZBOS Control and functions the same as a smartphone or tablet. Simply tap the icon to execute the linked action (show video, go to POI, start an app, …).
For more information on changing the Kiosk-dataset, see the manual for the Kiosk editor.
Available item-types
The following item-types can be configured for James:
Type | Function |
---|---|
Folder |
Container of other items |
Application |
Start an installed application |
Image |
Display an image stored on the robot |
Video |
Play a video once |
Audio |
Play an audio-file once |
Composition |
Start a composition stored on the robot |
Website |
Display a website using the included browser |
Mqtt |
Send a message to the mqtt-broker |
Shortcut |
Open another location in the folder (e.g. 'HomeScreen','Another folder',…) |
Call Help |
Place a phone-call using the set SIP-settings |
Video call |
Start a two-way video-call with a connected ZBOS Control |
Special types
By using the settings, the following items can be shown (or hidden):
-
Folder of all installed applications
-
Folder of all compositions stored on the robot
-
Folder of with POIs of the current map
-
Volume Controls
-
Voice-control
See the chapter Settings for more information on these features.
Toolbar
The buttom toolbar displays the optional and additional controls shown based on what is currently shown in the kiosk.

-
Navigation Controls
-
Microphone
-
Audio Controls
-
Volume Controls
Navigation Controls
The buttons controlling the navigation (Back and Home) will be shown when the kiosk is opened in a (sub-)folder.

The control can be used to:
-
Navigate back to the previous folder by tapping the
button.
-
Navigate to the home screen (or root folder) of the kiosk by tapping the
button.
These controls will not be shown in the main folder of the kiosk. |
Microphone
The microphone is shown when the robot can listen to voice-commands. This icon will not be shown:
-
If the option is turned off (see the chapter Advanced settings)
-
While the robot is streaming audio externally (either over VoIP or to ZBOS/Cloud Control)
-
While an app from the list of exclusions is in the foreground
After finishing the action that disabled the listening service, the service will be automatically restarted. This will cause the message I’m ready for use to be heard and shown again. |
Not listening |
Listening |
![]() |
![]() |
Audio controls

The additional buttons to control the playback of an audio-file will be only be shown when music is playing in the background.
-
Tap the pause-button (
) to pause the current audio-file.
-
Tap the stop-button (
) to stop the current audiofile.
Tapping the stop-button will also hide the audio-controls until another song is playing in the background. |
Volume controls

The additional control that allows the volume to be set from James will also be shown here.
Tap the icon to open an overlay where the current volume of the robot can be set.

The following actions are available in this overlay:
-
Tap anywhere on the slider to set the volume to the specified level.
-
Tap the
to close the overlay and return to the kiosk.
Default Kiosk
The default kiosk, installed on every ZBOS-powered robot contains samples of the capabilities of the robot.
The content of the default kiosk is as follows:

Customizing the Kiosk
The default kiosk only shows a few examples of types of actions the robot can perform. To fully customize the kiosk to better suit your (business-)needs, see the manual for the Kiosk editor
Settings
Tap the icon in the top right corner of the kiosk to open the options for James.
Note that some options can be locked by the system administrator to prevent unauthorized access.

The settings page will be shown when tapping on any of the options shown above. |
-
About
Tap this option to display the system information of James (Installation, Battery, Network, …). -
Settings
Tap this option to unlock and show the other settings. -
Language
Tap this option to change the display- and speech-language for James.
Only the About- and Language-pages do not require a PIN-code to change. |
General Settings
Tapping the option General in the settings shows the following settings:

Adjusting the volume
Tap the option Adjust volume to display the following popup:

This popup allows the following operations:
-
Slide the handle to the required position to set the new volume-level.
-
Tap outside the popup to apply the new setting for the volume.
Selecting a dataset
Tap the option Select data source to display a list of datasets for the kiosk available on the robot.
Tap on an available dataset to apply it immediately.
To upload new/updated dataset, see the section 'Kiosk Editor' for ZBOS Control. |
(1): The color-scheme used by the dataset will be applied immediately. The content of the dataset will only be shown once the main kiosk-screen is shown again.
Selecting a wifi-network
Tapping the option Wifi in the General settings shows the following page:
with the following sections:
(1): The name of the currently connected network will be shown at the top of this section
(2): Only the password for the hotspot can be changed.
List of available wifi-networks
The list of networks uses the following icons:
Connected network |
|
Protected network (1) |
|
Known network, not connected |
|
Non-protected network (open) |
(1): Only WPA2-Personal networks are supported at this time.
Tap a network in the list to enter the necessary credentials (1). Once the robot is connecting to the network, the status for the connection will be updated every 10 seconds.
If James won’t connect to a known network, the following sequence could solve this issue:
|
Current status of the wifi-network
The current status of the network will be shown. The current list of available statuses are:
-
Connected
James is connected to the wifi-network shown at the top of this section. -
Disconnected
James isn’t connected to any wifi-network. -
Connecting
James is trying to connect to the network (with the entered credentials).
Settings for the hotspot
Currently, only the password for the hotspot can be changed. |
Tap the button Hotspot in the General settings to display the following page:

On this page, the password for the hotspot can be entered using the following sequence:
-
Tap the password-field to enter a new password for the wifi.
-
Tap the option 'Show password' to show or hide readable characters.
-
Tap confirm to apply the new password (1).
(1): This may cause the hotspot to be briefly unavailable.
Tapping outside the popup will close the window without saving the new password. |
Refresh the current list
Tap the button Refresh to scan for wifi-networks in range again.
Close the settings
Tap the button Close to return to the settings-page.
Linking a robot to ZBOS Control or Cloud-system
Tap the option Link robot to account to show the connection-page again.
This page needs to be active when linking to the robot using the cloud-platform to link to the robot. |
Manage linked accounts
The setting Remote broker in the advanced-settings-page needs to be enabled in order to retrieve the list of connected user-accounts. |
Tap the option Managed linked account to display a list of accounts registered on the Cloud-based system that are allowed to use this robot.

Unlinking an account
Tap the remove-button () next to a registered user to disallow the user from accessing the robot.

Tap the option Yes in the confirmation modal to complete the unlinking of the selected account.
If the linked account is still connected, the setting will only be applied the next time the account is logged in. |
Return to the settings
Tap the back-button () to return to the settings.
Robot name
Tap the field 'Robot name' to display a modal asking for the name of the robot:

Enter a new name and tap the option 'Confirm' to apply the new name or tap the icon to discard the changes.
The new name will only be applied in ZBOS Control after re-connecting to the robot. |
Feature settings
Tap the option Features to show additional (optional) features for the main Kiosk-screen.

This page can be used to:
If the switch if turned to the right, the option is activated. This option is not always as clear when using custom color-schemes. |
These items cannot be customized individually and will use the default color-scheme of the kiosk. |
Show all installed apps
Tap the option Show all installed apps in the list of Feature settings to show or hide a folder in the kiosk with all the installed applications in the main Kiosk-screen (regardless of the selected dataset).

Show saved compositions
Tap the option Show saved compositions in the list of Feature settings to show or hide a folder in the kiosk with all the compositions stored on James.

Show saved locations
Tap the option Show saved locations in the list of Feature settings to show or hide a folder in the kiosk with all the POIs for the currently loaded map.

Show subtitle overlay
Tap the optin Show subtitle overlay in the list of Feature settings to show or hide the voice-overlay when the robot is talking.

Enable charging screen
Tap the option 'Show charging screen' in the list of Feature settings to show or hide the screensaver every time James is booted.

The battery-level (1) will only be shown if the robot is charging (directly from the adapter of charging station). The option to leave the charging station (2) will only be shown if the robot is connected to a charging station. |
Enable volume controls
Tap the option Enable volume controls to toggle the display of the volume control in the home screen of the kiosk, allowing the end-user to change the volume in the kiosk.

Inactivity-page
Tap the option Inactivity in the Settings-page to configure what the robot should do when/if the robot is idling.
The term Idling is used in this context to describe when the robot is showing the main kiosk and not detecting any input. If an app other than the kiosk is running, or if the settings-page is shown, this setting isn’t applied. |

On this page, the user can:
Enable/Disable the inactivity
Tap the option Enable inactivity actions to toggle whether or not the robot should do something when no input has been detected a set period of time.
By default, this option is turned OFF. |
Set the time until action is started
Tap the option Time until inactive to edit how long the robot should stay idle before the action will start. (From 1 - 60 minutes)

Scroll up or down to select a new value from the available options or tap and hold the timer-value to manually enter the number of minutes.
Tap Confirm to apply the new setting.
Set the wake-up options
Tap the option Wake robot with to configure when the robot will stop with the set inactivity-action.

-
Touch
If set, the robot will stop the action is the touchscreen is tapped. -
Face
If set, the robot will stop the action if a human face is detected in the camera. -
Speech
If set, the robot will stop the action if the wake-word has been detected (1).
Tap Confirm to apply the new setting.
(1): If the option Spoken commands is enabled in the Advanced settings.
Configure the inactivity-action
To define an action, the following steps are required:
-
Select a type of action (e.g. Go to POI or start a composition)
-
Select the correct parameter (e.g. name of the POI / composition) (1)
(1): This option will only be shown if the action can be further configured. For example, the option Go to screensaver doesn’t have additional options.
Select the type of action
Tap the option What to do when inactive to show a list of available actions for the robot to take if it has been idle for the set period of time.

Tap the option Confirm to apply the setting.
List of inactivity-actions
By default, the first item available will be selected (e.g. the first composition or the first POI). Take care to change the content immediately after setting the action to the correct data. |
Settings | Required additional parameters |
---|---|
Go to screensaver |
None |
Play video |
Video-file stored on the robot |
Play music |
Music-file stored on the robot |
Start composition |
Composition stored on the robot |
Open website |
URL of the website |
Start application |
Application installed on the robot |
Go to POI |
POI of the currently selected map |
Select a parameter
After defining an action (e.g. Start composition), additional info may be required (e.g. which composition to start).

These options will be generated dynamically, based on the type of action that has been selected. Tap an option in the list (e.g. the composition or POI) to link it to the action.
The option Should composition keep repeating will only be shown if a composition has been selected. Tap this option to repeat the composition until a wake-up-action has been detected. |
Stop item when robot is woken up
Toggle the option 'Stop item when robot is woken up' to stop the item immediately when the robot is woken up. Actions with an -button need to be tapped there to be stopped.
For example: Toggle this option 'ON' when playing a composition in infinite loop without the option 'Can be stopped' enabled.
Respect Quiet Hours
Toggle the option Respect quiet hours on to disable the inactivity during the quiet hours.
Domotics
This option is currently being developed, and cannot be customized by the end-user at this time. |
Advanced settings
These options should only be used by experienced personnel. |
Tap the option Advanced in the settings to display the following settings:

This page can be used to:
Restart the kiosk
Tap the option Restart kiosk to re-launch the kiosk and apply certain updates or setting-changes immediately (e.g. changing display-language).
Restart the robot software
This option has been provided for troubleshooting-purposes and should not be used lightly. |
After tapping this option, leave the robot alone until it says: Hello, I am ready for use. If the robot isn’t saying anything, or the language will not change to a specified installed language, tap the option Restart speech software instead. |
Tap the option Restart robot software to restart the RAIL app on the robot.
This option requires certain accessibility options in the Android-system to be enabled.
![]() |
The module launcher software is responsible for the communication between the Android-OS, the SLAM-system on the robot and the OS of the robot-system provided by the supplier (amongst others).
This does not equate to rebooting the robot. Should this not solve any issues, fully reboot the robot and check if the problem still persists before contacting our support-team. |
Open the settings for the Android-system
Doing this without contacting ZoraBots voids the warranty. |
Tap the option Open Android settings to open the settings for the Android-system. This will open the settings for the Android-system for the robot.
On a James-robot, the wifi for the native Android-system needs to be turned OFF. This function has been replaced by the RAIL app of ZoraBots and may cause conflicts when connecting to the robot. |
Restart the speech software
This option has been provided for troubleshooting-purposes and should not be used lightly. |
If no audio is heard, kindly check the volume-setting first. |
Tap the option Restart speech software to restart the speech-engine IF the robot should no longer speak or listen to voice-commands.
This does not equate to rebooting the robot, should this not solve any issues, fully reboot the robot before contacting our support-team. |
Move to charging station at low battery
Tap the option Go to charging station when battery level drops below to display a modal to the battery level at which the robot will move to the default charging station.

Move the slider to a new value and tap the button 'Confirm' to update the setting.
To disable this option, enter set the value to '0%'. |
Re-run the initial setup
Tap the option Reset robot setup to re-run the Initial setup.
If a wifi-connection is active, the wifi-page of the initial setup will not be shown. |
Toggle listening to the wakeword
If there is a room with a lot of echo, or if there is limited space for manoeuvring, the option that has James turn to the origin of the sound of the hotword can be turned off.
Tap the option Spoken commands to make the robot start/stop listening to the wake-word (and thereby voice-commands) (1).
(1): If this option is ON, James will not listen to voice-commands while the robot is turning. Only once the robot is facing the user will the robot start listening for possible voice-commands.
This requires the speech-engine to reboot. |
Toggle turning the robot to the user
Tap the option Rotate the robot when hotword is recognize to start/stop the robot turning to the user if the wakeword has been recognized.
This option can only be toggled if the option Spoken commands is enabled. In addition, if this option is still enabled while the setting Spoken commands is turned off, the robot will still turn to the sound of the voice stating OK James. |
Toggle remote access
Tap the option Remote broker on to allow user(s) remote access using the Cloud-storage system.
Turning this option ON requires the robot to reboot before the setting will be applied and a secure connection to the cloud-based services will be established. |
Phonemes
Only use this option if the face module app is absolutely required. |
Tap the option Phonemes to toggle sending additional information to a facial app to make the mouth of the avatar move as James is speaking.
Toggle uploading error-logs
Tap the option Upload ADB logs to toggle uploading logs to our cloud-based error-logging system.
These files are only used for troubleshooting purposes and do not contain explicit personal information. |
VoIP / SIP
This feature is currently only available on James. |
A valid SIP-service provider needs to supply the required credentials. ZoraBots cannot be held accountable for any service provided by external third-parties. |
Tap the option VoIP / SIP to show the configuration options for the VoIP-settings.
This option is only used by the Call for help item in the kiosk. This function can be linked to the button at the top of James or in the kiosk, but by default, this function is not linked. |

On this page the user can:
Toggle the VoIP on or off
Tap the option VoIP / SIP enabled to enable or disable the Call for help function on James.
Switch the type of VoIP-call
Tap the option Call type to select the type of call to make (primarily based on the current settings).
The current system only supports 2 types of calls, specifically Verklizan- and Default type calls. Most online SIP/VoIP service providers can be contacted using the Default call type. |
Enter the settings for the VoIP
Enter the credentials - provided by a support call center (e.g. Verklizan) or by an VoIP service provider (e.g. voipcheap.com) - in the required fields.
Type | Explanation | Example |
---|---|---|
VoIP / SIP Server |
The server to contact for sending/receiving the data |
sip.voipcheap.com |
(Local Profile) Username |
The username used to log in to the remote VoIP Service Center/website |
abcde |
(Local Profile) Password |
The password used to log in with the Username-account |
abc123 |
(Local Profile) Port |
The port number used by the remote provider to send/receive the VoIP- and credential data |
6005 |
Peer profile Username / Call destination |
The contact or service to connect to using the VoIP service(s) |
zyxwv |
Peer profile Password (Verklizan only) |
The password needed to connect to the Peer contact |
abc123 |
Peer profile port / Call destination port |
The port-number of the system/person to connect to |
5006 |
Device ID |
A unique identifier for the device used to connect to the VoIP service provider |
192837 |
When using the site voipcheap.com, make sure the setting Allow SIP Server access is enabled in the profile settings. Similar restrictions may apply to other voip-service-providers. |
View the VoIP Error messages
Tap the option Error messages in the VoIP settings page to display a list of error(s) during the VoIP call(s).

-
Tap the button Refresh to update the list of error-logs shown in the list.
-
Tap the back-button (
) to return to the settings.
Security
It is highly recommended to set a PIN-code on the settings of the Kiosk to prevent unauthorized personnel from accessing the settings of the Kiosk. |
To prevent any random person changing the settings of the robot, the settings for the kiosk can be locked (and unlocked) by setting a PIN-code.
ZoraBots is NOT responsible for keeping track of the PIN-code(s) of the robot. Make sure the PIN-code is securely stored and/or memorized. |
Tap the option Security in the settings to display the Security-page.

On this page, the following actions are available:
(1):(ONLY if a PIN code has been set)
Create a PIN-code
Tap the option Change kiosk settings password to create a new PIN-code if there is none set.


Agree to the security disclaimer and tap the OK-button to continue with setting a PIN-code.
Use the following sequence to create the PIN-code for the kiosk:
-
Enter the new PIN-code.
-
Confirm the new PIN-code.
Alter the PIN-code
Tap the option Change kiosk settings password to change the current PIN-code.

Use the following sequence to change the PIN code for the kiosk:

-
Enter the current PIN-code.
-
Enter the new PIN-code.
-
Confirm the new PIN-code.
Remove the PIN-code
Tap the option Remove settings password to remove the PIN-code.

This option will only be available if a PIN-code is set. |
Lock/Unlock the settings
A PIN-code must be set before this option is available. |
Tap the option Lock kiosk settings to toggle the locked state of the settings in the kiosk.

If this option is ON, the PIN-code must be entered before the settings can be opened. Otherwise, the settings can be altered without entering a PIN-code.
Language settings
The language settings can be changed at any time, regardless of the PIN-code security-setting.
Tap the option Language in the Kiosk or select the option Language in the settings to show the available languages for the display and speech-recognition.

On this page, the user can:
(1): This also determines the language James will listen to.
Change the display-language
Tap the option Select kiosk language to change the language in which the kiosk is displayed.

Tap one of the available languages in the list to change the display of the kiosk.
Change the speech-language
Tap the option Select speech language to change the language James speaks and listens to.

Tap one of the available languages in the list to change the language of the speech-engine of James.
This requires the speech-engine to re-start. Please wait until the robot states it’s ready for use again before continuing. |
Date & Time
Tap the option Date & Time to display the option for the date/time-settings for the robot.

On this page, the user can:
Set the Quiet Hours
Tap the option Quiet Hours to specify when James should be silent.

On this page the user can:
Adding a new timeslot to the quiet hours
To add a new timeslot to the quiet hours, please use the following steps:
Overlapping time-slots will be merged into a single entry (e.g. 20:30-21:30 and 21:00-08:30 will merge into 20:30-08:30) |
Tap the back-button ( ) to return to the settings.
Set a start-time
Tap the time-slot marked From to set a start time for a new timeslot:

Slide the hour and minute to enter a valid time and tap the button Confirm to enter the start-time.
Set an end-time
Tap the time-slot marked From to set the end time for a new timeslot:

Slide the hour and minute to enter a valid time and tap the button Confirm to enter the end-time.
Save the timeslot
Once both a start- and end-time have been entered, the Save-button will be enabled.

Tap the Save-button to add the timeslot to the quiet hours.

Edit an existing timeslot
Tap the button next to a timeslot to start editing the start- and end-time.

Tap the start- or end-times to edit their settings again. Tap the save-button ( ) to apply the changes.
Do NOT tap the cancel-icon ( ) as this will remove the timeslot. |
Set the NTP server
Tap the option NTP server to select one of the official NTP servers to set the date/time on the robot automatically if the robot is connected to the internet.

Tap the most accessible NTP server to sync the time on the robot with the globally set time.
This option requires internet-connectivity to sync the time on James with the NTP server. |
About
This option is always available, regardless of the PIN code settings. |
Tap the option About in the menu to show the current information on the system installed on James.

This page contains information on:
-
The current installed software version(s)
-
Network information
-
Hardware id’s
-
Battery status
-
Accreditation information
This information cannot be changed directly, and should only be used as a reference. |
Apps
Tap the option Apps in the menu to show the options for the installed apps.

On this page, the user can:
Open the app store
The app Uptodown App Store needs to be installed before this feature will open said app. |
Tap the option Open App Store to open the default app store. (1)
(1): Currently, the only app store available for James is the Uptodown App Store.
Stop James listening during apps
Tap the option Stop speech services for specific applications in the Apps-page to display a list of the installed apps.

Tap the checkbox next to the app to select when James shouldn’t listen to voice commands.
It is highly recommended to select any (video-)chat apps installed on the robot as listening to voice-commands may interfere with sending audio to the chat app. |
Updater
Tap the option Updater in the menu to update the system software and/or to install optional software or languages.

This page is used to:
-
Update the software to the latest version
-
Install additional speech-recognition languages (up to 3 in total)
-
Install speech-languages (up to 3 in total)
Software update
Tap the download-button ( ) next to the option Start manual software update to update the current software to the latest version.
Currently, only the default languages are available and can only be removed. |
Install additional speech-recognition languages
This option is currently in development and only shows the system default(s) for the languages.
Tap the download-button () to download an additional language for the robot to listen to.
Tap the clear-button () to delete the language.
The default language cannot be uninstalled. |
Install additional voices
This option is currently in development and only shows the system default(s) for the languages.
Tap the download-button () to download an additional language for the robot to speak.
Tap the clear-button () to delete the language.
Pinning
The term 'Pinning' in this case means to start something instead of displaying the default kiosk-screen. The app or composition will be shown instead of the default kiosk-screen.
Tap the option Pinning in the menu to update the system software and/or to install optional software or languages.

This page is used to:
-
Set the app to start by default
-
Set a composition to start by default
-
Set whether scheduled compositions should run if an app or composition is pinned.
-
Start pinning the app
Pinning an application
Tap the field Pinned application to show a list of installed apps that can be used to pin.

Tap an app in the list to set the app to start every time the 'home screen' is shown. Tap the icon to close the modal without applying the changes.
Certain default apps cannot be selected. |
Pinning a composition
Tap the option 'Pinned composition' to show a list of compositions saved on the robot.

Tap a composition in the list to start the composition every time the 'home screen' is shown. Tap the icon to close the modal without applying the changes.
Set parallel execution
Toggle the option Allow running scheduled compositions in parallel to enable or disable running compositions when another app or composition is already playing.
Start pinning
Tap the field Start pinning to start playing the pinned app and/or composition.
Disabling pinning
Tap the home-button () on the tablet to display a lock-icon (
) in the top-right corner of the screen.
Tap the -icon to display the default kiosk-screen again.
If the settings have been locked, the PIN-code needs to be entered before the app-pinning is disabled. |