Stampdock PC services software for mbed


Hello, we are working on adding support for mbed to our stampdock ( http://stampdock.com ) software.
The software works on Windows, Mac and Linux and provides services to mbed over the USB (virtual serial) port.
We only have mbed for a couple of days but for people interested now we made a simple API, a demo program and an oscilloscope
program.

Normally where you would use a program as Hyperterminal for debugging, you can use stampdock ..
as it has a debug window, and sends keypresses back to the mbed.
With a little difference that you can use ANSI color codes and an onscreen keyboard.

Also in the debug text send to PC you can embed commands ( !xxxx; sequences ) and requests ( ?xxxx; sequences)
with these you can use services. Like store data in a file on PC harddisk or read a file from PC harddisk.
Send messages to a log file on disk including date and time, use a RAMdisk, generate synthesized voice .. play
mp3's or video's, request time/date from PC etc etc.

The most interesting feature is that the GUI of the program is defined in a little text file .. so you can change
the GUI file and add or move items.
You can have one or several graphics sections to draw grapics in 24 bit colors, or have one or several
multimedia players .. in which you can fade between pictures or video on disk or video streams.

But also you can put buttons, switches, meters, numbers, rgb LEDs, potentiometers, turnknobs and other
GUI elements on the window (see examples at http://stampdock.com/ ) which can be read and set
over the virtual serial link by the mbed.
Also you can design the GUI as you wish with grouping of GUI elements, add pictures or use background
pictures or patterns on pieces of the GUI etc etc. You can replace buttons by pictures or use the build
in render language to render custom buttons or backgrounds.

Which means if you are going to make a device you do not immediatly have to connect a big graphics
screen or buttons or storage devices or other devices to the MBED, the software can emulate all those.
So you can start programming, saving mbed pins and perhaps later add physical components to a project.

Or you can use the software as only method of graphical input and output, so the entire program
resides in the mbed .. and you don't have to bother writing a Win/Mac/Linux program that handles
the USB port to put graphics on a screen .. and provides buttons to press to the mbed software.

A crude example of this would be our oscilloscope demo, which is a little program which runs
on an mbed, basic stamp or javelin stamp and measures voltages.  It uses the stampdock software as graphics
output and as control devices with buttons knobs and potentio meters.
You can find a link to it here:   http://apsdev.com/stampscope/home.html

Also the software could be used as graphics output for all kinds of scanning devices.
A crude working example would be this, the sensor of an optical mouse
connected to a basic stamp or javelin stamp   http://apsdev.com/stampeyes/home.html

We are working on some other demos, some completed demos for basic/javelin stamp are:
a FM/AM radio tuner/scanner  http://apsdev.com/stampeyes/home.html
or a wireless weather station http://apsdev.com/stampweather/home.html
or a universal IR remote  http://apsdev.com/stampremote/home.html


So the software can be used for prototyping, by people who have the mbed .. want to make a scanner
or other measuring device .. but do not have a small expensive color LCD panel to connect to it, and don't
have all the knobs, switches and potentiometers to connect to it.
Or don't have a storage device connected to the mbed to store measured values.
Its like using hyperterminal as debug device .. but with the default GUI you also have
a big color graphics screen, switches, LEDs, potmeters etc you can use in your progam.
And if the default GUI is not enough people can change the text file that defines the default
GUI and add GUI elements .. switch parts around .. make the graphics area bigger or smaller
or add a graphics area or video player etc..

Another use can be people who want to make a USB connected device for a desktop machine
that accomplishes complex scans like a scanning tunneling microscope .. but they can not handle
programming the USB code on the desktop machine. So with this software you only need
to think of the code in the mbed itself .. you can use the software for graphics, GUI, sound, storage etc.
With the advantage that the device works with windows, mac and linux.

Or people who want to publish for instance how people can build a cheap oscilloscope, where you
only need to connect an mbed to a desktop machine, and load software in the mbed.

You can use it if you want to make a tiny device to measure values in the field, then connect it
to a PC (dock) and then use the software to store the collected information on the PC, have it
draw graphs or pictures on the PC of the collected measured values.


So with mbed you can use the software as a debug device, as you can quickly make a test setup on a bread board
and dont need to connect screens, buttons, speakers or storage to the mbed.
So if you don't want to invest money in getting a small graphical LCD for the mbed, and
have an old PC you can use that. Or if you don't want to order displays and knobs until
you know you can make it work on mbed with a pc Screen.
I even use an old 12" iBook as measuring device with the software.

Or you can use the software as a graphical output/interface if you want to make any (low cost)
device but are only interested in programming the mbed and not programming the PC part.
Like if you need to control a process or are making a scientific instrument.