Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Java Stamp

0 views
Skip to first unread message

Gordon McComb

unread,
Jun 3, 2002, 10:49:41 PM6/3/02
to
Hmmm.... This could be interesting:

http://www.javelinstamp.com/

Anyone here had a chance to play with one of these? Apparently it's
multi-tasking, has 32K RAM, and has a uiversal Try-Catch exception
handling capabilities (natural for Java, but fairly unique to
microcontrollers).

How does it compare to JStamp?

-- Gordon
Robot Builder's Bonanza, Second Edition
http://www.robotoid.com/

Dennis Clark

unread,
Jun 4, 2002, 1:18:17 PM6/4/02
to
Gordon McComb <gmc...@gmccomb.com> wrote:
Gordon,

I saw one at the Acroname competitions a couple of months ago.
The Javelin is single threaded, has no garbage collection and
can use the code generated by any java SDK. Its got a special
library that is linked in to handle the Stamp hardware. However,
it is NOT multitasking to the user. The only tasks that run
aside from the main() are low lying device I/O services. Its cool,
but as a single threaded JVM, its not that cool IMO.

DLC

: Hmmm.... This could be interesting:

: http://www.javelinstamp.com/

--
============================================================================
* Dennis Clark Aristocrat at heart d...@frii.com www.techtoystoday.com *
* Be well, do good work, and stay in touch -- Garrison Keillor *
============================================================================

Brill Pappin

unread,
Jun 4, 2002, 5:38:59 PM6/4/02
to
FYI - I use the JStamp and love it... it does make a few things harder, such
as PWM output because you only really have access to Java's 1ms thread
timing (wait() or sleep()) but it is doable if you get down into the guts.
The Javline looks interesting and I will try it out eventually, but remember
its running on a PIC, so your really just writing the PICs code in Java, the
same as you would with PicBasic. One more note, the JStamp is J2ME/CLDC
compatible, which makes a big difference if your a "hard-core" Java
developer.

IMO - The JStamp will make an excellent "brain" where multiple things are
going on at once... but some cases a small device (AVR or PIC) would be
better for controlling a single device (also because the JStamp is very
expensive).

For myself, I prefer to have the JStamp "talk" to other devices for its
"senses" (like the Devantech hardware etc.) and reserve the JStamp for
making choices about what to do with the incoming information.

The aj-80 & aj-100 (the JStamp uses an aj-80) are native Java processors
that have a maximum of two VMs per chip.
For those interested, I've written an I2C library for the aj-80 & aj-100
processors (see: cork.sourceforge.net). It's very alpha (I just released the
first version) but it works :) Contributions and comments are welcome.

- Brill Pappin

"Dennis Clark" <d...@io.frii.com> wrote in message
news:3cfcf659$0$180$7586...@news.frii.net...

Dennis Clark

unread,
Jun 5, 2002, 1:53:20 AM6/5/02
to
Brill Pappin <brill...@rogers.com> wrote:
Brill,

I always thought that the JStamp looked really cool, just a bit pricey
though.

: FYI - I use the JStamp and love it... it does make a few things harder, such


: as PWM output because you only really have access to Java's 1ms thread
: timing (wait() or sleep()) but it is doable if you get down into the guts.
: The Javline looks interesting and I will try it out eventually, but remember
: its running on a PIC, so your really just writing the PICs code in Java, the
: same as you would with PicBasic. One more note, the JStamp is J2ME/CLDC
: compatible, which makes a big difference if your a "hard-core" Java
: developer.

The Javelin is actually running on a Scenix processor, 4X the speed of a
PIC at any given speed and this Scenix processor is running at 50MHz, its
quite fast, as fast as just about anything out there. Also, it is running
is RAM, not EEPROM. The code is stored in an EEPROM, upon startup the code
is dumped into RAM and run from there.

DLC

: IMO - The JStamp will make an excellent "brain" where multiple things are

Brill Pappin

unread,
Jun 5, 2002, 3:29:06 AM6/5/02
to
<nod> makes it a little quicker... what the platform for the Scenix
processor (i.e. the AVR is a risc)?

I should qualify my statements re: the JStamp & PWM... PWM is possible
through the timer/counter(s) though they get down into more of the hardware,
and are not as obvious to a Java developer who doesn't have much experience
with hardware. This of course is just like every other controller so your
going to have to learn it anyway.

FYI - The JStamp+ (which is what I use) has 2Megs of Flash and 512K SRAM. It
runs at 80Mhz (aj-80 actually more like 75, the aj-100 runs at ~100Mhz)

- Brill Pappin

"Dennis Clark" <d...@io.frii.com> wrote in message

news:3cfda750$0$185$7586...@news.frii.net...

Randy M. Dumse

unread,
Jun 5, 2002, 12:36:06 PM6/5/02
to
"Dennis Clark" <d...@io.frii.com> wrote in message
news:3cfda750$0$185$7586...@news.frii.net...

> The Javelin is actually running on a Scenix processor, 4X the
> speed of a PIC at any given speed and this Scenix processor is
> running at 50MHz, its quite fast, as fast as just about anything out
> there.

Not as fast as anything out there anymore! Our new IsoPod(TM) is 80MHz
processor with 16-bit DSP w/multiple busses and parallel accesses,
40MIPs. From Motorola, "The DSP56800 core is based on a Harvard
architecture consisting of three execution units operating in parallel."
This gives fast an entirely new meaning.

--
Randy M. Dumse
www.newmicros.com
Caution: Objects in mirror are more confused than they appear.

Gordon McComb

unread,
Jun 6, 2002, 12:48:32 AM6/6/02
to
Dennis Clark wrote:
> The Javelin is actually running on a Scenix processor, 4X the speed of a
> PIC at any given speed and this Scenix processor is running at 50MHz, its
> quite fast, as fast as just about anything out there. Also, it is running
> is RAM, not EEPROM. The code is stored in an EEPROM, upon startup the code
> is dumped into RAM and run from there.

(Replying to this one, and the previous posts...)

I'm sure the Javelin can be improved, but my gut feeling is that because
it's from Parallax, and carries the "Stamp" monicker, it will do quite
well. There are several million Java programmers out there, and any
number of them would love to play with robotics and other embedded
hardware. Like you, I thought the JStamp a bit pricey for the
experimenter, though I'm sure it's quite good at what it does. Breaing
under the $99 barrier (for an entry-level kit) is important.

I've been harping here on Parallax from time to time here to "update"
their language, and this is certainly one way to do it. I think Javelin
raises the bar considerably, A) for its hardware and B) for its
ready-accessibility to an army of programmers who already know Java.

This, coupled with Toddler, shows that Parallax isn't standing still in
competition within its markets.

Brill Pappin

unread,
Jun 6, 2002, 2:16:06 AM6/6/02
to
Actually, I'd be *very* interested in its coding software.. is the software
available anywhere?
The idea being that I should be able to write Java code for an "unmodified"
Scenix processor...
I'm not all that interested in the Javelin (Why when I've got *native* java
with the JStamp?) but I would very much be interested in being able to write
java code for a Scenix. Even better if it can program an AVR... but one
thing at a time :)

- Brill Pappin

"Gordon McComb" <gmc...@gmccomb.com> wrote in message
news:3CFEE9...@gmccomb.com...

Ingo Beckmann

unread,
Jun 9, 2002, 3:18:48 PM6/9/02
to
Hi!

If you are interested in Java on (8-)bit microcontrollers
it is worth having a look at http://www.rtjcom.com
and their simpleRealTimeJava!
I can only report good things about it:
- 'core' Java API
- garbage collection
- mutliple threads
- real time capability
- runs stable
- small memory footprint-
- source code available/reasonable license policy

I run it on an 8-bit Motorola 68HC11 w/ 64K RAM.

Ingo.

Brill Pappin

unread,
Jun 11, 2002, 12:06:20 AM6/11/02
to
Very cool... I've been looking for a cheaper solution than the aj-80 for
device interfacing... maybe this will provide a solution. How do you find
the speed?

- Brill Pappin

"Ingo Beckmann" <ingo.b...@fernuni-hagen.de> wrote in message
news:3D03AA18...@fernuni-hagen.de...

Ingo Beckmann

unread,
Jun 13, 2002, 3:13:27 PM6/13/02
to
Hi Bill!
Speed is sometimes surprisingly good, when you don't
use a lot of new and you can omit the garbage collection. But even then,
I could come around some problems with native methods.

As a test application I built a 'virtual' toaster. I call it
virtual because I left away all the mechanical stuff and the heating
and so on. What was in that application was an interface LCD counting
time and showing toast status and logging over the serial line.
It was realized using some tasks (counting time and converting time
to a string representation, 'measurement' off brownness of the toast)
and an event handler that triggeres when either the toast is brown
enough or when time is up.

The program could hardly keep track of the seconds and refresh the
LCD display every second, so much for performance.

If you are interested in the code, you might want to have a look
at http://www.nntec.de

CU, Ingo.

--
dipl.-phys. ingo beckmann, bonn-beuel
email: ingoBe...@gmx.de
pgp/gpg: just ask for my key!

Brill Pappin

unread,
Jun 13, 2002, 9:13:01 PM6/13/02
to
Yah, even the serial comm with the aj-80 can be slow... speed is not really
a problem though.
You might try having the VM sleep for a milli or so... I assume your
counting seconds, even several milli shouldn't cause you too much trouble.

The aj-80 is threaded, but people sometime run into trouble with the same
thing... I find that you just have to be careful about *how* you write the
code, without taking out GC (very important to long term health of the
system).
Anyway, for the aj-80 the trick is not to use a continuous loop but to
instead use the threads properly...

However... with simpleRTJ, you don't have threads, so things are a little
different... you can still watch the looping though.

have you ever got the simpleRTJ to run on an AVR (or know anyone who has)?
I've started to get into AVRs and don't want to pick up yet another MCU
before I've played with this one for a while :)

- Brill Pappin

"Ingo Beckmann" <ing...@spamhole.com> wrote in message
news:3D08EED7...@spamhole.com...

Ingo Beckmann

unread,
Jun 14, 2002, 2:12:54 AM6/14/02
to
Brill!

The simpleRTJ indeed _has_ threads, it fully supports threading and the
object lock/monitor mechanism you expect from Java. The basic things
you really want to rely on are there.

I'm sorry for my ignorance, but what is AVR ?

Ingo.

0 new messages