Difference between pages "Projects/RFIDpop" and "User:RenderMan"

From ENTS
(Difference between pages)
Jump to: navigation, search
(V1)
 
 
Line 1: Line 1:
 +
RenderMan, yes I have a name, but there are a few others around ENTS and even my family calls me Render.  I've been with ENTS since the beginning.
  
== RFID Enabled Pop Machine AKA Project "Pop-pi"==  
+
== Bio ==
  
 +
I break stuff.  I occasionally help fix it.  Depends on what I'm being paid for.
  
== History ==
+
By day I'm a consultant for all sorts of companies and agencies.  Focusing primarily in Wireless security but I also do all sorts of other things in Penetration Testing and education.  I also speak very frequently around the world on a bunch of topics, from privacy issues to new wireless security research to zombies.
  
After the kind donation of a 70'sish Coca-Cola Vending machine, we started tearing into it to get it workingWhile there were a few issues off the start, it's in good mechanical order and tests showed it's power consumption was >50% less than the existing smaller pop machine in the space.
+
At night, not much changes. I am a hacker at heart, a pirate by political affiliation and a wifi badass by hobbyI can usually be found wardriving, working on new ways to subvert security, playing mad scientist with electronics or more than likely taking some cherished childhood toy and perverting it into something horrible.
  
One major problem was that the coin mechanism would not accept newer loonies and toonies.  A replacement mechanism would be $200 or more.  A bit pricy for a starving hackerspace, so we are doing what all good hackers do, overengineer a solution with parts at hand.  In this case, utilize the door RFID tags the members have anyways and use them to debit from a pre paid pop account.
+
== Projects ==
  
== Help Wanted ==
+
Currently I am the biggest noisemaker at the space about getting the place organized. I normally am not the most organized person, but in this case, it needs to be done, so I'm doing it.  I also help out whenever I can and take on tasks as needed.
  
Want to help out? Interested in learning something new and expanding your skill set? Have a cool idea you want to include into the project?
+
'''
 +
ENTS projects:'''
  
Join the Pop-PI project!
+
I admin the wireless network
Do you know PHP, would you like to learn PHP?
+
  
We are looking for people with an interest in helping out with the following phases of the project. We will offer assistance and training for any piece involved.
+
I teach lockpicking
  
Display Design - ART - Replace the coke sign with a plexiglass version, needs to be able to show a screen.
+
I teach wireless security
Screen Saver - Screen saver that would display fake ad's
+
Screen mount - Mount a monitor to the outer door
+
Outer Shell Design - self explanatory
+
PHP Web Interface - only needs to interface with Pay Pal and save transaction records in the database
+
  
== Mechanics ==
+
RFID Enabling the ENTS pop machine [[http://ents.ca/index.php/Projects/RFIDpop]]
  
The machine is a Vendo V384. [http://soda-machines.com/index.php?option=com_content&task=view&id=554&Itemid=14 Soda-Machines.com]
+
'''Personal Projects:'''
  
Orcinus did much of the work to figure out the mechanics of the machine and how to bypass the coin mech to allow us to dispense product.  It's actually very easy. On the connector to the coin mech, short pins 1-7 together (all the time) and then momentarily contact pins 1-3 and then make your selection.
+
A recreation of Castor's Cane from 'Tron Legacy' - [http://www.renderlab.net/projects/cane/ Build Log]
 +
'Creepy' OLED enabled goggles with voice reactive LED respirator - [http://www.renderlab.net/projects/goggles-v2/ Build Log]
 +
Talking Care Bear brain transplant
 +
Teddy Ruxpin bluetooth enhanceent
  
The original coke sign is a plexiglass insert, easily replacedBehind it is a florecent ballast with a 120v supply line running to it.
+
I am usually tinkering with something when time allowsFor the most part, ENTS itself is my biggest project
  
Photo of the internal electromechanical schematic:
+
===Security Meetups===
[[Media:RFIDpop_mech_schematic.jpg]]
+
  
== Goal ==
+
In an effort to try and build more of a hacker community in Edmonton, I am restarting my Security meetups.  Discussions of the various recent attacks, conference videos, just a way for security people to hang out and learn from one another.
  
With the participation and collaboration of the ents membership, bring the donated Pop machine back into service.  
+
'''Due to my speaking schedule, it's been difficult to pick a day where I know I will be around on a regular basis. I will advise when things get setup.'''
  
To provide a project for multiple members to collaborate together to create a near 0 administration pop machine/pop account tracking system.
 
  
To create a low hassle method of buying caffeine.
+
===Contact===
  
To promote more collaborative team building projects within the membership that cross disciplines and foster education and participation.
+
I am RenderMan on the #ENTS channel on IRC [http://webchat.freenode.net/?randomnick=1&channels=ents&uio=Mj10cnVlJjk9dHJ1ZQ58 (launch webchat)]
  
== Feature Roadmap ==
+
My website is [http://www.renderlab.net (RenderLab.net)] - Email is posted around there
  
Planned and Implemented features, if you would like to participate or learn about any of the features contact the people who are associated with the feature or talk to one of us.
+
I am also around ENTS on a somewhat regular basis, just look for the guy dressed in Black with the Black fedora on his head and the skull mug full of beer in his hand and a surly attitude to stupid questions.
 
+
 
+
   
+
<table border = 1 width = 100%>
+
    <tr>
+
        <th>Feature
+
        </th>
+
        <th>Description
+
        </th>
+
        <th>Version
+
        </th>
+
        <th>Complete
+
        </th>
+
        <th></th>
+
    </tr>
+
    <tr>
+
        <td>Read RFID
+
        </td>
+
        <td>
+
            Ability to read members&#39;s RFID tag</td>
+
        <td>1
+
        </td>
+
        <td>Yes
+
        </td>
+
      <td>Render, Colin
+
        </td>
+
    </tr>
+
 
+
    <tr>
+
        <td>Credit Vending Machine</td>
+
        <td>
+
            Ability to credit the vending machine to allow the dispencing of caffeene</td>
+
        <td>1</td>
+
        <td>Yes</td>
+
    </tr>
+
 
+
    <tr>
+
        <td>Track Member Account</td>
+
        <td>
+
            Ability to track member&#39;s pop account balance</td>
+
        <td>1</td>
+
        <td>Yes</td>
+
<td>Colin
+
        </td>
+
    </tr>
+
 
+
    <tr>
+
        <td>Deduct From Member Account</td>
+
        <td>
+
            Ability to deduct a credit from a members&#39;s account balance</td>
+
        <td>1</td>
+
        <td>Yes</td>
+
<td> Colin
+
        </td>
+
    </tr>
+
 
+
    <tr>
+
        <td>Email Balance to Member</td>
+
        <td>
+
            Ability to email a balance to a member&#39;s account from pop.pi@ents.ca</td>
+
        <td>2</td>
+
        <td>No</td>
+
<td>Render, Colin
+
        </td>
+
    </tr>
+
 
+
    <tr>
+
        <td>Member Account Top Up</td>
+
        <td>
+
            Ability to top up a members account.</td>
+
        <td>2</td>
+
        <td>No</td>
+
<td>Colin
+
        </td>
+
    </tr>
+
 
+
    <tr>
+
        <td>Pay Pal Top Up</td>
+
        <td>
+
            Ability to top up a members account from paypal payment</td>
+
        <td>TBD</td>
+
        <td>No</td>
+
<td>        </td>
+
    </tr>
+
 
+
    <tr>
+
        <td>Video Display Balance</td>
+
        <td>
+
            Video display member balance information</td>
+
        <td>3</td>
+
        <td>No</td>
+
<td></td>
+
    </tr>
+
 
+
    <tr>
+
        <td>Video Advertizing</td>
+
        <td>
+
            Make use of the video monitor for displaying ad&#39;s</td>
+
        <td>4</td>
+
        <td>No</td>
+
<td></td>
+
    </tr>
+
 
+
    <tr>
+
        <td>Mounting Brackets</td>
+
        <td>3D Printed Mounting Brackets Modeled to hold the PI and Relay</td>
+
        <td>2</td>
+
        <td>No</td>
+
<td></td>
+
    </tr>
+
    <tr>
+
        <td>RFID Mounting</td>
+
        <td>3D Printed Mounting Brackets Modeled to hold the RFID where the Change was inserted.</td>
+
        <td>3</td>
+
        <td>No</td>
+
<td></td>
+
    </tr> 
+
    <tr>
+
        <td>Bitcoin Payments</td>
+
        <td>Have the ability to take bitcoin payments.</td>
+
        <td>TBD</td>
+
        <td>No</td>
+
<td></td>
+
</tr>
+
    <tr>
+
        <td>Speaker Feedback</td>
+
        <td>Make use of the audio jack on the pi to output auditory feedback on payment.</br>
+
Sounds to be determined.
+
(Lottery Machine noises, Portal Sounds)
+
</td>
+
        <td>TBD</td>
+
        <td>No</td>
+
<td></td>
+
 
+
    </tr>
+
    <tr>
+
        <td>Motion Detector</td>
+
        <td>Make use of a motion detector as a type of Occupancy sensor for the display screen as well as feedback on when to enable/disable the rfid reader.</td>
+
        <td>TBD</td>
+
        <td>No</td>
+
<td></td>
+
    </tr>
+
</table>
+
 
+
API to interface to paypapal.
+
 
+
3D Printed mount for the RFID reader.
+
 
+
Pop Level Management.
+
 
+
Include a web cam to be hosted on live hacker spaces. "Live from the pop machine!"
+
 
+
== PI Pinout Assignments ==
+
 
+
In Progress.
+
<Table>
+
<tr>
+
<th>Assignment</th>
+
<th>Pin</th>
+
<th>Pin</th>
+
<th>Assignment</th>
+
</tr>
+
<tr>
+
<td>3v3 to LV on Logic Converter</td><td>1</td><td>2</td><td>5V to HV on logic converter</td>
+
</tr>
+
<tr>
+
<td></td><td>3</td><td>4</td><td>5V to + on Relay</td>
+
</tr>
+
<tr>
+
<td></td><td>5</td><td>6</td><td></td>
+
</tr>
+
<tr>
+
<td></td><td>7</td><td>8</td><td>GND to Logic Converter</td>
+
</tr>
+
<tr>
+
<td></td><td>9</td><td>12</td><td>To S on Relay</td>
+
</tr>
+
<tr>
+
<td></td><td>11</td><td>14</td><td></td>
+
</tr>
+
<tr>
+
<td></td><td>13</td><td>14</td><td></td>
+
</tr>
+
<tr>
+
<td></td><td>15</td><td>16</td><td></td>
+
</tr>
+
<tr>
+
<td></td><td>17</td><td>18</td><td></td>
+
</tr>
+
<tr>
+
<td></td><td>19</td><td>20</td><td></td>
+
</tr>
+
<tr>
+
<td></td><td>21</td><td>22</td><td></td>
+
</tr>
+
<tr>
+
<td></td><td>23</td><td>24</td><td></td>
+
</tr>
+
<tr>
+
<td></td><td>25</td><td>26</td><td></td>
+
</tr>
+
</table>
+
 
+
 
+
 
+
== Database ==
+
 
+
Table: MemberAccount
+
<table>
+
<tr>
+
<th>Column</th>
+
<th>DataType</th>
+
<th>Description</th>
+
</tr>
+
<tr>
+
<td>Id</td>
+
<td>int</td>
+
<td>auto increment id for the account table</td>
+
</tr>
+
<tr>
+
<td>RFID</td>
+
<td>varchar</td>
+
<td>decimal value of the member's rfid</td>
+
</tr>
+
<tr>
+
<td>Account</td>
+
<td>int</td>
+
<td>account balance</td>
+
</tr>
+
<tr>
+
<td>Email</td>
+
<td>varchar</td>
+
<td>used to email users when their account is low</td>
+
</tr>
+
</table>
+
 
+
== Fritzing Schematic ==
+
Fritzing can be found at http://fritzing.org/download/
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
https://github.com/adafruit/Fritzing-Library
+
 
+
== V1 ==
+
 
+
Version 1 is to basically setup the nessecary hardware to replace the coin mech and to use the RFID tags to debit from an account with little or no modification to the existing electro mechanical dispensing system.  Various options were considered but parts on hand and flexibility came together in the following:
+
 
+
*Raspberry Pi running Raspian 2013-09-25 (Render)
+
*Parallax Serial RFID Reader (Render)
+
*TTL level shifter for 5v RFID reader to talk to 3.3v Pi serial gpio pins (Colin)
+
*Solid state relay board (on order)
+
*HDMI to DVI Adapter (Render)
+
*Random LCD monitor from around the space
+
*Powered USB hub (Render)
+
 
+
 
+
Current goals: Users provide cash or paypal to director who adds to account for thier tag via web interface or 'credit' tags on the pi.
+
 
+
On scan, Pi checks database for balance.  If sufficient balance, deduct $1 and dispense product.  If insufficent balance, then display an unhappy message .  Once product is dispensed display the username and balance remaining for 15 seconds.  When 'idle' the screen will goto a slide show of comical and ficticious beverages (Duff, Slurm, Nukacola, etc)
+
 
+
Curent Status: In prototype:  Replacement plexiglass for front obtained.  3d printed mount made for all hardware, first test on the actual pop machine with prototype Pi setup was a success!
+
<strike>RFID via GPIO working.  GPIO relay control working. Rough software proof of concept working.</strike>
+
 
+
To-Do:
+
*Clean machine mechanics.  Lube everything inside.  Test all mechanics
+
*Paypal integration
+
*Web Front End for manual account balance adjustment
+
*Custom graphics for sides, front
+
*Custom made circut boards for sturdy integration
+
*3d print mounting brackets once layout confirmed
+
 
+
== V2 ==
+
 
+
Feature requests/ideas:
+
 
+
*Product remaining display
+
*Tie in with mastercontrol
+
*Ability to paypal monies directly to the pi to increase balance (or user added code via web interface)
+
*Random dispense mode (slot machine)
+
*Ability to dispense products at different prices (water $.25, beer $5)
+
*Consumption graphs
+
 
+
 
+
== Useful Links ==
+
 
+
[http://www.susa.net/wordpress/2012/06/raspberry-pi-relay-using-gpio/ http://www.susa.net/wordpress/2012/06/raspberry-pi-relay-using-gpio/]
+
 
+
[http://soda-machines.com/index.php?option=com_content&task=view&id=554&Itemid=14 http://soda-machines.com/index.php?option=com_content&task=view&id=554&Itemid=14]
+
 
+
[http://stackoverflow.com/questions/372885/how-do-i-connect-to-a-mysql-database-in-python http://stackoverflow.com/questions/372885/how-do-i-connect-to-a-mysql-database-in-python]
+
 
+
[http://www.sundh.com/blog/2013/09/connect-parallax-rfid-to-raspberry-pi/ http://www.sundh.com/blog/2013/09/connect-parallax-rfid-to-raspberry-pi/]
+
 
+
[http://zetcode.com/db/mysqlpython/ http://zetcode.com/db/mysqlpython/]
+
 
+
[http://openmicros.org/index.php/articles/94-ciseco-product-documentation/raspberry-pi/217-getting-started-with-raspberry-pi-gpio-and-python http://openmicros.org/index.php/articles/94-ciseco-product-documentation/raspberry-pi/217-getting-started-with-raspberry-pi-gpio-and-python]
+
 
+
[https://developer.paypal.com/ https://developer.paypal.com/]
+
 
+
[http://www.learn2crack.com/2013/10/setup-apache-web-server-php-mysql-raspberry-pi.html http://www.learn2crack.com/2013/10/setup-apache-web-server-php-mysql-raspberry-pi.html]
+
 
+
== Notes ==
+
 
+
Power is no problem.  The existing light ballast for the original backlight is 120v line that is perfectly placed to power everything.
+
 
+
There is lots of room to mount everything behind plexiglass on the outer door or against the inner door.  Approximatly 4" depth is available
+
 
+
Need to also write up how to properly load product or else bad things happen
+
 
+
A large number of vending machines use the same interface for the 'credit' function.  This project can be easily adapted to other models of vending machines.  Could be useful for other hackerspaces.
+
 
+
== Code Repository ==
+
 
+
Code is GPLv2 and available on Github at [https://github.com/renderlab/ENTS-Pop-Pi https://github.com/renderlab/ENTS-Pop-Pi]
+

Revision as of 10:55, 20 November 2013

RenderMan, yes I have a name, but there are a few others around ENTS and even my family calls me Render. I've been with ENTS since the beginning.

Contents

Bio

I break stuff. I occasionally help fix it. Depends on what I'm being paid for.

By day I'm a consultant for all sorts of companies and agencies. Focusing primarily in Wireless security but I also do all sorts of other things in Penetration Testing and education. I also speak very frequently around the world on a bunch of topics, from privacy issues to new wireless security research to zombies.

At night, not much changes. I am a hacker at heart, a pirate by political affiliation and a wifi badass by hobby. I can usually be found wardriving, working on new ways to subvert security, playing mad scientist with electronics or more than likely taking some cherished childhood toy and perverting it into something horrible.

Projects

Currently I am the biggest noisemaker at the space about getting the place organized. I normally am not the most organized person, but in this case, it needs to be done, so I'm doing it. I also help out whenever I can and take on tasks as needed.

ENTS projects:

I admin the wireless network

I teach lockpicking

I teach wireless security

RFID Enabling the ENTS pop machine [[1]]

Personal Projects:

A recreation of Castor's Cane from 'Tron Legacy' - Build Log 'Creepy' OLED enabled goggles with voice reactive LED respirator - Build Log Talking Care Bear brain transplant Teddy Ruxpin bluetooth enhanceent

I am usually tinkering with something when time allows. For the most part, ENTS itself is my biggest project

Security Meetups

In an effort to try and build more of a hacker community in Edmonton, I am restarting my Security meetups. Discussions of the various recent attacks, conference videos, just a way for security people to hang out and learn from one another.

Due to my speaking schedule, it's been difficult to pick a day where I know I will be around on a regular basis. I will advise when things get setup.


Contact

I am RenderMan on the #ENTS channel on IRC (launch webchat)

My website is (RenderLab.net) - Email is posted around there

I am also around ENTS on a somewhat regular basis, just look for the guy dressed in Black with the Black fedora on his head and the skull mug full of beer in his hand and a surly attitude to stupid questions.

Personal tools
Namespaces

Variants
Actions
Navigation
Members
Toolbox