The core can only be used when WiFi is available. How can a customer without technical knowledge set the WiFi parameters to bring the product to the cloud?
This seems easy enough: http://docs.spark.io/#step-3-connect-your-core-to-the-cloud
I believe thereās someone working on a desktop application. That might be useful as well.
Though with the Photon, youāll be able to connect to its hotspot, and enter your credentials there, which should be easier.
Yes, but this means that the core must be in this state (blue blinking) . Is it possible to go there with a function on the core?
According to this, itāll boot in listening mode. But Iāve got a feeling more people would find it beneficiary to have a firmware function to get there. Perhaps we can ask the guys at Spark, @Dave maybe?
There is already a function to enter Smart Config mode.
Guess I missed that one. Awesome though!
Yes. I think the best thing for a end-consumer product would be for the project owner to claim the core and then erase all wifi config details that way, when the customer boots it up for the first time, it would (perhaps after a āHi, itās nice to meet youā on an LCD) enter listening mode. Once it connects the core will already be claimed and online.
So it would be as simple as this�
setup() {
if ( !WiFi.hasCredentials() ) {
WiFi.listen();
}
}
Do you even need to do this check if youāre in semi-automatic mode and calling WiFi.connect()
?
Is WiFi.listen()
a blocking call like connect
is? Also, how long does WiFi.connect()
go for before timing out? Will my code continue to run if the WiFi.connect()
fails?
@harrisonhjones even with the Core in listening mode the customer will still need to use the Spark Core iOS app to send their network credentials, but to get to that point in the app you need to have logged in with your Spark account. Are you recommending that we give the end-users our account credentials so they can set it up on their network?
The alternative here is that you build a custom iOS app with the Smart Config SDK integrated. But with the Photon coming out in a few months thatās a lot of work for something that will be obsolete very soon
Hope everyoneās having a great holiday so far! Anyone come up with a better solution than giving end-users our Spark account info or integrating the Smart Config SDK into a mobile app ourselves?
I would prefer a WPS button for easiest connection to the end users network (which to my knowledge is impossible with the spark core).
Will this be possible with a Photon device?
Iām working on a modified Spark App with a āSetup my deviceā section which does not require a Spark cloud login
Hopefully will be completed within the week
Note: It will be the android version not the iOS version. If it goes official Iāll see if we canāt do the same with the iOS app
I think the WPS idea is genius. But I am also happy to hear that @harrisonhjones is working on a solution. I have built a product ready for āthe real worldā and the ONLY hangup is I have no way for end users to connect the device.
I hope to see progress on this and if you need people to test I am happy to break it for you.
Thanks for volunteering to break my work I look forward to beta testing it though trurth be told the Spark android team has already done most of my work for me
So it turns out that the fact that the user is signed in or not is heavily tied into the SmartConfig process on the AndroidApp. Iām trying to decide the best way to go about this. I may end up having to remove the Action bar from the smartConfig section (ActionBar = Account Checks in the app) and replacing it with a simplified bar. Itāll mean you canāt log out from the Smart Config section but I donāt think thatāll bother anyone
Nice @harrisonhjones!
So following the train of thought ā youāre working on a version of the Spark Core app that has the login credentials hard coded into the program rather than entered by the user. The process for using your work would be to fork the application, change the login credentials, add some branding, and then release it into the app stores under our own name. Is that correct?
You could do it that way if you wish.
My plan was to do something a little different:
I expect you to ship your product/device with the core pre-claimed to your own account but with no WiFi credentials
When users unbox your product they will be greeted with a flashing blue LED
They will go online to the app store and download the Official Sparkcore app. Once installed they will open it and select āSetup my spark deviceā (or similar). From there the Spark app will do the necessary SmartConfig stuff to get their device online.
Does that make sense?
Makes perfect sense @harrisonhjones but honestly the ability to easily ābrandā the app is important. A simple ālogoā would suffice.
I dont really like launching my device and telling folks āhey you need the spark core app to use itā.
Has anyone considered the WPS option? Is it viable or to much work to integrate?
Youād have to look into if the CC3000 can do WPS.
I could fairly easily release a brandable Spark configure app sure. Iāll go that route then. Youād still have to compile it yourself or I imagine I could do that if I had the logos/branding material
@Herner, the CC3000 does not do WPS, which is why they have their SmartConfig stuff. The Photon will take a totally different approach.