Programming a P1 vs Photon

The demand for my project is growing, so I’m considering redesigning to use the P1 vs the Photon. My project is designed to be used in areas without WiFi access, therefore, I provide a ESP8266 Module (since Photon doesn’t support WiFi access and access point mode simultaneously - I believe).

This means that I have to access the cloud network at least once to program the Photon, but for use, there is no cloud connect.

I therefore use the particle app and a USB cable to program (and upgrade when I find a firmware bug) the Photon.

IF I switch to P1, what is the best way to program it? Do I need the new PCB design to support USB/Serial? Any suggestions would be helpful

You could either add the USB interface, or expose the JTAG/SWD pins and program it using one of those interfaces.



Your situation is similar to mine. I switched to using the P1, and honestly its a walk in the park to do that.
I just added a micro USB, 2 resistors to my board, along with the reset and mode buttons to do that, which you can follow the schematic on the Photon to mirror what they did for the USB.

I never have to connected them to the cloud ,as I just plug it in via USB and use the command line to flash 3 files.
NOTE: 0.6.3 is what I use, as it was solid for me, 0.7.0 gave me issues. But your mileage may vary :wink:
#1) system-part1-0.6.3-p1.bin
#2) system-part1-0.6.3-p2.bin
#3) Then my firmware.

reset and your good to go.

1 Like

Any idea where I can find the schematic for the Photon so I can copy those buttons?


The Photon schematics are here:

The SparkFun Photon RedBoard is actually a P1, and is also a helpful resource. The schematics are available for that too: