Difference between revisions of "Omegix/USB Auth 1.7"

From Makers Local 256
Jump to: navigation, search
(Troubleshooting: added troubleshooting results)
m (Troubleshooting: added power limitation)
Line 21: Line 21:
  
 
== Troubleshooting ==
 
== Troubleshooting ==
 +
* Was getting some bad errors "journal" errors when plugging in the usb stick.  Power supply couldn't power the NFC reader, relays, and read usb at the same time.  800ma Was not enough.  Need to figure out what the amp limits are on the traces for the raspberry pi
 
* Ran into this error when running DannyO's (hubcitylabs) poll.py script:
 
* Ran into this error when running DannyO's (hubcitylabs) poll.py script:
 
quick2wire/i2c.py", line 72, in transaction
 
quick2wire/i2c.py", line 72, in transaction

Revision as of 20:10, 26 August 2013

Creator:
Omegix
Status:
Your Status
Born On:
18:03, 9 May 2013 (CDT)
Last Updated:
20:10, 26 August 2013 (CDT)

Overview

  • RaspberryPi
    • Running Rasbpian
      • ssh raspberrypi.local

Setup

Steps Taken

  1. Installed Raspbian on a 16GB SD memory card
  2. 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".
  3. 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.

Troubleshooting

  • Was getting some bad errors "journal" errors when plugging in the usb stick. Power supply couldn't power the NFC reader, relays, and read usb at the same time. 800ma Was not enough. Need to figure out what the amp limits are on the traces for the raspberry pi
  • 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
  • Rooted Galaxy S3, NFC reader still does not see phone. Mog suggested that an application might have to be running that will broadcast the NFC ID. --Omegix (talk) 21:13, 31 July 2013 (CDT)
    • When running NDEF Tools on my rooted (may not matter) GS3, the NFC ID was broadcast.
    • The Galaxy S4 (Four) writes a different NFC tag each scan.

Resources

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
    1. install from github, tarball may not be latest
      • Install Dependencies: sudo apt-get install python-lxml python-mysqldb python-tweepy python-feedparser python-enchant; sudo pip install pytz praw
    2. run sudo ./setup install to install modules

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