lunedì 2 dicembre 2013

Spark Core: Wi-Fi for Everything (Arduino Compatible)

A tiny Wi-Fi development board. Arduino + Wi-Fi + ARM Cortex M3 + wireless programming + REST API = awesome.

Our Kickstarter campaign has ended, but you can still order your own Spark Core at sparkdevices.com.
















WHAT IS IT?

The Spark Core is an Arduino-compatible, Wi-Fi enabled, cloud-powered development platform that makes creating internet-connected hardware a breeze. 
This little board packs a punch: with a 72 MHz ARM Cortex M3, the best Wi-Fi module on the market, wireless programming, and lots of pin outs and peripherals, there's nothing you can't build with the Core.



ARDUINO COMPATIBILE

We love Arduino, and we love writing Arduino code. In fact, we love it so much that we couldn't imagine the Spark Core without it. That's why we've designed the Core to run Wiring, the same simple code as the entire Arduino platform. If you're like us, the last thing you want to do is learn a new programming language or change your existing sketches.






EASY WI-FI SET-UP PROCESS

Set-up steps: 
1. Enter your network name and password into the Spark App and press OK.
That was it. Seriously. You’re connected.
The Spark Core makes first-time configuration of your devices a breeze for both creators and users. The Core includes a brand spankin' new Wi-Fi module: the CC3000 from Texas Instruments. It features their unique setup process called Smart Config that allows makers and developers to bring their creations online in seconds.






REPROGRAM THE CORE OVER WI-FI

The Core is already Wi-Fi connected, so we've decided to do away with wires altogether.* You can program your new software in our web development environment or in your favorite text editor, and with a single click, Spark Flash delivers updated firmware to your project over the web.
Spark Flash means that your projects stay in their enclosures, out in the field, and in the hands and homes of users, where they belong. It also means that your creations can be easily changed, updated, and improved over time, without worrying about USB ports and programmer pins.
* Of course, you can still program the Core over USB or with a JTAG programmer, but where's the fun in that? 






OPEN SOURCE AND THE SPARK COMMUNITY

We've benefitted tremendously from the open source community, and we're dedicated to giving back. The Core is a totally open source hardware product. All of our hardware design files (schematic, board design, and bill of materials) and firmware will be open source. The components we're using are available from any major distributor. We're also sticking with open standards (HTTP, TCP, TLS/SSL, Protocol Buffers) for all of our communications. We want to make it as easy as possible to extend and improve upon the foundation we've built.






MAKE COOL THINGS

We made the Spark Core because we love building things — especially connected things. So while the Core is fun enough on its own, it’s the projects you can build with Spark that really excite us. Here are just a few examples of what you could build:












These are just a few of the projects that we've imagined and built in the last few weeks. We'll be sharing these ideas, and any others we dream up in the future, through Kickstarter updates and on our community site. We hope you'll do the same!






POWERED BY THE SPARK CLOUD

HARDWARE, MEET THE CLOUD.
Imagine if you could create hardware that could be changed and improved with the simplicity and speed of software.  That's the idea behind the Spark Cloud, our network of servers that supercharges every Spark Core with a suite of cool software-enabled features:
  • Write code on your phone in your Grandma's house, and update projects sitting at home in your garage.
  • Program your lights to flutter when your high-school crush changes his/her relationship status on Facebook.
  • Send camera and video feeds securely through the web to share with your friends and family
The Spark Cloud makes your projects accessible from anywhere in the world, creates a secure environment, and allows for our simple but powerful REST API. We built the Spark Cloud to make your lives easier, and to eliminate the complexity and limitations of locally connected products. But don't worry — the Spark Cloud is and always will be free to anyone using the Spark Core.
And in case you're worried about privacy or lock-in, we'll be releasing an open source version of the Spark Cloud designed for easy deployment on local machines or your own Heroku dyno, AWS instance, or private server.






REST API
Our REST API lets you write software for a smartphone, tablet, computer, or web application that can interact with your hardware projects in the physical world. This makes it possible for your devices for you or any other authorized users to access and control your device in any way you'd like from anywhere in the world.
The API has been designed around great REST APIs like Twilio, Stripe, and Twitter (and in fact pairs well with any of those other great APIs!) We've also made it easy to set up permissions so you control who and what can access your stuff.
For those interested, documentation for our API can be found here. Our API will be constantly growing and improving, so be sure to check back often for updates.
128-BIT ENCRYPTION
The Core, the Cloud, and the entire Spark development platform is secured with industry-standard AES (on the hardware side) and SSL (on the API side) encryption to keep all your wireless communications in the right hands. This means that only the set of authorized users that you control (and not your neighborhood or its local hacker club) can communicate with your stuff.



SHIELDS AND ACCESSORIES

Sometimes you want to start a little further along than a blank breadboard. To help, we've designed a few Shields for the Core - complete circuits that can quickly extend the Core into complex projects. Plus, through the Spark Shield Shield, the Spark Core is compatible with Arduino shields, so you can get started with the projects you've already built!
These Shields and accessories can help you kickstart your own connected projects.  We're making them available to you to fiddle with yourself, to expand on and improve, or cast aside altogether.  These little add-ons have helped us build the first projects with the Spark Core, and we can't wait to see the ones you come up with yourself.



THANKS TO OUR SUPPORTERS
First off, thank you! We hope you're excited about the Core. We hope you'll back our project and help us make our dream of easy embedded Wi-Fi come true.
Special thanks to a number of people that have been an enormous help: Cyril Ebersweiler, Zach Hoeken Smith, Jordan Husney, Andy Warner, Jay Schrankler, Sean O'Sullivan, Bogomil Balkansky, David Recordon, John Strong, Alex Ognev, Justin Grammens, Betsy Ziegler, Jordan Dalton, Satish Nair, Paul Detjen, Bill Brown, Solange Guillaume, Ashley Soloff, and the guy who sells us bubble tea everyday.
Like the music from the end of the video? Check out Finley Knight! They make great tunes. Also, you may have caught a peek of a couple cool open source projects form the HAXLR8R office; keep your eye out for the tabletop CNC mill from Zach Hoeken Smith and the 3D printer Deltabot from Nick Starno.

FAQs

How does Spark Flash work?
Spark Flash is possible when both your computer and the Spark Core are connected to the internet (although they don't need to be on the same Wi-Fi network).  You can write code in our simple web IDE and send it to your project with the click of the button.  Once the code compiles successfully on our server, you'll be sent a "compilation successful" notification, and the software on your device will be instantly updated.  
We do it this way to make deploying code to your Core as simple as possible.  If you want, you can always program your device locally.
How does Smart Config work?
To create the best user experience possible, TI created Smart Config — a one-step and one-time process used to connect the hardware devices enabled by the CC3000 (like the Spark Core) to a Wi-Fi network.  Just connect your Wi-Fi enabled phone or tablet to your access point, then enter your network's password into the Spark App, and the setup process completes in less than thirty seconds.  This is entirely unique in the current world of Wi-Fi modules that require multiple steps — including jumping between permanent and ad hoc Wi-Fi networks — to configure a device onto a network.  Smart Config leverages the standard mechanisms present in Wi-Fi to configure the device on the fly, regardless of whether a user interface is available.
The long story short is that we've used it with the Spark Core, it works, and we think its a game-changer for embedded Wi-Fi.
Do I have to be on the same Wi-Fi network as the Core for it to work?
Nope — our REST API is exposed through the Spark Cloud, our servers that do cloud compilation and pass secure messages around between the Spark Core and everything else. You can access your Spark Core from anywhere!
Wait, the Spark Cloud? Do I have to pay anything for Spark Wi-Fi service or Spark apps?
Nope! The Spark Cloud is and will always be free for life when you buy a Spark Core. However, developers who create apps for the Spark Core or for Spark-powered products may choose to charge for them, by selling those apps through the iPhone App Store, Google Play, or on their own websites.
What if I want to scale the project I build on the Core? Can you help?
Yes! Tight integration between the Spark Core and the Spark Cloud means that Spark is the perfect development platform for 1, 100, or 100,000 of your shiny new connected ideas. Our servers will automatically adapt to the data and back-end needs of any project in any environment — large or small, few or many. If you want to talk shop, shoot us an email at hello [at] sparkdevices [dot] com.
Don’t I know you guys from the Spark Socket?
You do... We're back!
Who made your super sweet video?
None other than Paul Detjen of PCD Productions.  Paul is a talented videographer, musical visionary, and honorable gentlemen.  Hire him while he's still available!

Risks and challenges

There are always significant challenges in manufacturing and delivering any hardware product at scale. Mass manufacturing isn't the same as prototype development; besides making the Core work, we have to make sure they are secure and reliable, and that they can be manufactured efficiently at larger volumes.
Fortunately, we've been living and working in Shenzhen, China for several months now, and have established relationships with manufacturing partners that will help us bring the Core to your doorstep. Plus, the Core does not require the same tooling expenses and long lead times that products with injection molded plastic require, which significantly decreases our fixed costs and delivery timeline.
Of course, there are still risks associated with producing the Spark Core. Unexpected changes in component lead times, availability, and cost are examples of factors outside our direct control that could affect our delivery timeline, but we are working hard to mitigate those risks and plan to be transparent throughout the delivery process.
The other risk with this and any other project that involves physical delivery comes with shipping. There are a number of unforeseen circumstances that can cause problems during the actual physical shipping of the Core. We plan to work with proven companies to help ensure that our Cores and other rewards arrive (in perfect condition) at their delivery destination. Since unforeseen circumstances can sometimes impact the shipping world, we will also make sure to have methods/resources in place to overcome any difficulties.