Hi
This project allow you to Control your parking door via IOT.
Assume you can open your parking door very simple by your phone just by one click ;-) (over Internet or Local Network)
With this project any phone devices can be a remote for parking Door.
At First Step I implemented this project on local Network (Home Network) after that I decide extend it to internet, that means everywhere if I access to the internet I can control my Home parking door over Internet.(so you can forget limitation of remote board).I cover both local network and internet.
Note: If you want deploy this project over the internet you need static IP address or you need a cloud Service Like Azure or Vm or ….
I cant Access to the Azure L (because of sansation …) so I prepare a vm on the internet and ….
Note: This Project Implemented Completely with Microsoft Platforms (I love Microsoft platforms)
You need a program for control raspberry pi (.NetCore)
You need a mobile app to send commands to the raspberry pi (Xamarin Forms)
You need a service on internet for commutation between mobile app and raspberry pi (If you want extend this project over internet) (.NetCore Web API)
Ok Lest Start
- Install Windows 10 Iot on your Raspberry Pi
- Develop Program for Raspberry pi For Execute Commands (I’m a.net Developer so I develop this program with.net Core).net Core is a cross Platform! So just develop with it and Publish program for win-arm, I used MQTT for communication between raspberry pi and other devices
- Develop Mobile App for send Commands To The Raspberry pi, I developed Mobile App with Xamarin Forms (Xamarin Forms Is a cross platform That support (android, ios, uwp, ….))
- Develop Web Api for commutation between mobile app and raspberry pi, I developed this Api with.netCore
Step1:
You need a simple Logical circuit for remote like this
You Must Put This Module Near The Parking At Home And Connect it to the Raspberry Pi with Cable.
Step2:
Connect Your Parking Remote To The Raspberry
Step3:
Connect Your Raspberry To your Access Point (ADSL Modem) With LAN or WIFI
Step4:
Connect Your Phone To The Access Point And Send Commands to the raspberry with phone APP
Step5:(If you want extend this project over internet)
As I Saied before I have a Vm On the cloud so I developed a service that call my vm every each 5 second
And server Save The Client IP Address.
With this technic, Server Always Know Your IP Address.
Note: You Must Enable Nat in your Adsl Modem! (Port Forwarding)
Note: Security Is Most Important Part. In this Project I Used Some Cryptography In Communication And TLS For Web Api And ….
Still I'm working on the security part...
I Put All Of Codes in GitHub But For Security Reason I had to remove some Parts of Code.
https://github.com/AlirezaP/APSmartHome.APCoreDevice (For Raspberry PI)
https://github.com/AlirezaP/APSmartHome.APIService (Web API)
https://github.com/AlirezaP/APSmartHome.MobileApp (Mobile)
Comments