Embedded Systems Conference

We showcased the Barracuda Embedded Web Server running on ThreadX and NetX together with Express Logic at the Embedded Systems Conference in Silicon Valley.

We demonstrated a PacMan game running in a browser and controlled via a telnet client. The purpose with the PacMan game is to show how a modern user interface can be updated in real time, over Ethernet, from an embedded device.

Download

The PacMan game is bundled with the Barracuda Demo and Tutorial.

ESC 2011

How the Telnet to Pacman Server Works

The Barracuda Embedded Web Server's Lua Server Pages (LSP) plugin provides a framework for applications designed in the Lua scripting language. The game controller, which is designed entirely in the Lua language, is responsible for proxying the traffic between the telnet client and the PacMan game running in the browser. The game controller Lua script uses ready to use components such as the real time EventHandler protocol stack and the high level socket API.

PacMan


  1. A browser navigates to the PacMan "game controller" running in the server.
  2. The PacMan game, which is completely implemented in JavaScript, is loaded into the browser.
  3. The browser loads all resources such as the sound files.
  4. The game's JavaScript code starts to execute and the code opens a persistent bi-directional communication channel to the server. This connection is managed by the EventHandler plugin.
  5. The game is now ready to accept a telnet connection.
  6. A telnet client connects to the server.
  7. The game controller connects the two clients together and initiates the game.
  8. Keyboard events are sent from the telnet client to the PacMan game running in the browser via the game controller proxy.
  9. When the game ends, JavaScript code sends an event to the game controller, which then terminates the telnet connection.

Download PacMan Game

Posted in News