This manual requires the following versions to be installed on the robot: Kiosk v1.3; RAIL v1.2

James is an autonomously moving robot, that listens to voice-commands and responds or acts accordingly. It can move to a location or say the current weather report for example. The software for James has been designed to respond to the voice(s) of user(s), to let the robot move to specified locations or Points-Of-Interests (POI’s) and/or show information on the display.

James can also be used to control certain parts of a smart home (i.e. turn the lights on or off, open doors, …​). These advanced features require customisation of the smart home and will therefore not be detailed in this manual.

James will continuously scan the immediate environment using laser-detection (called LIDAR-system). This system is installed in the base of the robot and the generated map can be adjusted using the ZBOS Control App (available for Android- or iOS-systems) or using the online cloud-control website (1), meaning the owner can add areas where James is not allowed to enter or to place James in the correct position on the map.
James can also display the map on the tablet-screen by using the SLAM app, which is installed by default. This feature is provided so the user can follow the route that James will take to a POI.

James will try to position itself on the loaded map when it is booted up. By connecting James to the charging station whenever the robot is (re-)started, the robot’s position will be re-calibrated to a fixed point, thus improving the reliability of the mapping system. The ZBOS Control App is available for Android and iOS-systems. These tablets or smartphones are not included in this package and need to be bought separately. For more information on the required specifications for the tablets, see the chapter 'Recommended system requirements'.
To provide the latest installations on the robot, updates will be installed periodically if/when the robot is connected to the internet.


The following terminology is used throughout this document:


A tablet or smartphone where the ZBOS Control App has been installed.


An application to be installed (usually on the robot).


Custom-made data unique for each user/device (such as compositions or datasets).


An application showing other applications that will be run on the robot.

Module launcher

An application installed on the robot to allow communication between the different apps.

Quiet hours

The quiet hours are the times when the robot should not be in use, and certain automatic features are disabled during this time (such as notifications).

Getting started

This section will describe how to start using James straight out-of-the-box.

The original box is needed should the robot need maintenance.


Out of the box

First of all, how to get the robot out of the box?

Lift the cover

Lift the outer cardboard cover up so the styrofoam protection is shown.


Place it to the side before continuing.

Remove the accessories

Remove the charging station (1), power-cable (2) and quick guide (3) from the top of the box.


Put them aside for now.

Remove the styrofoam cover

The following steps should be used to unpack James.

  • Lift the cover off the robot

  • Split the middle styrofoam cover to reveal James

  • Lift James out of the base-styrofoam


Re-assemble the box

Use the earlier steps in reverse to re-assemble the box.

  1. Re-attach the middle cover(s) on the base of the box

  2. Place the styrofoam cover on top

  3. Cover the styrofoam with the cardboard cover


Charging James

Once removed from its protective cover, the robot needs to be fully charged before it’s first use. It is recommended to use the charging station.

The following precautions should be taken into account when using the charging station:

  1. During the setup, connect the power adapter to the power grid before connecting it to the charging station.

  2. Don’t expose the charging station to direct sunlight. This may cause the robot to be unable to find the charging station.

  3. Ensure the eye is always visible to the robot.

The 'eye' on top of the charging station needs to be spotted by the robot to find the charging station. In case the socket is on the other side of the charging station, make sure the cable is behind the sensor on top of the charging station.

Placing the charging station

Before placing the charging station, ensure the intended location meets the following requirements:

  • Plenty of clear space for the robot to safely dock with the charging station

  • A flat floor, so the robot can dock with the charging station

  • A flat back-surface for the charging station to lean against (no tilting)

For example:


Once the location has beeen validated, the charging station can be placed.

ValidSetup temp

Charging James on the charging station

For James to always have its correct position on the loaded map, the robot should always be started while on its charging station.

Move the robot by hand when it is still turned off so the connectors at the back of the robot connect to the connectors on the charging station.

Charging indicator

The power button will light up in blue if the robot is charging.


Recharging James

You can tell James to go to the charging station, press "Go to charging station" on the battery icon in Kiosk, or use ZBOS Control to go to a charging station.

Alternatively, if you want to manually move James to the charging station:

  • Turn the robot off

  • Connect the robot to the charging station

  • Turn the robot back on

This is to ensure that James does not lose its current position on the map.

Initial setup

Once the robot has been connected to the charging station and is charging, the initial setup can be performed. Push the power-button to turn James on.
Once the robot has been turned on for the first time, the initial setup will start.

Language Selection

The first step is to select the language the robot will use. By default English, French and Dutch are available.

This language will be used for:

  • The remaining setup-display (display-language)

  • The language James will listen to (voice-commands)

  • The default language when rebooting the robot (initial microphone configuration and display)

  • The subsequent default-language for starting kiosks and/or voice-commands (These options can be changed later in the settings).

Microphone Calibration

The next step is to calibrate the microphone. The microphone needs to be calibrated every time the robot is booted.

Calibrate the microphone by following the instructions shown on the screen.


Configure the WiFi

The next step is to configure the WiFi and/or hotspot.

Tap the option Hotspot (1) to calibrate the password for the hotspot of the robot.

Tap the name of the network (2) to enter the password for the local wifi-network.


Connecting to the robot

Finally, a page containing the information to connect to the robot is shown.


Scan the QR-code shown in the connection-page of ZBOS Control to connect to the robot. For more information, see the manual for ZBOS Control.


James is a humanoid robot built by Siasun and equiped with ZoraBots operating system (ZBOS). The main focus when developing James was to make a robot that can guide users to specific locations.

James will interact with the user using the tablet and the microphones and speakers installed in the head and body of the robot. James will also continuously scan the environment using the SLAM-system installed in the base of the robot.



James has the following specifications:


420 mm x 420 mm x 800 mm (LxWxH)


17 kg (including the packaging)

Base station

240 mm x 85 mm x 95 mm (LxWxH)

Operating temp

0 - 40 °C

Operating humidity

20 - 90%

Maximum operating time

9 à 12h


The tablet mounted in the "head" of James has the following specifications:

CPU Model


Number of cores

8 (Qualcomm MSM8953)

Clock speed

2.0 GHz


3 GB

Internal Storage

32 GB


10" capacitive high sensitivity screen


13 MP


The following peripherals have been connected to the tablet:




Microphone array

6 microphone ring-array

At the top of the robot


5W hifi speakers (x2)

At the side of the main body


The peripherals contain the following specifications:

Audio-detection range


Echo cancellation

Supported (available)

Speech enhancement

Supported (available)

Voice wake-up

Supported (available)


James can connect to other devices using the following specifications:


2.4G / 5G Dual Band (802.11 b/g/n)




Bluetooth Version 4.0

Wifi specifications

The wifi-router (installed in the main body of the robot) has the following specifications:


MT7628AN + MT7612E

Main frequency


Wireless transmission rate


2.4GHz channel selection


2.4GHz channel bandwidth optional

20M 40M

5GHz channel selection

36 40 44 48 149 153 157 161 165

5GHz channel bandwidth optional

20M 40M 80M


The SLAM-system in the base of the robot has the following specifications:



2 (at the side of the base)


1 (scanning to the front)

Power connector

1 (at the back of the base)

Power button

1 (at the back of the base)

Microswitches (1)

2 (at the back)

IR-detector (1)

1 (at the back)


Tripod configuration

(1): These are needed to make the robot dock with the charging station.


The installed Lidar-unit has the following specifications:

Item Unit Min Typical Max Comments

Distance range

Meter (m)




Based on white objects with 70% reflectivity

Angular range





Distance Resolution





<1.5 meters

Sample Frequency





Sample Duration






Scan Rate





The rate is for a round of scan. The typical value is measured when RPLIDAR takes 400 samples per scan.

Laser wavelength





Infrared Light Band

Laser power

Milliwatt (mW)




Peak power

Pulse length

Microsecond (us)






The battery installed in James has the following specifications:


Lithium-Ion 18650






187.2 Wh

Interacting with James

The user can give James instructions or ask questions using the following methods:

Voice Commands

James can be controlled by using voice-commands.

James will listen to pre-programmed voice commands after the wakeword "OK James" has been understood. Stand in front of the robot for the best results.

Supported languages

The currently supported languages on James are the following:

Language ASR / Listening TTS / Speaking




Thai (th-TH)






Arabic (ar-WW)



French (fr-FR)



English (en-US)



English (en-GB)



Dutch (nl-NL)



German (de-DE)






Chinese (zh-CN)



French (canadian)



The language the robot will listen to can be set in the option speech language of the kiosk. When connecting ZBOS Control and stating messages, only the TTS languages that the robot can speak will be shown.


The following speech-related settings can be found in the advanced-section of the settings.

  1. Listen to voice-commands

  2. Rotate the robot when hotword is recognized

These options can be toggled on or off to suit the user’s needs.


The microphone at the bottom of the home-screen on the tablet can also be used as an indicator to see if James is listening.

Not listening




Prerequisites for the voice commands

Not all voice commands can be used all of the time. Some voice-commands will only be available once the following conditions have been met:

  1. Settings of the robot

The setting 'Spoken commands' in the general settings needs to be turned ON before the robot will respond to the wakeword "OK James" and start listening.

If the option 'Spoken commands' is off, the option 'Rotate the robot when hotword is recognized' will be greyed out and unable to be changed.
  1. Internet

Certain features require an active internet-connection to retrieve the latest data and to keep up-to-date.

For example:

  • Weather

  • Verklizan or VoIP/SIP

  • Installed apps

  1. VoIP

In addition to having a connection to the internet, a stable connection is needed to make calls using VoIP-services (the minimum bandwidth needed for a VoIP-call is between 85 and 100 kpbs).

The section VoIP / SIP in the settings has been created to enter the account-information needed to call the Verklizan helpcenter (or any other VoIP-service). A SIP-account needs to be registered at Verklizan before any VoIP-calls to their help-center can be made.

Voice Commands

The following is (an extract of) the list of voice-commands.

Command Actions taken by the robot

Call help

Triggers an alarm at Verklizan. (1) (2)

I need/want help

What is the date of today
What is the date (today)

The robot states the date according to location specifications.

What year is it?

The robot states the current year.

What’s the day?
Which day are we today?

The robot states the day of the week.
(e.g. Monday)

What time is it?
How late is it?

The robot states the time as hour + date.


The robot states a self-introduction.


The robot says goodbye.

Introduce yourself
Who are you

The robot introduces itself

What will the weather be like this morning/afternoon/evening?

The robot states the weather forecast for the specified time of day.

What is the weather for today
What is the weather forecast for today

The robot states the weather forecast for the day.

What will the weather be like (the day after) tomorrow

The robot states the weather forecast for the specified date.

Go to <Point-Of-Interest>

The robot will move to the registered POI (3).

Enable/disable offer more help feature

The robot will (no longer) state the message ‘Can I help you with something else’.

(1): This option is only available for robots where this option has been installed and configured.

(2): Confirmation is required before the alarm will be triggered and is only available if a valid SIP- and VoIP is configured in the settings of James.

(3): The correct map needs to be loaded on the robot.

Advanced features

James can be further customized so the following options can be used:

  1. Turn to the source of the voice

James will turn to the direction of the voice if the wake-word has been understood and the option ‘Rotate the robot when hotword is recognized’ is enabled.

  1. Display the command in the kiosk

If the kiosk-app (home screen) is active, the recognized command will be displayed on the tablet.

  1. Start an activity when no input has been detected (inactivity)

James can start an activity (composition, moving to charging station, …​) if no input has been detected by the user for some time. This action can then be stopped by any user-interaction (speech, tapping the tablet, …​)


The tablet is the main interface for interacting with James for using the more advanced features (e.g. starting compositions, opening folders and apps, …​)

The kiosk-app will also function as the home-screen for the tablet.


The app contains the following sections:

  1. 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

  1. 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.

  1. Navigation

If a folder is opened, additional navigation-icons will be shown to navigate to the previous folder or back to the main screen.

  1. Listening

At the bottom of the kiosk, a microphone-icon is shown. This icon can be used to:

  • Indicate if James is listening

  • Toggle listening on or off by tapping the icon

The microphone will only be shown when the robot can listen. The icon will not be shown while audio is being streamed using VoIP or if the setting is disabled for instance.

Not listening




  1. Audio-controls

If music is playing, the kiosk-screen will not be hidden. Instead, additional control will be displayed to stop or pause the currently playing music.

These controls will be removed once the music finished playing.

  1. Volume Control

If the option Enable volume control is enabled in the settings of the kiosk (feature-page), an additional icon will be shown indicating a volume control overlay. To change the volume, tap the button and an overlay will be shown with the currently set volume filled in. Slide the volume left or right to change the volume to the new accepted values.

Changing this option will also change the setting in the connected ZBOS Control (barring some lag).


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)


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.

Content of the kiosk


The main part of the kiosk (2) contains all the shortcuts to (folders containing) apps, video’s, websites, …​ To create a custom dataset with the items, see the chapter 'Kiosk Editor' for ZBOS-Control.

Available types

The main content-screen can contain the following items:

Type Function


A container for other icons.


An app installed on James will be launched.


An image stored on James that will be displayed until the user touches the screen.


A video-file stored on James that will be displayed until the user touches the screen or the content is fully played.


A music-file stored on James that will be played in the background.
This will also show the additional audio-controls in the bottom-right corner.


A composition stored on James that will be played.


A website that will be displayed in the main kiosk.


A message can be specified to be sent directly to the (built-in) mqtt service.
This feature is (currently) being remodelled to incorporate domotica.


A link to an already existing item in the kiosk (e.g. 'Home screen').

Call Help

A VoIP-call will be started using the VoIP/SIP-settings configured on the robot.

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:



Each icon in the main screen can be customized in both content and styling.

Each icon in the grid can contain an icon to further help with visually identifying the content on James.

This icon will be shown in the bottom-right of the main icon.


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.
  1. About
    Tap this option to display the system information of James (Installation, Battery, Network, …​).

  2. Settings
    Tap this option to unlock and show the other settings.

  3. 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.
List of available settings

The list below shows the currently available settings-categories:

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:

  • Forget the network

  • Close the wifi-page

  • Open the wifi-page and enter the necessary credentials for the network again.

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:

  1. Tap the password-field to enter a new password for the wifi.

  2. Tap the option 'Show password' to show or hide readable characters.

  3. 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 (md close) 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 (ios arrow back) to return to the settings.

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.


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.



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


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.
Respect Quiet Hours
This option is currently in development, and is used purely as a placeholder.
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 Module Launcher app on the robot.

This option requires certain accessibility options in the Android-system to be enabled. PermissionsRequired Tap OK to open the required Android settings and tap the option

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 Module Launcher 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.
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.
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.
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. - in the required fields.

Type Explanation Example

VoIP / SIP Server

The server to contact for sending/receiving the data

(Local Profile) Username

The username used to log in to the remote VoIP Service Center/website


(Local Profile) Password

The password used to log in with the Username-account


(Local Profile) Port

The port number used by the remote provider to send/receive the VoIP- and credential data


Peer profile Username / Call destination

The contact or service to connect to using the VoIP service(s)


Peer profile Password (Verklizan only)

The password needed to connect to the Peer contact


Peer profile port / Call destination port

The port-number of the system/person to connect to


Device ID

A unique identifier for the device used to connect to the VoIP service provider


When using the site, 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 (ios arrow back) to return to the settings.

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:

  1. Enter the new PIN-code.

  2. 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:


  1. Enter the current PIN-code.

  2. Enter the new PIN-code.

  3. 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.
Remove an exisiting timeslot

Tap the cancel-icon ( ) to remove a timeslot from the quiet hours.

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.
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.

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.

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.

Install additional voices

This option is currently in development and only shows the system default(s) for the languages.

Bottom bar

The buttom bar displays the optional and additional controls shown based on what is currently shown in the kiosk.

  1. Navigation Controls

The buttons controlling the navigation (Back and ToHomeScreen) 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 ios arrow back button.

  • Navigate to the home screen (or root folder) of the kiosk by tapping the ios home button.

These controls will not be shown in the root of the kiosk.
  1. 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




  1. 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.

  1. Tap the pause-button (md pause) to pause the current audio-file.

  2. Tap the stop-button (md square black) to stop the current audiofile.

Tapping the stop-button will also hide the audio-controls until another song is playing in the background.
  1. Volume control


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 md close to close the overlay and return to the kiosk.

ZBOS Control App

Please refer to the ZBOS Control manual (hosted online) for more information on using ZBOS Control to interact with James.


This chapter describes the safety precautions that should be taken when using James.

Charging station

The following setup should be used to connect the charging station to the power grid:

Insert the power adapter into the power outlet before connecting the charging station to the power adapter.

Make sure there is at least 40cm on each side of the charging station and 1m in front of it.


The following precautions must be taken when setting up the charging station:

  • Charging station must be stable.

The charging station must be placed on a level floor, with straight baseboards (± 10cm).

Incorrect Incorrect Correct




  • Do NOT expose the base station to direct sunlight. This may cause the robot to be unable to find the charging station.

  • Make sure the robot can clearly see the eye on top of the charging station.

The eye on top of the charging station needs to be spotted by the robot to find the charging station. In case the socket is on the other side of the charging station, make sure the cable is behind the sensor on top of the charging station.

Safety guidelines

General precautions

James is not a toy, do not leave children (<8 years) unattended with the robot.
  • Do not spill water or other fluids on the robot. This may cause a short in the internal circuitry, and completely disable the robot.

  • Do not move the robot by hand while it is on. This may cause the operations of the LIDAR-detection system to fail or malfunction. Always turn the robot OFF before moving the robot by hand.


Do not place James directly next to a radiator or other heat sources.


Indoor use only.


Operating temperature between 5°C and 35°C.


Operating humidity level between 20% and 80%.

Pinching hazards

Do not touch the following zones unless the robot is turned off:


Within the indicated zone, your fingers or hand may get stuck if the robot is in operation.

Lithium-Ion battery

The cells/batteries should not be short circuited, punctured, incinerated, crushed, immersed in water, over-discharged, or exposed to temperatures above the declared operation temperature range of the cell or battery.

Risk of fire or explosion may occur in the above condition of abuse. In case of a fire with the batteries, do not use water to extinguish it, use a foam or CO2 extinguisher.



Please follow your local regulation and do not dispose of this product with everyday household waste. The correct disposal of your old product will help the environment and human health.

Cleaning the robot

Before cleaning the robot, make sure it is turned off and not plugged into the power grid (charging station or otherwise). ONLY when the robot is completely dry, place it on the charging station and turn it back on.

Cleaning the tablet-screen

To clean the screen on the tablet, use a soft, lint-free cloth, preferably microfiber cloth. Never use a paper towel or other paper-based towels as they can leave scratches on the screen. For fingerprint smudges, dust, and lint, wipe the screen gently using a dry microfiber cloth.

For more stubborn contaminants or stains, lightly dampen a section of a microfiber cloth with water and gently wipe the screen, then go over it again with a dry section of the cloth to wipe away any moisture. Avoid getting moisture in any openings like the speaker or microphone. If the stain remains, you can also try using a mild soap-and-water solution.

Cleaning the plastic surfaces of the robot

Make sure no water can leak into the robot (i.e. base of the robot, microphones, speakers, …). Use a dry microfiber cloth to gently clean the hard-plastic surfaces and use a slightly moist cloth (with general, nonabrasive cleaning agent if needed) to clean harder stains.



  • Added basic versioning for the manual;

  • Updated screenshots with volume Control;

  • Changed references to Module Launcher app (more apt description);

  • Fixed link to Advanced settings;

  • Updated the basic kiosk to match the correct version, including:

    • Added Volume Control section

    • Re-structuring to update to the latest format

    • Improved the additional icons-page

    • Updated settings-page

    • Re-structuring the settings-page(s) to match the new format

    • Updated current pages

    • Re-structured the chapter Settings to match the current list of settings

We sincerely hope James will provide a valuable service to your home or business. Hopefully you will continue to provide us with the desired features or bugs which occurred in the workplace, so we can keep improving and expanding the product.

In case you need to contact us, please use the contact-information below.

Documentation Portal




+32 59 20 03 11


Archimedesstraat 17
8400 Oostende

  • Android and Google Play are trademarks of Google LLC.

  • App Store is a service mark of Apple Inc.

  • iOS is a trademark or registered trademark of Cisco in the U.S. and other countries and is used under license.