Open research

In the spirit of free and open source software the central topic of this site is to make my research open to the public. My methodology is freely available via the internet, along with any data or results extracted or derived from them. This permits collaboration, which anyone may participate at any level of the project. So feel free to contribute on Github.

Homepage » Swarm Robotics

Swarm Robotics




Cylon.js is a JavaScript framework for robotics, physical computing, and the Internet of Things using Node.js. Cylon.js is also supported by “”.

Cylon.js does…


Quote 1:

The platforms you support seems to be a mix of UI elements, pre-built hardware, software and boards. How do they interact?

We call it “full-stack robotics,” and we have adopted several different software design patterns to integrate different layers together in a seamless way. Similar to how web developers can switch between different database engines, we allow you connect to different devices, and even switch from one platform to another with a minimum number of code changes. We also support “Test-Driven Robotics” to allow devs to write automated tests before writing code on the actual hardware.

Quote 2:

How does Cylon.js ‘support’ something like the Arduino or the Digispark that doesn’t speak Javascript?

Cylon.js also supports many different kinds of communication with devices, such as serial or TCP/UDP. In the case of the Arduino we communicate using the Firmata protocol, and in the case of the Digispark we support a protocol named Littlewire created by the brilliant Jenna Fox that runs on even smaller micro-controllers such as the Digispark.


Gobot is a set of Go libraries for robotics and physical computing.


Artoo is a framework for robotics, physical computing, and the Internet of Things written in the Ruby programming language.


Johnny-Five is an Open Source, JavaScript Arduino programming framework.

Further tools

Interesting articles & resources