Smartdoor system including NFC card detecting, key locking/unlocking, turning LED on/off, etc.
Project description
Smartdoor client system
Smartdoor system including NFC card detecting, key locking/unlocking, turning LED on/off, etc. with Raspberry Pi.
Default circuit diagram
The default circuit diagram is shown below. If you want to use other GPIO pin numbers, please edit the configuration file (see below).
not yet updated
Quick Installation
sudo python -m pip install smartdoor
Before getting started
smartdoor_host
system
Smartdoor Host system which serves the web application for NFC key management must be run. Please install and deploy it in adavnce. (see here).
pigpio library
pigpio
library enables hardware control for PWM signals. This is the optional library for smartdoor
package. If you want to use it, please install it in advance (see here) and run the daemon by the following command:
sudo pigpiod
It is recommended to run the daemon automatically at the system startup. If pigpio
is installed
and impotable from Python, smartdoor
package will automatically register it in systemd
service (see below).
NFC reader permission
To access NFC reader, the permission of the device file must be set. Please execute the following.
sudo sh -c 'echo SUBSYSTEM==\"usb\", ACTION==\"add\", ATTRS{idVendor}==\"054c\", ATTRS{idProduct}==\"06c3\", GROUP=\"plugdev\" >> /etc/udev/rules.d/nfcdev.rules'
sudo udevadm control -R
Then, reboot the system.
This instruction is based on the result of python -m nfc
command. If you use other NFC reader, please change the idVendor
and idProduct
according to your device.
How to use
Almost all the operations are done by the smartdoor
command. Please see the help message for the
details:
smartdoor --help
1. Set up the configuration file
The default configuration file ca be generated by the following command:
smartdoor config --generate
The configuration file is located at ~/.config/smartdoor.toml
. Please edit it according to your environment.
2. Run the main program for testing
The main program can be executed by the following command:
smartdoor start
If you want to specify door is locked/unlocked, add --locked
/--unlocked
option, by default
the door is locked.
The main program will be run in the foreground. If you want stop the program, press Ctrl+C
.
3. Set up the auto start
The main program can be automatically run by systemd
service. To register the smartdoor.service
to systemd
, execute the following command:
smartdoor service --register
Then, the service will be ready for start. Simaltenously, the pigpiod
service will be registered
if pigpio
library is installed.
To manually start it, execute the following command:
smartdoor service --start
Please see the help message for other options:
smartdoor service --help
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file smartdoor-2.0.1.tar.gz
.
File metadata
- Download URL: smartdoor-2.0.1.tar.gz
- Upload date:
- Size: 15.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.31.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e752ac5862ce4c9d77d86a684d38ae6055c8a955208547ef49f154ef4359a9e8 |
|
MD5 | 62d4102278725732267cab194b2b230a |
|
BLAKE2b-256 | e4dd733951d730573dc3301f2f5dd3d7ea84559fa74f668e799156fe85fc9b59 |
File details
Details for the file smartdoor-2.0.1-py3-none-any.whl
.
File metadata
- Download URL: smartdoor-2.0.1-py3-none-any.whl
- Upload date:
- Size: 14.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.31.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9adb5ff0b3eb002ad485a91047a365006e8837c84c31d8fbcf87619bf200383b |
|
MD5 | 16f72c84372e25510263c0b6441332c7 |
|
BLAKE2b-256 | c0216560170e7af3abab44ae393a251c6994e016a3e723d07ce3af5d760e24e6 |