I am working through the process of creating a product.
I’m having a little trouble connecting all the dots, partly because Particle seems to have a few ways to do the same thing. (web IDE/Console, CLI, workbench).
For my question let’s say I’m using the web console, with a “low volume” product, which means ~30 or at least <50.
Also, it’s a two-legged setup with a web server-based application.
Here’s what I think the basic steps would be for production:
- I’ve developed my device firmware, have it ready to go and then locally saved a .bin file.
– I may or may not have customized the SoftAP for user device setup - I’ve created my OAuth client that enables my web server-based application (two-legged) to create new customers
– my server-based application is programmed to create users, obtain device claim codes, and hand them off to a device - I’ve defined my Product with Particle, using the Particle console
- I’ve added my firmware (.bin) file to the product in the Particle console firmware section
Now, I think that’s “all I have to do” to be in production?
Next, I open up a virgin box of Photons (or P1/P0, Argon, or other WiFi device) and…
-
In the Particle console I add the device to the product using the device’s serial number on the label/barcode
-
I pop a Photon (or P1/P0 or Argon) into the hardware.
Now, at this point I could ship the product - untested.
- The customer creates an account in the web server application, and then proceeds to set up the product
- The customer powers the product, then connects to the Photon’s WiFi SoftAP, at which point the claim code is sent to the Photon via the JavaScript API
- The customer enters in local WiFi parameters, the Photon connects, the firmware is downloaded automatically (OTA) and the customer is off and running
Now, here are my questions.
A. Have I outlined one possible process? Would this be the simplest for a low-volume setup?
B. Is the firmware download in step 9 as I described it? Is that “reliable”? I guess if there is a problem, they could put the device in listening mode and repeat the process?
C. How would I insert a testing step?
(i). Seems that I would connect it to the USB port of my computer, then go through the Particle CLI with a “particle setup” to set WiFi and claim, particle flash to flash it, and then test it, Particle device remove to unclaimed it before shipment to a customer
Thank you!