I've been checking in on the state of ARM-based electronics,

I’ve been checking in on the state of ARM-based electronics, and it seems pretty dead. Is anyone actually using any of these? Is there firmware under active development for any of them? Hardware in production?

Smoothieboard sold out a beta batch at some point, and I see no indication of plans to produce another batch.
R2C2 seems to be available, but living in 2011.
4pi has a whopping 2 units in stock and nothing pushed to github for almost a year.
An ARM-based Gen7 variant is apparently “in development”
There’s a nice pic of Marlin Electronics on github, but the only other information I can find is “TBD”.

One thing those with prices all seem to have in common is that they’re priced significantly above the average AVR-based electronics, despite the facts that the chips are supposed to be cheaper and the boards otherwise seem relatively feature-poor (on-par with entry-level boards like sanguinololu and printrboard).

Replicape for Beaglebone (including black) comes to mind. http://beagleboard.org/project/Replicape/

There seems to be more activity in adapting the Beagle Bone Black to be a controller board, but neither of the two projects I know of seem to be ready for much more than testing at the moment.

There’s the BeBoPr - https://github.com/modmaker/BeBoPr/wiki

And the Replicape - http://hipstercircuits.com

If RAMPS has taught us anything, it’s that you end up paying more for a microcontroller and an add-on board than if the same components were on one board. Even today, a RAMPS shield costs as much as or more than many other printer controller boards, and you still have to drop 60 bucks for an Arduino Mega (or gamble on a clone/knock-off/counterfeit version).

avr studio 6 now has support for arm. We’re using lots of them at work/commercially, for what that’s worth.

Also, the Cortex-M series chips on the boards listed above are surely a better choice for our application than the Cortex-A series chip used by the beaglebone, though there do appear to be some RTOS options for the beaglebone.

@Whosa_whatsis both the bebopr and replicape boards have software that use the on-chip coprocessors (PRU) to do the heavy lifting. So the stepper signal are controlled by two 200MHz PRU controllers, not the CPU.

Smoothie is under very active development. There are many people using it to print AFAIK. Boards will be available again soon @Arthur_Wolf will be able to tell you more. I also know that boards capable of running the Smoothie firmware will be available from at least one other well known reprap electronics supplier.

The ARM based stuff will probably start rolling out in a year, you’re just asking in the calm before the storm.

Heya !

Smoothie is under very active development indeed, as far I know it’s where the most is going on at the moment. We have an awesome community.

There were setbacks in production due to Trinitylabs’ problems, but community members are now teaming up to get things rolling again independently.

You can expect boards for sale very soon in several different places, also check out Kickstarter very soon :slight_smile:

About prices, Smoothieboard is $120, which was a pretty great price when we set it, compared to other options ( though I think a few AVR boards are boards are bellow that now ).

It’s on my TODO list. The hardware is not a problem, it’s getting unified firmware that is the problem. That is why the arduino environment is so popular, Write once, use on many platforms.
Has anyone tried the Arduino Due? Is code capable of being directly ported? It looks like the Due has the same footprint as the Mega, thus a ramps shield should be able to be directly attached, as most stepper drivers are capable of running at 3.3v.

@Wolfmanjm @Arthur_Wolf Good to hear about Smoothie. I’ll be watching. Let us know when that kickstarter thing happens.

@Stephanie_A My first thought when I heard about the Due was “I wonder if the pin assignments will work with RAMPS”. Not that I think anyone should be using RAMPS, but it would seem to make the transition/prototyping easier in this case. Surprisingly, I haven’t heard about anyone actually trying it. Firmware would need work, obviously, but at least it can be programmed from within the arduino environment.

I’m gonna poke @Rob_Giseburt on the firmware issue. He’s told me about his plans for Motate, which should make it a snap to write cross-platform firmware that is better than anything we have now. It’s really exciting. Any updates, Rob?

Since a few people involved in ARM board development seem to be on the thread, I’d like to make a plea not to make the same mistake that was made early on in the development of most of the current firmware projects: locking down the axis enumeration to XYZE, and requiring toolchange commands to redirect the output of E. The firmware should be capable of enumerating an arbitrary number of axes and send coordinates to all of them (or any subset) by letter in a single line of gcode. For backward-compatibility, E should be a floating alternate designation for one of these axes. It would be really cool if M104 and M109 could use the same letters to set temperatures for the axes’ associated heaters, e.g. M104 A210 B250 Z110 (extruder 1 to 210C, extruder 2 to 250C, and platform to 110C, S would obviously be reserved for backward-compatibility).

@Whosa_whatsis Yes, @Motate is a cross-platform hardware abstraction layer and works on AVR-based Arduinos as well as the Due. I’ll be porting it to other platforms as well, mostly arm.

I’ve been working with @Synthetos on the TinyG, and we’ve got some great stuff cooking. We don’t have extruder control in yet, but we’re making sure it’s done right first. (It is not just anther axis.)

TinyG can already do the axis mapping. You can map any motor to any axis, forward or backward. That’s a common “upgrade” for Shapeokos that use a TinyG to have two Y motors, one running forward and one running backward. This is very easy to configure in TinyG and easier using tgFX, our GUI.

Oh, and we don’t bother with messy M codes. We talk in JSON. :wink:

@Rob_Giseburt I’ve been playing with my tinyG+shapeoko today to configure it and I like it very much, both the config variables and the json.

@Koen_Kooi Thank you!

I’m working on a Node.js module to make it easier to incorporate into larger projects. It works great on the BeagleBone Black. :slight_smile:

@Whosa_whatsis All the stuff you mention about multiple extruders, though I’ve not actually tried it, should just be a matter of editing the config file the right way, in Smoothie ( The stuff about M104 is not in, but it’s the first time I hear the idea, and it would be trivial to add ). Point is : it’s the idea of Smoothie to make this kind of thing a snap.

@Arthur_Wolf Awesome. Btw, I’m not surprised it’s the first time you heard the thing about M104, because I had the idea while I was in the process of typing that message.

@Arthur_Wolf I looked through the sample config files, and while it looks like it’s a lot more flexible than Marlin in some really great ways, I didn’t see any indication of how axis letter assignment works. Is there some documentation I’m not seeing?

@Whosa_whatsis It’s not documented yet because nobody in the team at the moment has dual extruder-capable machines and/or electronics. Those are not very common yet. It’s planned for in the code though, just needs a few hours once we have hardware to test on.

Anyone want to give me 200$ so i can buy eagle and start developing a board? :smiley: