Programming the Core over USB and programming via my server

Please excuse the n00b.
So I have received my core but am not currently able to use WiFi to connect. I was under the understanding from the kickstarter that I would be able to program the core much as I could an Arduino with some sort of USB/Serial interface. I spent the last half hour looking through the documentation, but just can’t figure it out…

I am currently working with an overloaded and old router with limited wifi and a phone running 2.3.5 (android), but have projects that would only use WiFi when it became available to send data bursts to my home server. I also want to do most of my programming via my own server rather than the cloud. This also seemed to be something the kickstarter offered. Some of my projects may be deployed in other countries in which case, wifi would be even more limited…

Can someone help point me in the right direction to get started with this? How do I program my Core over USB? Is there a version of the build site I could host on my own server? For that matter, I thought we would be able to reprogram our cores remotely without using the cloud. Is this still possible and if not, that puts the closed source nature of some of the code I use at risk. That’s not cool. (I’m all for open source, but not under every situation and I have no control over code I have been allowed to use…)

Thanks all!

You might find some usefull info here https://github.com/spark/core-firmware .

Or you could search the forum for the term “toolchain” for some more pointers.

1 Like

Hi @Eridath,

No worries! Yes you can program down to the bare metal locally over usb if you’re comfortable installing the arm toolchain, gcc, dfu-util, etc. Instructions are at that link @ScruffR provided here:

We’re also working on the local cloud and command line tools that will let you run everything about your core locally without touching the cloud. You can also compile your code locally using the steps above, and only flash a compiled binary over the air through the cloud, thus avoiding any risk of exposing your code. Steps for that are here:

http://docs.spark.io/#/api/verifing-and-flashing-new-firmware-flash-a-core-with-a-pre-compiled-binary

Thanks!
David

Is there any progress on local cloud software?

Hi @ryotsuke,

I’ve been hoping to release the command line tool before working on the local cloud. Switching between servers right now requires juggling keys and re-compiling firmware which can be a bit of a pain, so I think it makes sense to have the CLI to make that easier. :slight_smile: I will be releasing the command line tool at the end of this sprint (end of next week) with this functionality, but it also requires some updates to the firmware as well. After that the local cloud should come very quickly (our next sprint). I wish I had five more of me so this could go faster, but it’s coming soon!

Thanks,
David

Is there a good tutorial that shows you how you can compile a .Ino and flash it? Debugging over the cloud is hard because my wifi seems to drop when I try and view the serial output via putty

1 Like

Hi @AlexMiller,

Totally, there are some docs about compiling remotely and flashing locally. If you checkout this page: http://docs.spark.io/cli/#update-your-core-remotely and search for “Compiling remotely and Flashing locally”

I hope that helps!

Thanks,
David