Community Tip - Have a PTC product question you need answered fast? Chances are someone has asked it before. Learn about the community search. X
I am working on a scalable Thingworx project at the moment. I have "n" sensors that will be connected to the platform through the Internet (Wi-fi or Ethernet). I am currently building the application on Thingworx, but I have no idea how many devices will connect to the platform (this number could range from hundreds to thousands of devices). I am trying to work around a solution that ideally would allow for instant connectivity to Thingworx whenever I connect the device to the Internet. How can I achieve this?
I thought of writing the firmware in a way that when the device is turned on and connected to the Internet for the first time, it would emit a REST call to create a remote thing on the server using the device's serial number as the name, and then the device would enter an infinite loop for updating that thing's properties through REST calls. However, as I said, this is a scalable project, I think of manufacturing my own hardware and writing my own firmware. How can I preview this communication and authentication would work, taking into account the appKey will need to be set when the device is manufactured?
I am brainstorming at the moment, any ideas or suggestions are greatly appreciated. I am just trying to get my brain around how Thingworx would deal with this kind of situation. Thank you.
There are some fairly standard approaches.
If you are using our Thingworx agent software, then you can have a device first Connect do all necessary validation transactions and then perhaps receive the appropriate configuration restart and then Connect and Bind.
If it is just REST calls, then you can do it in the way that you describe, a rest call to register and then repeated calls to validate the registration worked
all of this you could probably first trial run on a pc to Thingworx
Thank you for your reply. From what I can see, the main difference between REST calls and using the SDKs/EMS is authentication, given that we need to pass an appkey each time we send a REST call, while we only authenticate once when using the SDKs/EMS, am I right?