View Full Version : Is there a propeller based platform like this?
05-23-2010, 12:22 AM
There are a lot of Propeller based projects that have their own threads going on here. And I have to admit that I am not up to speed on all of them, and what their goals are; so if there is a project that incorporates the ideas in the links below, I'd like to hear about which one that is.
What I am interested in finding out about if there is a propeller base project that·has an embedded OS on a system board that is "an eqivalent" to what is offered here: http://www.cpustick.com/
Apparently, there are a few·experimenter's boards that incorporate this OS. There is a pretty good demonstration of one of these projects at: See the·section "Part 1: An MCU-resident rapid prototyping and education environment for highly integrated MCUs (http://rapidprototypezone.com/blog/sla-rapid-prototype/part-1-an-mcu-resident-rapid-prototyping-and-education-environment-for-highly-integrated-mcus)" on the page at the URL: http://rapidprototypezone.com/blog/ (http://rapidprototypezone.com/blog/) to see a short introduction to products that include an embedded OS called "StickOS"
The following is a snip from that introductory discussion: "...StickOS is an MCU-resident rapid prototyping and education environment for highly integrated MCUs. It makes the internal MCU functionality trivially available to a large class of users who don’t otherwise want to become MCU experts..."
Even though the URL above has links to video clips, the following URL has all the videos in the series: http://www.movie3mai.net/dG1A1lV29yTI.html
I fully recognize this forum is about propeller and parallax products. And that is the real focus of these questions, to restate: Is there a Propeller based project that incorporates these ideas. Just to round out this introduction, I thought it may be useful to see some projects that use this OS for any comparitive purposes.
05-23-2010, 01:09 AM
The short answer is no.
As you've noticed, there are all sorts of Prop boards that have different capabilities. There is all sorts of software available including SPHINX which has a native Spin compiler / PASM assembler. If you count emulators, there's a Z80 emulator that will run on the RamBlade and several other boards and there are all sorts of compilers, editors, interpreters, and other stuff that will run on it. There are several variations on FemtoBasic which is a simple interpreted Basic that allows access to the hardware.
05-23-2010, 01:30 AM
OK I took a look into the first video.
This guy developed a very high sophisticated basic and a (almost) stand alone development on the chip system.
As the propeller itself has only 32kB of RAM something like this would require a memory-expansion.
about the editor-aspect the sphinx-project (http://www.sphinxcompiler.com/) is the most similar thing for the propeller
It is not as comfortable as this basic MCU
The highly sophisticated basic drives you away from the hardware.
I don't know if the basic-firmware is opensource and if the basic includes possabilities to do tweaks very close to the hardware
highly sophisticated commands like "audio = 1000 Hz drives you away from the hardware
coming closer to the hardware drives you away from HIGHLY sophisticed commands to just sophisticated SPIN-objects you can tweak to whatever high sophisticated level you like by yourself
The propeller itself with SPIN and the all the objects in the object-exchange places the propeller nearer to the hardware as this basic-MCU
in SPIN with using objects you are closer to the hardware. BUT the propeller-hardware itself is MUCH EASIER to understand than almost any other
microcontroller. On the propeller almost everything is done by software not by special-purpose hardware. If you want a complete dozen of serial connections
add the suiting object to your project and you are done. This basic-MCU seems to be limited to the serial interfaces that the hardware offers.
From the overview I could not see anything that you can do REAL parallel-processing like the propeller does.
This basic-MCU still needs a PC for interacting. Downloading a big program to a propellerboard needs maybe 25 seconds. If this is not fast enough go on buy this basic board
I think this board is a serious competitor to the propeller. I haven't looked inside the manual yet. But if the creators of this basic-MCU-board take their argument for serious
that you can "JUST USE" an ADC the manual will be good.
If the propeller wants to hold his leading position - the documentation of the objects in the obex has to be imrpoved a lot to be as easy to use as these basic commands !
Devices like the Coldfire and PIC32 that are used for StickOS have far more memory than the Propeller (up to 512 kB of flash and 64 kB of RAM). Implementing something like that on the Propeller with equivalent performance simply isn't feasible.
Amateur radio callsign: G1HSM
Post Edited (Leon) : 5/22/2010 7:51:05 PM GMT
05-23-2010, 04:18 AM
IMHO, the propeller being as different as it is, requires some boot-strapping, just as other more traditional CPUs did. Over time, we've seen a lot of progress on usability options. Some of that is just work. Other parts of it have been engineering and application of comp-sci.
As we continue to all work through the implications of the propeller design, usability will continue to improve. Of course, Prop II will have sufficient resources to make a lot of this stuff considerably easier.
More traditional CPUs operate with the advantage of this work already being done. That's not a fault of the propeller design, just reality when it comes to differences in how a given CPU operates.
Also IMHO, a lot of the work done puts us closer to doing things like this on the PC. 12 blocks is an outstanding example where the capabilities of a PC compliment the flexibility seen in the Propeller. It's not unreasonable to expect that trend to continue, making the propeller usability continue to improve over time.
There is this project for the old Atari 2600. It's called Batari Basic, and it's a dead simple BASIC that compiles down to assembly language.
Here is a colorful, but solid description of the language features: http://www.randomterrain.com/atari-2600-memories-batari-basic-commands.html
Bear in mind, the VCS has graphics hardware that is very similar to the Propeller, in that a software loop is required to generate a display. The basic facilities are extremely limited, and difficult to use. Nothing about it is "easy" at all. One would have to invest a considerable amount of time, just to display a few pixels on the screen. The VCS also has very limited system resources, including 128 bytes of system RAM, and a 4K program space.
Prior to that Batari Basic project, successfully programming a simple game on that machine was a challenge. Now there are people, who know very little about programming and computers, writing very interesting games and other programs. Some of those have been good enough to produce on cart and sell to others, interested in adding to their homebrew game collection.
To me, that's a very significant usability effort.
Today, we've got propbasic, and 12 blocks, along with a lot of other pretty great tools. When comparing the barrier to entry on the propeller now and back just two years ago, an awful lot has changed.
On the VCS, that evolution spanned basically 30 years, with a lot of that being smaller efforts over time. Until that Batari Basic project was realized, nobody seriously believed that it would be possible to write a simple basic program and have it compile down to a useful, fast executable, given the limits of the machine. It's really easy to write a few lines, hit the build button, and see the product of that in an emulator window. Easy enough, that ordinary people can see programs, run them, change them, etc...
Seems to me, and environment like that could be done really well on the Propeller. Forget building right on the MCU. Just write it on the PC you need anyway, hit the "run" button, and see it go right then and there.
There is the matter of needing an external EEPROM, but that's just not that hard to do and use. For test run / dev cycles, just use the Prop on it's own.
One other thing about that Batari Basic comes to mind, and that is various pre-configured options. It's not possible to do everything on a VCS, unless one uses assembly code, and even then, it's generally not possible to do everything --only more is possible.
If a project like this were done for Propeller, it makes perfect sense to build up some configurations, with COGs providing services to the cog running the compiled basic program. If the compiled basic were targeted to the bytecodes, it makes great use of the on chip facilities. From there, the usability would be on par with this system, with the exception of developing right on the chip. Given how easy it is to use the PC to program the prop, this is comparable.
Dedicating the pins for specific purposes would be artificially limiting for experienced Propeller programmers, but it would simplify things for the kinds of people, who find setups like this useful, so do that, with few worries. There is always SPIN + PASM for those that want to just rock on the chip in their own way.
There could be serial, I/O, Video, Sound, a timer / event trigger COG, etc...
The basic program starts with:
10 use serial, video, sound, SD, I/O
If desired, the program on the PC could parse the lines as input, giving that feedback that the on-chip system does. Also seems to me, an interactive kernel, taking I/O from a PC, could very easily execute immediate mode commands, to set a bit, play a sound, etc...
The PC remains in control, offering the user various modes for operation, isolating them from the chip nicely.
It's not at all that this can't be done. It just hasn't been done.
Propeller Wiki: Share the coolness! (http://propeller.wikispaces.com/)
8x8 color 80 Column NTSC Text Object (http://obex.parallax.com/objects/550/)
Safety Tip: Life is as good as YOU think it is!
05-23-2010, 04:42 AM
The question might be: "Why do you want one?".
If you need a PC to communicate with the thing from a PC anyway why not have the program editor and compiler on the PC as well?
If you have a thing about BASIC checkout the excellent PropBasic that you will find on the front page just now.
If you want to use the full power of the Propeller just go with Spin/PASM and the Prop tool, or BST or HomeSpun compilers. Very quick, very simple.
For me, the past is not over yet.
05-24-2010, 12:10 AM
As always, well reasoned and thoughtful replies to (what is admittedly) a pretty vague question. This comment board is pretty darned cool in that regard. I did not know about the sphinx project and I'll look into it. I agree with what some of you wrote and have some questions about trying to pack an interactive editor into an embedded device. That kind of thing could be pretty great for "configuration" but packing that kind of overhead for programming purposes seems dubious to me in some ways, it still could be the "sizzle on the steak" for a certain segment of users.
05-24-2010, 08:02 AM
You can catch glimpses of Sphinx in action in this video:
05-24-2010, 12:20 PM
mpark. That's just beautiful. I don't think I've seen an Etch A Sketch for about forty years.
Coincidently we were discussing vector graphics for the Prop the other day.
For me, the past is not over yet.
07-16-2010, 03:08 PM
30+ years ago i was involved with instrumentation that could fit in an ibm-pc card slot and was controlled by gw-basic: triple power supply, triform signal generator, 4-1/2 digit multimeter, frequency meter, etc.
i suggest that realistic state of the art for the propeller market is represented by stickos as a control language, chip functioning on the order of, say, atria technologies FR-JM-32.
i have both the propeller and the atria chip. atria is going to control and sample, propeller will output to an ntsc display. if atria did video, i would not use propeller. and if propeller did stickos, i would not use atria.
30 years ago an instrument panel was displayed on the screen. press v for voltmeter, press d for dc, press 4 for 0-20 range.
this joe would like to be able to do this with a low-power, stand-alone mcu. but he dithers - prop and atria? or tethered pc, qbasic and a handful of 4000-series chips?
i like the idea of propeller, but until control language reverts to something like: on cog 1 do ... on cog 2 do ... i wonder if the product will survive.
07-16-2010, 06:25 PM
Tinkersalot: This is all wip. But the prop has the advantage of course that the terminal (i.e. PC) is onboard. The closest we really are is running CPM emulation using ZiCog. Here you have all the utilities including editors, compilers, mbasic, supercalc, turbopasm, etc that were under running on CPM micros. Sphinx is the closest thing currently (although Dave is working on an OS) to approach that. There is hardware that supports this... TriBlade, RamBlade, DracBlade, Morpheus (not sure which version) or you can build your own. All use external memory of some kind.
I should mention that Drac has multiple DracBlades communicating wirelessly.
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade (http://forums.parallax.com/showthread.php?p=786418),·RamBlade (http://forums.parallax.com/showthread.php?p=849265),·SixBlade (http://forums.parallax.com/showthread.php?p=780033), website (http://bluemagic.biz/cluso.htm)
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator) (http://forums.parallax.com/showthread.php?p=790917)
· Prop Tools under Development or Completed (Index) (http://forums.parallax.com/showthread.php?p=753439)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) (http://forums.parallax.com/showthread.php?p=778427) ZiCog (Z80) (http://forums.parallax.com/showthread.php?p=788511) , MoCog (6809) (http://forums.parallax.com/showthread.php?p=811043)·
· Prop OS: SphinxOS (http://forums.parallax.com/showthread.php?p=819353)·, PropDos (http://www.orrtech.us/propdos/) , PropCmd (http://obex.parallax.com/objects/440/)··· Search the Propeller forums (http://www.google.com/advanced_search?q=+site:forums.parallax.com&num=20&hl=en&lr=)·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz (http://www.bluemagic.biz)·· MultiBlade Props: www.cluso.bluemagic.biz (http://www.cluso.bluemagic.biz)