How to send data from raspberry pi to windows server?

2.5k Views Asked by At

In a project me and students are doing, we want to gather temperature and air humidity information in nodes that sends the data to a raspberry pi. That raspberry pi will then send the data to a mysql database, running on windows platform.

Some background information about the project:

As a project, we are going to design a sellable system which gathers temperature and air humidity information and saves it on a server, which the owner could overwatch on a website/mobile application. He will receive an username and a password when purchasing the system to log in to the server. This means that, as a seller, we bound the station to an account, which is given to the customer.

1 station can add unlimited amount of nodes and will have a static ID, so the server knows which node sends the information. We have very limited knowledge about sending information, python in general and servers/databases.

My problem is: How could I send the data from the raspberry pi? How could I receive the data on the server?

The idea is that the raspberry pi should send data continuously and it's up to the server to accept or ignore data if they are correct or not. I want to send this information:

  • Station ID "In case the node does not exist in the database, it will then add it to the corresponding station"
  • Node ID "To know which node in the database to store the data at"
  • Date/Time "To know when the data was messured"
  • Air humidity
  • Temperature

I am not sure if I need to send account/password information, since it should not matter as long as the account "owns" the station.

I hope I provided enough information.

1

There are 1 best solutions below

4
On

As long as you know the IP address of the windows machine, you can easily run a server on windows (Apache/MySQL -> PHP). You provide this IP address to the RaspberryPI and it can login and authenticate the same way as on any other server. Basically the WAMP stack will act as an abstraction layer for communication.