Asked — Edited

Hi, I'M New. I'M Working On Autonomous And Emotional Agent Programming

Hi all,

I have a hobby project in which I implement a platform that enables the development of autonomous and emotional agents. These agents can reflect on their experiences, which affects their emotional state and consequently their behaviour.

My background is in the logics, computational linguistics and mathematics of A.I., but I've almost zero experience with hardware/robotics. So EZ-Robot is a great enabling technology for me to try out and demonstrate my project for robots.

My robot is a Roli, but the software does not depend on this. Though it will still take weeks before it arrives I already have a few questions:

  1. I'm Dutch. For a JD head, ultrasonic sensor and 4-1 orientation sensor I have to pay 18$ delivery plus an additional 45$ worth of import taxes etc if I order from EZ-Robot. Is there a cheaper route?

  2. I have connected ARC with my agent platform (which runs on Java) by having a script run on ARC that through HTTPGet commands can send percepts and request commands, and run a HTTP server on the Java side. I.e. for commands in ARC something like this happens;

$cs_command = "idle"
repeatwhile($_HALTCOMMANDSCRAPER == 0)
  $cs_command = HTTPGet("http://localhost:8000/command/")
  $_LASTCMD = $cs_command
  ControlCommand("HighLevelActionLibrary", ScriptStart, Split($cs_command,";",0) )

Where capital variables are global throughout scripts and "cs_" are local variables of the command scraper. $_LASTCMD is used by action scripts to read the arguments of the action (separated by semi-colons).

On the Java side my agent software queues up high level actions that have to be called. But I'd rather push these to the robot. Is there a way to push scripts calls? I.e. from Java send a script name + arguments to run in ARC?




Upgrade to ARC Pro

Don't limit your robot's potential – subscribe to ARC Pro and transform it into a dynamic, intelligent machine.


Hello @Bas Testerink Welcome to the community!

Instead of purchasing from us direct I could suggest that you could check out a few of our retailers in your area of the world. We have a few retailers in Denmark (Actura, and Podconsults) as well as France, the UK, and one in Germany.

Please check out our retailers page


For the other question, if you can open a tcp socket from your app, ARC has a Telnet connection that accepts any script command.

You can also easily pass data through files. Ie, app writes a file, ARC script reads the variable from the file several times a second and take action if the variable changes (other options too, that is just one of the simplest).



@Jeremie Thank you for the feedback. The retailers seem to sell mainly complete kits instead of ez-bits. But I'll keep an eye open.

@thetechguru The periodic checking is basically what I now do via HTTPGet. I looked into the telnet functionality. I can now indeed push commands to ARC, thanks. The way back (from ARC to Telnet Client) seems problematic. There are no EZ-Script functions to do this, from what I saw. I'll stick to the HTTP method for that.


You are correct, the Telnet interface is basically one way. The EZ-B SDK(s) provide the ability to pass data both ways, but they are not Java (dotnet or the new Windows Universal, both designed for Windows IDEs).



Today my Roli arrived.


Such a delight to be able to click it together and immediately move on to the - for me - interesting bit: programming A.I.

An amazing product!