Arduino Due - what will be the killer app(s)

Here is LeafLabs information related to compatibility. http://leaflabs.com/docs/arduino-compatibility.html#shield-and-device-compatibility

Here is a list of libraries: http://wiki.leaflabs.com/index.php?title=Libraries

This is the wiki I pulled the links from: http://wiki.leaflabs.com/index.php?title=Main_Page

Here is some docs: Maple | LeafLabs

I am a novice so I may have more trouble compared to others but, here is a bit of my thoughts.

As far as adding and using Arduino libraries go, they are another case by case basis. A lot of variable types in their librarys have to be set to work with their Maple IDE. I am still trying to figure that all out. If I had to count on a library working, I would install their IDE and check to see if it would compile and go from there.

One example, their SPI is set up different enough that you would have to make your own code to operate the SPI ,instead of using the Arduino SPI library. <<Edited sentence to say what I meant.

Here is a link for SPI usage: Maple | LeafLabs

EDIT: Here is a link to the Olimexo I was talking about earlier. OLIMEXINO-STM32 - Open Source Hardware Board

The problem is that a lot of libraries talk directly to the processor hardware. This hardware will be very different on an ARM chip so the whole thing needs to be re thought and rewritten. Only trivial libraries, of which their are an awful lot, will work.

All very interesting. But it confirms my thinking. It will take some time before due will be a platform I can use.

greetings from Belgium
Jantje

You obviously can get some level of compatibility with 5v shields if you add enough hardware, but one question might be "Is it worth it?" and from the look of the board they showed at the Faire I'd say they haven't accommodated 5v although you can't see the bottom of the board in the photo. Maybe it's time to bite the 3.3-volt bullet.

OTOH there are about 500 existing shields, pity to dump them. As to how many of those shields are useful that's a different story and I'm not about to trawl through shieldlist.org to find out. Some may in fact work at 3v3 but I assume many (most?) won't. But then an analogue MUX or GPIO expansion shield probably would. Depending on what chips have been used they could work at both voltages. So there may actually be a lot that do work or that could easily be modified by swapping chips.

It will take some time before due will be a platform I can use.

I guess it depends on what you want to do with it. If your passion is writing drivers and porting libraries you can start right away :slight_smile:

One would assume that all the core libraries are working at release time, it's the 3rd-party stuff that will lag.


Rob

Maybe it's time to bite the 3.3-volt bullet.

there may not even be a bullet to bite, the 32 bit AVR's like the 32 bit PIC's have 5 volt tolerant digital inputs, and on one of my PIC32 boards theres little 1206 SMD pads to add pullup resistors to a 5 volt rail. I use 5 volt devices with it all the time, and heck, if I am not making a big deal about it, its not exactly rocket surgery

edit

Oh nevermind its not using an 32 bit avr, that would make too much since

I know many 32-bit processors are 5v tolerant and I guess in the other direction 3v3 is high enough to register as a high for most (all?) 5v chips.

But unless they have done a total redesign the Due will probably use a SAM3U and that is definitely not 5v tolerant.


Rob

It's kind of strange to jump into this discussion as my first post but oh well here goes...

I remember the first time I wrote a for loop with pwm control and was able to dictate to a fan exactly how fast to turn
and when to speed up or slow down...

I'v never bought a 'shield' actually scratch that, I bought an Ethernet 'shield' and ended up never using it as my first
foray into arduino-dom was with a Teensy and Teensy++ which strictly speaking are not "arduino compatible".

For the fan I used a transistor mediated MOSFET circuit, ah the misery of circuit design, may it fade away :slight_smile:

5v? 3.3v? 1.8v?

Some of this strikes me as slightly superficial, I mean personally I want to learn more about electronics, and even
make my own sensors, this use of modules (which is what shields really are anyway) is great for certain things like ethernet or
bluetooth stacks, but beyond that, I really look forward to using the arduino hardware to help me learn more about electronic
circuits. I like hooking up transistors and using analogWrite() to modulate the power to them in order to understand how they
change in response under different voltage and current settings.

The arduino is like a semi-automated "independant variable" which we in the novice rungs of electronics so often need when troubleshooting
circuits. Before using micro-controllers the best I could hope for when creating a sweep signal was an oscillating 555 which required knowledge of
capacitor to transistor dynamics which I did not have and am still building up.

I have a strange feeling that the 'shield' moniker is not an accidental nomenclature, I have a suspicion that the very word is rife with meaning as it
applies to electronics... Here is a piece of equipment that will 'shield' the user from the details of the electronic circuit. If I'm wrong then I would like
to know why that particular word was used. I like the term "breakout board" or "module", but in the end frankly I don't care about the "compatibility issue"
because my aim personally is to learn how to convert signals from 5v to 3.3v to 1.8v and back again, and the arduino environment gives me just enough
insulation from the horribly unforgiving world of embedded systems so that I still want to explore circuit dynamics.

I think the compatibility issue is more of a concern for those people who view the arduino platform and it's add-ons the way PC and Mac users view their own
platforms. Speaking for my own interests though, I like] the fact that I'm exploring the world of ADCs and DACs and at least asking the questions necessary to understand how to interface a hardware ADC to an arduino, I like the details, it's exciting, and empowering.

My predominant hope with the Due is speed, sheer speed of calculation and a ton of inputs and outputs, I tend to like sensors, LOTS of sensors.

Applications?

I want to play with laser-range finding, no not using a 'shield', but I actually want to get messy with the diode assemblies and phototransistor arrays.

Someone mentioned realtime spectrum analysis, yeah that sounds interesting too.

At the end of the day I don't view the arduino as an 'end' in and of itself like some sort of product to be QC'd to satisfaction...

I view it as a stepping stone into the world of electronics, and a "back door" way of accessing the kinds of knowledge and technology that heretofore
would have required years of study at an engineering school. I don't mind the years of "self-study", but the electronics portion of the gauntlet is just
too hard, and also too basic to be fun... I mean 555's and transistors? That's like living life at the amoeba level, while trying to evolve towards a four
legged mammal... The arduino makes this dip into the austere, spartan, mind numbingly boring world of electronic components... bearable, and dare
I say even 'fun'...

I have a feeling that the limitations I face are mostly knowledge-based limitations. i.e. That the right algorithms coupled with the right signal conditioning would enable some really cool applications even with the current crop of atmel MCUs, to say nothing of the Maple...Mmmmm.

Raspberry Pi? Talk about a confluence of technologies sounding like a breakfast spread. I see the Raspberry Pi as an awesome secondary processing
node for the primary sensor data acquirable with the lower level MCUs...

Something involving cars... and a "radar-like" capability in 360 degrees Hmmmm, yeah I have a lot of learning to do.

Anyway, that's my two cents...

Hi Node-0, welcome to the forum and great first post.

I remember the first time I wrote a for loop with pwm control and was able to dictate to a fan exactly how fast to turn
and when to speed up or slow down...

There's something great about controlling physical devices, I like programming fancy GUIs as well but you don't get get the same thrill as watching a mechanical device move because your code told it to.

ah the misery of circuit design, may it fade away :slight_smile:

For me the hardware design is one of the best parts, but not the building and debugging. I hate that.

For people making their own shields/hardware the 3v3/5v thing doesn't matter much, it's just the 500 existing shields that may be orphaned. But then it's probably fair to say that the Due is for more advanced users, the mainstream will still be the smaller 5v Arduinos.

the 'shield' moniker is not an accidental nomenclature, I have a suspicion that the very word is rife with meaning as it
applies to electronics...Here is a piece of equipment that will 'shield' the user from the details of the electronic circuit.

Who knows. Personally I think it's just a stupid name to match the stupid shape. All done to appeal to artists. That said "shield" is a lot easier to say than "mezzanine board" or "daughter board".

My predominant hope with the Due is speed, sheer speed of calculation and a ton of inputs and outputs, I tend to like sensors, LOTS of sensors.

That shouldn't be a problem.

Someone mentioned realtime spectrum analysis, yeah that sounds interesting too.

I see the Raspberry Pi as an awesome secondary processing node for the primary sensor data acquirable with the lower level MCUs...

Yep, sensing and low-level data-dicking with the Due, then offload the fancy GUI display to an RPi or some such.

Anyway, that's my two cents...

More like $2 :slight_smile:


Rob

Graynomad:
OTOH there are about 500 existing shields, pity to dump them. As to how many of those shields are useful that's a different story and I'm not about to trawl through shieldlist.org to find out. Some may in fact work at 3v3 but I assume many (most?) won't.

I think it is a great pity that the designers didn't take this as an opportunity to dump the broken shield pin placement on the 8 bit arduinos and start with a clean sheet of paper for the 32 bit devices.

But dumping the 8 bit shield design for the 32 bit devices is not the same as dumping the existing shields. It's not as if there won't continue to be a demand and a significant "ecosystem" for the 8 bit design arduinos and their derivatives. Even if Arduino never manufactured another 8 bit Uno or Mega2560 board, I doubt very much whether it would be the the end of the 8 bit Arduino "standard". The 8 bit boards (well, clones and derivatives at least) and their 5V shields with their trademark broken header layout design would continue for the forseeable future -- at least while AVR 8 bit microcontrollers are still readily available at cheap prices.

But I must assume that the Due will retain the broken header layout, for the sake of "compatibility" (even though it is likely that almost no 8 bit shields will be compatible!) And so what we will see is a new generation of shields designed to run on the 32 bit boards (some of which may be designed to be also backwards compatible with 8 bit boards, but I suspect most shield designers won't bother -- they'll just continue to offer a 8 bit version and a new 32 bit version.)

Finally, not everyone is necessarily going to want to use a Due when a (presumably cheaper) Uno or clone will do the job. For many, perhaps even most Arduino-type applications, the power (and the additional complexity) of the Due will be overkill. And a "dumbed-down" ARM board that is functionally no more than a faster 8 bit AVR board, with more memory (i.e., not exploiting advanced hardware features like DMA, etc.) will make it an even harder sell.

But everything I've read suggests that's exactly what we will be getting -- an ARM board sadly crippled at birth by misguided notions of backwards compatibility with the 8 bit boards.

I hope I'm wrong. I like 8 bit AVR microcontrollers. I like 32 bit ARM microcontrollers. I am not sure I am going to like the Due.

a great pity that the designers didn't take this as an opportunity to dump the broken shield pin placement

I guess we still don't know that will be the case, but I'd say it's a fair bet.

As to when we find out, "after Easter" was the latest.


Rob

I think the "dumbed down" part of it is a plus, I've never had experience with arm boards before and it would give me the chance to play around with it a bit then look deeper and learn how it does it
if arduino didn't exist I wouldn't probably be doing much microcontroller stuff as its a really steep learning curve to learn straight c and all the specific machine commands stuff especially with no proper education on the matter
now I understand most of it but only because I learned the dumbed down version first

now I understand most of it but only because I learned the dumbed down version first

I am in the same boat. I think a compromise would be a dumbed down version and a "pro" version that perhaps had all of the pins broken out. If a person wants to get 100% out of the chip for there project I think they would have to build their own board anyway. An example being the difference between developing a design using an Uno and using just the 328 for the final project.

Reading the LeafLabs forum, it seems there are serveral people making "mini" versions with the STM32 chips much like the Arduino Nano but, with the advantages of the Arm pin count and speed.

What will be the killer app(s)?

Possible something in this way:

Yeah maybe. I think however that the more powerful boards (Pi, Duinomite, Beagle etc etc.) will be better for this and the Due will shine with more traditional embedded applications.


Rob

I think the next killer app for an Arduino like board will not be with the Due. Right now it is vapor. I know it is supposed to be released soon, but how mature will the libraries be? I could not wait as I have 2 projects pending.

One is a high speed fiber connection link at 5Mbps. The other is a biometrics app with TFT display and interface to a 3D environment on a PC. Both of these apps I am using the Uno32 because of price point, form factor, and they are available NOW. The libraries are not as mature as the Arduino 1.0 libs, but they get the job done.

I love the Arduino form factor. I am using Arduinos to create test signals for my Uno32 and for developing programming and test tools. I was really hoping to use the Due, but it is MIA. I just hope when the Due does come due, that it supports 5V tolerant pins.

So, for the next killer app, I am not waiting for the Due. I am using the Uno32.

I just hope when the Due does come due, that it supports 5V tolerant pins.

No it will not.

Does the UNO32?

the pic32's have 5 volt tolerant digital inputs, analogs are not

In fairness the pic32 is in competition with the AVR32 which also supports 5 volt digital inputs, but for some reason the team decided to use this durn ARM thing which is in a entirely different family

Even though some pins are not 5V tolerant resistors and diodes have been added to make them all 5V tolerant. That in itself is significant.