1

I'm planning to create a Arduino device that measures distance, and sends the data to AWS IOT via WIFI . After that i want to see the measurements on an Android or iphone App.

How can i make my idea to work with lots of users? I mean, lets say I sold 100 devices, how each buyer will connect to his own device?

I'm thinking that each Arduino will have a Unique ID/UUID, but how do I make that with AWS IOT? Should I use other server/MQTT platform?

I'm using Arduino ESP32.

2

What you seem to be looking for is called provisioning, and it is quite a complex subject, as you can see from this Amazon page picked at random. You're right to be starting to think about at-scale deployment, and there are other related activities that you might want to start thinking about too (how can you ban tampered devices, how do you track devices without required OTA firmware), how can users transfer/sell devices (if your business model is to sell rather than lend).

You have a few options:

  • Devices could be shipped pre-configured
  • Devices are registered by the end user
  • You handle the registration for the user based on knowing the devices they have

Rest assured that any genuine IoT platform will provide an answer to this aspect of the service. Maybe with varying completeness, but it is something that is fairly fundamental.

  • Hi Sean! Thanks for your reply! I was thinking that each Arduino device will have a unique ID, and when people open the Android/iOS app , they will enter that ID ( printed on the Arduino case ), and the default password ( that can be changed ) . Check this video to make an idea: youtube.com/watch?v=ycbMVWg7xN8. , The only difference will be in my case, that i will use a measurement tool instead of a IP camera. – Galatanu Adrian Oct 23 '18 at 18:11
  • Yes, that seems fairly standard. It asking for more interaction by the user than some designers want, but it should work fine. – Sean Houlihane Oct 24 '18 at 6:55
  • Any idea what software to use? Mongoose OS seems a good alternative? – Galatanu Adrian Oct 24 '18 at 7:25
0

You could use the device MAC as a unique identifier of the device. Structure your MQTT topics so that the device unique identifier is part of the topic, then use ACL (access control lists) to limit subscription/publish to the respective topics. I use Mosca MQTT broker with this approach and handle 10+K devices this way.

  • Hi Mhari! Thx for your reply! I will look now at your solution. On Amazon AWS IoT its not working to structure the MQTT to contain Unique ID's. Or at least i dont know how – Galatanu Adrian Oct 23 '18 at 18:17
  • you include the ID along side the other data that is already saving... – dandavis Oct 24 '18 at 19:05

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.