Leveraging Arduino

We have the simple LED model working and can turn the LED on and off remotely. We now want to advance to the next phase and use Arduino/Wiring.

What setting do we use within Wiring to upload to the board? Are there any other examples for starting Arduino development on the board?

Just because you didn’t mention it - you can programm the SparkCore through the SparkCloud in your browser. But I don’t know whether it is already online…

How are people getting code onto the boards if not through the SparkCloud?

Thanks @dominikkv—exactly right—the ability to write software in the Spark Cloud will be released when we deliver the Spark Core in September—it’s not there now.

@shanem Since you’re one of our beta testers check out the email I sent last week. Reply to that email with your github username, and I’ll invite you to the repo where there are more instructions posted.

Until that part of the Spark Cloud gets built we internally do it the old fashioned way! With Wires! :smile:

Hi, I’m new here but I’m eager to get my Cores and start fiddling with them.

@zachary: When you say “With wires!”, will there be some extension for the Arduino IDE - e. g. like Paul Stoffregen provides for his Teensies (http://www.pjrc.com/teensy/td_download.html) - to be able to use our well known IDE with all the libraries already installed there?
Especially since PJRCs Teensy 3.0 seems to be based on the same µC as the Core, so it seems possible

Hi @ScruffR — We don’t use the Arduino IDE. If you have a full ARM toolchain installed on your computer and can build binaries yourself, then you can flash the binaries to your Cores either over the air with our API or over a USB cable via DFU. The Spark web IDE is live—go to https://www.spark.io/ and click build in the top right.

Check out our latest Kickstarter update for a quick overview, and all the info you could desire is accessible via our resources page.

Cheers! Happy building! If you find a library you want to use and can’t, just let us know!

Thanks for this reply, and I’m testing some free ARM toolchain IDEs (e. g. winIDEA Open or CooCox) which seem quite OK. But I have not yet worked out, how - if at all - it might be possible to hook the DFU into a OneClick build and flash.
For firmware and other core tweaking these IDEs are well suited, but for basic Arduinoing it would still be nice to forgett about the framework and just focus on setup() {…} and loop() { … } as you’d do in the Arduino IDE - no main(), #include wiring.h etc. required - just push “Upload” and build/flash/restart is done.

So it’s still a pitty not to have the convenience/“bareness” of Arduino/Teensyduino IDE - especially for non programmers, one of the Arduino focus groups - but as for me, I’d be able to put up with some more dev. environments on my dev. machine ;- ) - not allowed to use the emoticon as junior user.

@ScruffR - everything you’re looking for that’s provided by the Arduino IDE can be done through our web IDE:

https://www.spark.io/build

As for a local build environment on your own machine, that is something that we’re working on smoothing out, but it might come later in December or early next year.

I do like your online IDE - that is quite close to the Arduino IDE - appart of the momentary lack of “library support”, which you mentioned in another post to be on your ToDo-list anyhow.

It’s also great to hear that local IDE’s a topic for Spark. I just got the impression that would not yet be on your ToDos.
But if it was already, than I’m happy and looking forward to testing it. But since I’m - as surely others are, too - completely aware what huge task you took on with the whole project, there is no rush with that. You know best what has got priority.

As long it will come, I’m prepared to wait.

Great job! Phantastic customer/community relationship! We feel taken serious no matter how “odd” our questions are. Keep it up!

Can’t wait to get my first Cores.

1 Like

Thanks @ScruffR! We definitely listen hard to the community, and once everything’s up and running and we’re happy with the state of things, we’ll start working through the feature backlog. Appreciate the kind words!

Z

@zach & @zachary
As I’ve been fiddling a bit with your Online-IDE I’d like to make some suggestions:

When there are build errors, the link to the error list disappears after a short while, if not immediately clicked and even when you do, the list seems to disappear for good once you have clicked back into the code view - It would be good, if there was a permanent button on the left to show the last build results.

Since there are still a good number of warnings from the framework, it would also be good if there was an option to hide/show warnings.

Whenever the build result view disappears, the code view does seem to still be restricted to the area that it had while the build results were visible - at least in Chrome on Win8.1 this is the case.

I had it twice, that after saving my sketch, the code reverted back to the previously saved state - loosing all changes since (at least in Chrome).

As for the full support of Arduino/Wiring (see https://community.spark.io/t/using-the-spark-core-as-a-hid/70/2) I came accross some differences in the implementation of the two (e.g. splitString(), signbit() and even the type string [error: ‘string’ was not declared in this scope] don’t exist where they do in wiring).
Since I tried to use these Wiring functions and got errors, I’d suspect that your IDE only supports Arduino rather than both. Maybe it would be possible to implement the superset of both. If this isn’t possible in time, the fact should at least be stated more clearly.

It would also be good to have a list of already implemented and in Online-IDE available libraries, include files, keywords, … (maybe just as a link to the Arduino reference, for the time being - till you come round to it).

1 Like

Thanks for the excellent feedback @ScruffR!

Libraries are documented here and will be updated as we flesh out our implementation:
http://docs.spark.io/#/firmware/libraries

I’ll add the following items to our backlog:

  • Users should be able to access the last set of build errors and warnings until they are replaced by a new set, instead of the messages disappearing.
  • We should always show build errors, but warnings should be optional since they’re often just noise
  • Debug code editor resizing when minimizing console
  • Review differences between Arduino & Wiring, add support for some functions (e.g., splitString, signbit), and clearly document which are unsupported

We know about the “unexpected reversion to old code” bug—we saw it a few times at RobotsConf—it’s just hard to reproduce. Thanks for letting us know that you saw it; with a little luck, we’ll squash it soon.

Again, thanks so much for your help! It’s super appreciated. We couldn’t have done this without our entire community! Cheers!