Category: Science & Technology

Directions needed on how to build an IoT backend


Hello everyone,

I am a Computer Scientist working on various eterogenous projects. My firm specializes in designing and selling custom microcontroller-driven boards; I mostly develop the firmware, but occasionally also applications (both PC and mobile) that interact with said boards. I also built the company’s website.

From time to time my boss will ask me about a project that requires our products to be reachable by the user via internet through a web or mobile application. I have a general knowledge of all the basics needed to setup something like it, but I’ve never done it before or studied it directly, so I am afraid I would start with the wrong foot.

For example, let’s say our device is a simple light switch. We must provide the users with an Android application that allows them to flip it on and off even when outside the WiFi the switch is connected to. How do I send the command from the smartphone to the device?

My first though would be to use a remote server, possibly on a cloud platform (AWS, Azure, Heroku…). Require the user to register both the device and the app; both the mobile application and the IoT device establish a connection to the cloud and they exchange information from there.

I know this would work, but I have no idea whether it is the most optimal solution. I’m guessing which cloud platform to use is a bit of a personal choice, but even then how should all the parties communicate? I’ve made some demos using custom HTTP APIs serviced by Python CGI scripts, would that be good enough?

I’m asking for directions in a field that’s new to me. Any resource (book, articles, courses) I can follow is welcome!

submitted by /u/whitePestilence
[link] [comments]