Best option for Arduino+Server??

Hello everybody,

I have an Arduino with some GPS data I want to send to a webserver with a SIM900 module. For what I know, it is not possible to GET/POST... in HTTPS servers isn't it? well I need a database somewhere to post the data from Arduino and I am completely lost.

Should I use some server like heroku? But these kind of platforms use HTTPS and I would not be able to connect to it via Arduino? Shoud I use my own computer as a server, or use a raspberry to make one?

Is there any good tutorial to upload data to the cloud in a database with sim900 module?? Thank you for reading.

The HTTPS part is dependent on your GPRS chip and whether it supports SSL or not, as the Arduino doesn't have enough grunt to support SSL itself. I'm not familiar with the SIM900, so you will have to check that yourself.

For the server side of things, I assume that because you are using a GPRS shield that your Arduino is not physically near the server that you want to communicate with, so your only communications mechanism is the internet.

You can get a free server for a year on AWS that will be reachable from the internet. I use ElasticBeanstalk which has support for many flavours of popular servers like Tomcat, .NET, PHP etc. You can also run a docker image if you want to have more control.

If you use your own computer, you will more than likely have to open a port forward on your router to allow access to your computer from the internet. Be aware that you will have opened a potential security hole if there are any vulnerabilities in the application server that you run.

I haven't seen any tutorials that cover the full end to end of getting data to a database in the cloud, so you will most likely have to figure out the various parts separately before trying to put it all together. Do you have a particular server side programming language that you are familiar with?

Hello davidrh and comunity,

I managed to GET data from heroku to my Arduino serial monitor using HTTP, not HTTPS. These are good news for me because I thought servers would only work with HTTPS.

Now I have to work with POST commands to send data to the server. I'm a bit familiar with Python for the server side. How can I make Heroku accept posting on its database and how can I program Arduino for doing it?? Thank you for everything. Vince