Home

Products

Solutions

Whitepapers

Contact Us

Partners

March 2008
BarracudaDrive
for Linksys NSLU2

April 2007
BarracudaDrive
for Windows

Januar 2007
Wind River Resource Guide
October 2006
Lua Server Pages
June 2006
Barracuda for VxWorks
May 2006
Secure Network File System released
March 2006
Barracuda for QNX
December 2005
QNX demo released
November 2005 HTTPS file manager released
August 2005 Barracuda for Embedded Linux
Sept 2004    Barracuda for SuperTask and USNet
June 2004    Barracuda online demo
May 2004    Barracuda for MQX
April 2004    Barracuda for SMX released
September 2003 Barracuda for OSE released
 

Barracuda Embedded Scripting Technology

Barracuda, which is specifically designed for device control, comprises an embedded high performance and low memory footprint JavaScript engine and an embedded web-server. The JavaScript engine, which is fully compatible with JavaScript (an international standard under the name "ECMAScript"), offers both power and ease-of-use, quintessential elements, making it the most popular and ultimate de facto scripting language (10 times as widely used as Java).

Logotype

JavaScript applications and web-applications running in Barracuda are zipped together into a compressed file. These applications can be stored in flash/EPROM memory, and thus you do not need a file system since Barracuda can read and extract data directly from the ZIP file. A ZIP file can be seen as a compressed read-only file system.

JavaScript looks like C/C++

JavaScript's C-like syntax makes it a very popular language as C and C++ programmers can understand the language essentials in no more than an afternoon's study. JavaScript supports advanced object oriented system design and dynamic bindings of objects and functions and, therefore, is an ideal language for many reactive (State Machine, & Event-Driven) embedded systems.

Write 90% of your embedded software in JavaScript in 1/10'Th of the time.

It is often said that writing an application consumes 90% of the development time and money, and making final adjustments to that application consumes the other 90%. This adds to 180%, explaining why so many software projects are behind schedule and over-budget.

Our scripting solution offers a solution to this problem. By making the major features of the program scriptable, that final 10% of development can be finished in 10% of the time. Those seemingly-endless minor program changes--to support initial feedback, changing specifications, and differences in needs of different customers--can be handled by modifying the script that controls the application. Compared to the old system-language methods (rewrite, test, debug, rewrite, test debug) this script approach is much faster and less prone to introduce new bugs. One can even upgrade a deployed and running system in real time by using the integrated web-server to upload new versions of the running software.

Design GUI for you embedded device by using the integrated web-server.

One of the unique features of integrated web-server is that it is possible to design thin-clients that run inside a modern DOM compatible web-browser and the thin-client can communicate with the web-server by using our asynchronous persistent bi-directional communication layer, the EventHandler. The thin-client interface can resemble any modern GUI. The EventHandler uses the browser's default port 80 and can therefore bypass firewalls. The EventHandler can also use SSL thus preventing eavesdropping by a 3'rd party. The EventHandler makes it possible to create distributed JavaScript applications. JavaScript code in the server can call any function in the JavaScript code running in the browser and vice versa.

The persistent bi-directional communication layer increases the functionality of a wide range of zero-install Web applications and extends the Web's viability for such functions as real-time reporting, live monitoring of operations, etc.. Barracuda offers Web applications the same kind of instant updates and user interaction that traditional GUI applications have enabled devices, but without the need to install the GUI application.

Please see our industrial controller example for more information on the persistent bi-directional communication layer.

Any Application Category

Scripting adds value to any application. If your competitors have scripting in their application and you don't, then your competitors have a shorter development time, faster implementation of extensions and modifiable modules, higher value in the eyes of the market, and will not doubt have a larger class of VARs extending and reselling their product. If your competitors allow scripting in their application and you don't allow scripting in yours, then you're in a mighty heap of trouble.

Where Java Doesn't Work

A good way to learn about markets where ECMAScript/JavsScript is bound to succeed next is by watching where Sun is positioning Java. First Java was supposed to be on set-top boxes, but that didn't work (but JavaScript works great in even the smallest boxes). Then Java was supposed to revolutionize the web with page applets, but that didn't work either (but JavaScript has received tremendous support and use in web pages). Then Java was supposed to be the web server solution, but that hasn't worked either (but once again, JavaScript works ideally with the integrated web-server). Having missed their target three times the Java advocates will keep trying (Personal Java, Java POS and Enterprise Java) because all of Java's promises are good--but JavaScript fulfills those promises better. So whenever you hear Sun promise a new area for Java to succeed, it's a pretty safe bet that it will really be JavaScript that succeeds there.

Standalone embedded web-server

You can also integrate our web-server library with your device code if you are interested in providing a GUI for your embedded device without the JavaScript engine. Please see the Barracuda Web-Server library for more information.