The Third Law of Robotics:
A robot must protect its own existence as long as such protection does not conflict with the First or Second Law;

- Isaac Asimov, I, Robot

Follow us on


Share this page with friends via

email icon facebook icon twitter icon
linkedin icon google plus icon blogger icon

Introducing the Blue Seal Basic Controller


In this section we are going to introduce all the features of the Blue Seal Basic Controller.

The Blue Seal Basic Controller is a versatile graphical interface for sending various predefined text commands over TCP/IP protocol to a robot or a PC. Later in the section on general settings, we will learn how to modify these commands to best suit our needs.

The robot or PC is running a server waiting for the Basic Controller (i.e., a client) to connect to the server and send a text command. Server receives a command from the client and returns a reply in form of a string which can be then displayed by the Controller. In the end, the communication is seized, client disconnects and a new commands can be sent the same way.

For more information about the communication procedure and further details visit the first tutorial.

The screen


On the picture to the left, we can see the screen of the Basic Controller with all its elements.

There is a scrollable text field on the top of the screen designed to show replies from the server. At the start of the Basic Controller, the text field displays full mask with all keys which will be substituted by proper values from the servers answer (form more details see the first tutorial). The text field can display three lines of text without scrolling. This should be enough in order to display the most important replies from the server. Nevertheless, if the replied information should be longer we can always scroll the text field to see the full reply.

Right under the text field, two lines of buttons are located. There are four buttons in every line and each button can have a different image of be disabled (see the section on general setting). The complete second line can be hidden, if user does not have any use for them.

The center of the screen is dominated by a field of three-by-three buttons known as dial-up buttons on phones. These buttons are not meant to be hidden but can be disabled if needed. The images on the buttons can be also changed as pleased.

The last element is the scrollable text field on the bottom of the screen. All sent commands or errors are written out in this field. This allows us to keep track of what commands were sent or if an error occurred. This field can be also hidden, if not needed and shown at any time as the user desires.

Changing the layout


Now, a question arises how to hide or show the individual elements of the Basic Controller? Changing the layout is simple and can be done while running the Basic Controller without any need of stopping it. So we can hide or show individual panels at the very moment we need them or do not need them. The list of sent commands still records all sent commands or errors even while being hidden. The same is holds for the responses from the server.

To hide or show a panel just press the Menu button on your device in the Basic Controller screen and choose Settings. The window with Settings is displayed on the picture to the right. Choosing whether a particular panel should be hidden or not is no a peace of cake. By pressing the Return button we can return to the Basic Controller where the change is manifested.

Examples how to modify the screen

Take a look at several possible modifications of the screen as an inspiration. Which one do you prefer for controlling your robot? Which one do you prefer for controlling a program written by yourself?

screen_basic_controller screen_basic_controller

We introduced the Basic Controller in this chapter. The highly adjustable graphical interface for sending TCP/IP commands to a server. The Controller can be used to control the Blue Seal Robot or any of your own program which runs the TCP/IP server as will be shown in the first tutorial.

Blue Seal Project created by Jiří Daněk (2013-2016)