Difference between revisions of "Omegix/USB Auth 1.7"
From Makers Local 256
m (→Troubleshooting: added another solution) |
(→Python Approach: added notes about willie bot installation) |
||
Line 50: | Line 50: | ||
* ScanReedSwitch | * ScanReedSwitch | ||
** Pin Assignments: #25 on GPIO | ** Pin Assignments: #25 on GPIO | ||
+ | * Willie IRC Bot Framework | ||
+ | *# install from github, tarball may not be latest | ||
+ | *#* Install Dependencies: sudo apt-get install python-lxml python-mysqldb python-tweepy; sudo pip install pytz praw | ||
+ | *# run sudo ./setup install to install modules | ||
= Perl Approach = | = Perl Approach = |
Revision as of 15:37, 5 June 2013
Creator: |
Contents
[hide]Overview
- RaspberryPi
- Running Rasbpian
- ssh raspberrypi.local
- Running Rasbpian
Setup
Steps Taken
- Installed Raspbian on a 16GB SD memory card
- Followed this guide to get I2C available
- Used this article to determine that I had a 256MB Model B RaspberryPi. This is important, because when checking i2cdetect I have to use "-y 0" instead of the "-y 1".
- This article is good too, it mentions to add the pi user to the i2c group so you don't have to run sudo all the time.
- http://www.skpang.co.uk/blog/archives/575
- sudo adduser pi i2c
Troubleshooting
- Ran into this error when running DannyO's (hubcitylabs) poll.py script:
quick2wire/i2c.py", line 72, in transaction
ioctl(self.fd, I2C_RDWR, addressof(ioctl_arg))
- Problem Description: hubcitylab's poll.py script works on Rev1 RasbPi, doesn't work on Rev2
- Solution: py532.i2c.py is hard coded to use "0" as the i2c_channel. This needs to be updated to "1" for Rev2 boards, or better yet, have it check which bus is in place and use the correct I2C bus location via detection.
- Better Solution: the libraries downloaded with the git clone of the hikaru-gatekeeper are not the latest. make sure to download the latest libraries (quick2wire, py532, possibly others) independently to get code that will work on Rev2 raspberry pi boards
Resources
- http://hubcitylabs.org/nfc-on-raspberrypi-with-pn532-py532lib-and-i2c/
- http://www.ebay.de/itm/Cooqrobot-PN532-NFC-RFID-Reader-Writer-Module-starter-kits-with-tags-For-Arduino-/161010274918?pt=Wissenschaftliche_Ger%C3%A4te&hash=item257cf5d266
- http://www.hobbytronics.co.uk/raspberry-pi-raspbian-distro
- this article goes over how to use the internal pullup\pulldown resistors on the pi: https://github.com/quick2wire/quick2wire-gpio-admin/blob/master/README.md
Python Approach
- usbScan.py
- Script will continuously scan for new USB devices, and call ldap Check. If ldap check successful, call DoorUnlock.
- nfcScan.py
- same as usbScan.py, except for NFC (and RFID)
- ldapCheck.py
- Take in value, see if it's in the LDAP
- DoorUnlock.py
- Throw pins high and low on the GPIO to trigger relays that will be tied to a powerbolt1000.
- Monitor pins wired to reed switches to ensure door is closed before re-locking.
- Pin Assignments
- Relay for Door Unlock (IN1 on Keyes Relay Board): #23 on GPIO
- Relay for Door Lock (IN2 on Keyes Relay Board): #24 on GPIO
- ScanReedSwitch
- Pin Assignments: #25 on GPIO
- Willie IRC Bot Framework
- install from github, tarball may not be latest
- Install Dependencies: sudo apt-get install python-lxml python-mysqldb python-tweepy; sudo pip install pytz praw
- run sudo ./setup install to install modules
- install from github, tarball may not be latest
Perl Approach
- Would have to write an PN532 driver in perl
- Alternatively have perl call python scripts, python already has a PN532 driver written
- Write a new ackis module for NFC monitoring