How to avoid sending our source code to Particle?

I noticed that even the Desktop IDE sends our source code to Particle for compilation and gets back a binary that can be sent to the board. It means that you get a copy of our source code, which may or may not be your intent, but regardless we’re not having that. (Even Apple only stores a Bitcode representation so they can recompile and continue distribution for future hardware revs!) The CLI utility also seems to get involved with a Particle “account”. These online forums and, indeed, our web-surfing of the docs are also clearly monitored by IP address. So the question is, do you provide a supported way to make novel things with this gear without Particle becoming aware of it during development and, if so, can you point us to a HOWTO on how to setup our own tool-chain and flashing procedures (using the DFU etc.), or is there some code-signing going on in the background or whatever? If they’re toys for learning in schools great, I would rather ship them back unopened than start JTAG-ing them with Nordic’s native SDK and waste time tracking your source code drivers for your customizations (cellular, WiFi, etc.). Hey, just noticed even this community-forum posting box is auto-saving at a very aggressive rate (at least it has the decency to say “saved” when it’s doing it, unlike Facebook which just tracks every single keystroke silently).

You can use Particle Workbench (which is based on VS Code) to compile locally.

But building locally was already possible with a local GCC toolchain back in Spark Core days as documented here

4 Likes

That VSCode download link opens a form asking for personal info to apply to use it.

Could play with your Arduino “particle-iot/firmware” repo (which makes no reference to Xenon/Argon/Boron in the repo’s title or README) if you had some build instructions that were tested with nRF52 chip based boards all the way through to Blinky/HelloWorld?

Originally found these boards by searching the web for “nRF52” and would probably be happier with the generic Nordic SDK and some C-modules that encapsulate your ESP32 WiFi, SARA cellular interfaces and any other custom hardware you’ve added. Looking for reference not research, etc.

That's due to the beta stage it's currently in, beta testers should provide some contact details.
Once it's ready for release no registration will be required (apart from the in app login to the cloud for cloud build, cloud flash, ...).

BTW, you can even apply with a temporary mail address and a phantasy name :wink:

If you checkout the correct branch then all the correct files will be there to target mesh devices too

Don't mind the missing reference in readme.md the repo contains it all.
Target PLATFORM_ID for the mesh devices are 12, 13 & 14.

2 Likes

apart from the in app login to the cloud for cloud build, cloud flash, …

dude, there is no way we're ever using an IDE that requires us to login to some backend instance --not unless we can host the backend instance on our own servers.

can you put up a HOWTO on using JTAG to flash the Nordic SDK?

I guess you misunderstood what I meant with that.
If you don’t want to cloud build or flash (or anything that requires a connection to your cloud account) you won’t need to log in, but if you want to the login would be of course required in order to do it :wink:

3 Likes

Thanks, it’s becaue one day we might not be able to login anymore…doesn’t mean you went out of business, could mean you went into big business.

1 Like