https://wiki.nottinghack.org.uk/api.php?action=feedcontributions&user=Robert&feedformat=atomNottinghack Wiki - User contributions [en]2024-03-28T23:15:54ZUser contributionsMediaWiki 1.35.1https://wiki.nottinghack.org.uk/index.php?title=2017-12-12_AGM_Proxy_Votes&diff=136602017-12-12 AGM Proxy Votes2017-12-11T13:46:11Z<p>Robert: proxy vote</p>
<hr />
<div>If you cannot attend the AGM, you can register your vote with a proxy voter. This person will submit your vote at the AGM.<br />
<br />
== Proxy Votes ==<br />
<br />
If you would like to volunteer to be a proxy voter please add your name below:<br />
<br />
{| class="wikitable" | <br />
|-<br />
! Name of member acting as Proxy !! Names of members voting via Proxy<br />
|-<br />
| Example || Example<br />
|-<br />
| James Taylor || Member Name 1 <br> Member Name 2 <br />
|-<br />
| Member Name || Member Name 1 <br> Member Name 2 <br />
|-<br />
| Someone || Ben White<br />
|-<br />
| Steve Barnett || Sean Power <br> James Fowkes <br> Robert Hunt<br />
|-<br />
| || <br />
|-<br />
|}</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=Category:Network&diff=13421Category:Network2017-05-31T20:36:12Z<p>Robert: /* VLAN 3 */ add coin acceptor</p>
<hr />
<div>{{TOC right}}<br />
The hackspace network and servers are look after by the [[Team:Network_and_Servers|Network and Servers group]]<br />
=Network Layout=<br />
This page will show the network topology & proposals for network expansion / modification.<br/><br />
<br />
[[File:Hackspace_network_26-02.jpg|800px|thumb|none|alt=A |Hackspace Network]]<br />
<br />
External IP address 79.77.188.139.<br />
<br />
External domain address [http://lspace.nottinghack.org.uk lspace.nottinghack.org.uk] (DNS record looked after by [[User:Lwk|'RepRap' Matt]])<br/><br />
<br />
== Static & Reserved IP's ==<br />
There are a few VLANs:<br />
<br />
{| class="wikitable"<br />
|-<br />
! VLAN<br />
! Network<br />
! Description<br />
|-<br />
| [[#VLAN 1|1]] || 192.168.1.0/24 || Default<br />
|-<br />
| [[#VLAN 2|2]] || 10.0.0.0/24 || Main Hackspace network<br />
|-<br />
| [[#VLAN 3|3]] || 192.168.0.0/24 || [[HackSpace_Instrumentation|Instrumentation projects]]<br />
|-<br />
| [[#VLAN 4|4]] || - || Able / ADSL Modem (PPPoE)<br />
|-<br />
| [[#VLAN 5|5]] || 192.168.0.0/24 || Instrumentation ''test'' (Rommie)<br />
|-<br />
| [[#VLAN 6|6]] || 192.168.6.0/24 || [[Collective#Unimatrix|Unimatrix]]<->[[Collective#Locutus|Locutus]] direct network<br />
|-<br />
| [[#VLAN 7|7]] || 192.168.7.0/24 || [[Collective#Queen|Queen]]<->[[Collective#Unimatrix|Unimatrix]] direct network<br />
|-<br />
| [[#VLAN 8|8]] || 192.168.8.0/24 || [[Collective#Queen|Queen]]<->[[Collective#Locutus|Locutus]] direct network<br />
|}<br />
<br />
The following ranges are reserved for there given purpose:<br />
<br />
{| class="wikitable"<br />
|-<br />
! Start<br />
! End<br />
! Purpose<br />
|-<br />
| 10.0.0.1 || 10.0.0.1 || [[#Kryten|kryten]] The Main Router<br />
|-<br />
| 10.0.0.2 || 10.0.0.79 || Static things<br />
|-<br />
| 10.0.0.80 || 10.0.0.89 || openVPN DHCP pool<br />
|-<br />
| 10.0.0.90 || 10.0.0.99 || Static Printers<br />
|-<br />
| 10.0.0.100 || 10.0.0.254 || DHCP Range<br />
|-<br />
| 10.0.0.255 || 10.0.0.255 || Broadcast<br />
|-<br />
| 192.168.0.1 || 192.168.0.100 || Static [[HackSpace_Instrumentation|HackSpace Instrumentation]]<br />
|}<br />
<br />
<br />
===VLAN 1===<br />
These are all statically assigned.<br />
{| class="wikitable"<br />
|-<br />
! VLAN<br />
! IP<br />
! DNS Name<br />
! Notes<br />
|-<br />
| 1 || 192.168.1.1 || [[Holly|HollyVM]] || Our primary server hosing hms and instrumentation things<br />
|-<br />
| 1 || 192.168.1.2 || ws-switch|| Workshop switch<br />
|-<br />
| 1 || 192.168.1.3 || Lore || Workshop Wifi AP <br />
|-<br />
| 1 || 192.168.1.4 || st-switch || Studio/BlueRoom switch<br />
|-<br />
| 1 || 192.168.1.5 || Data || Studio/BlueRoom Wifi AP <br />
|-<br />
| 1 || 192.168.1.6 || [[#Gibson|Gibson]] || Wifi RADIUS Server<br />
|-<br />
| 1 || 192.168.1.7 || studio-gbit || Dell PowerConnect 2724 (24x gbit)<br />
|-<br />
| 1 || 192.168.1.8 || [[Queeg]] || Hollys backup<br />
|-<br />
| 1 || 192.168.1.9 || [[Collective#Unimatrix|Unimatrix]] ||<br />
|-<br />
| 1 || 192.168.1.10 || [[Collective#Locutus|Locutus]] ||<br />
|-<br />
| 1 || 192.168.1.11 || [[Collective#Queen|Queen]] ||<br />
|-<br />
| 1 || 192.168.1.12 || Holly (on Unimatrix)] ||<br />
|}<br />
<br />
===VLAN 2===<br />
These are assigned via DHCP/MAC using [[#Kryten|Kryten]] or set statically on the device<br />
{| class="wikitable"<br />
|-<br />
! VLAN<br />
! IP<br />
! DNS Name<br />
! Notes<br />
|-<br />
| 2 || 10.0.0.1 || [[#Kryten|Kryten]] || pfSense router on [[Collective]]<br />
|-<br />
| 2 || 10.0.0.2 || [[Holly|HollyVM]] || Our primary server hosing hms and instrumentation things (Squeeze under KVM)<br />
|-<br />
| 2 || 10.0.0.4 || [[JARVIS]] || Sandbox Debian VM open for all members<br />
|-<br />
| 2 || 10.0.0.5 || [[Rommie]] || HMS Development VM<br />
|-<br />
| 2 || <s>10.0.0.6</s> || <s>Workshop</s> || <s>Workshop Wifi AP (channel 11)</s><br />
|-<br />
| <s>2</s> || <s>10.0.0.7</s> || <s>Zyxel</s> || <s>Additional Wifi AP (channel 1)</s><br />
|-<br />
| <s>2</s> || <s>10.0.0.10</s> || <s>[[Collective]]</s> || <s>ESXi Management Server</s><br />
|-<br />
| 2 || 10.0.0.11 || [[Samaritan]] || Monitoring server<br />
|-<br />
| 2 || 10.0.0.12 || [[Queeg]] || Hollys backup<br />
|-<br />
| 2 || 10.0.0.14 || [[Holly]] || Our primary server hosing hms and instrumentation things (Jessie under KVM)<br />
|-<br />
| 2 || 10.0.0.15 || [[#Gibson|Gibson]] || Wifi RADIUS Server<br />
|-<br />
| 2 || 10.0.0.17 || [[Collective#Unimatrix|Unimatrix]] || <br />
|-<br />
| 2 || 10.0.0.18 || [[Collective#Locutus|Locutus]] || <br />
|-<br />
| 2 || 10.0.0.19 || [[Collective#Queen|Queen]] || <br />
|-<br />
| <s>2</s> || <s>10.0.0.21</s> || <s>[[YooCNC|yoocnc]]</s> || <s>YooCNC desktop</s><br />
|-<br />
| 2 || 10.0.0.22 || [[Quorra]] || Quorra<br />
|-<br />
| 2 || 10.0.0.23 || Kiosk || Kiosk PC (under 50" screen in blueroom). WIP.<br />
|-<br />
| 2 || 10.0.0.24 || [[Bishop]] || Laptop for 3D printer<br />
|-<br />
| 2 || 10.0.0.25 || BarBot || Pi in [[Project:BarBot]]<br />
|-<br />
| 2 || 10.0.0.27 || pbx || Asterisk on bare metal<br />
|-<br />
| 2 || 10.0.0.28 || payphone || RaspberryPi in the Payphone <br />
|-<br />
| 2 || 10.0.0.40 || [[Webcams|studiocam]] || Pan/Tilt Studio webcam<br />
|-<br />
| 2 ||<s>10.0.0.90</s> || <s>[[#Marvin|marvin]]</s> || <s>A4 Laser Printer</s><br />
|-<br />
| 2 ||<s>10.0.0.91</s> || <s>[[#Clank|Clank]]</s> || <s>A3 Laser Printer</s><br />
|-<br />
| 2 || <s>10.0.0.92</s> || <s>[[#B4|B4]]</s> || <s>A4 InkJet with Scanner</s><br />
|-<br />
| 2 || 10.0.0.93 || [[Signmaker|Vinyl]] || [[Signmaker|Vinyl]]<br />
|-<br />
| 2 || 10.0.0.94 || [[Rosey]] || Epson WF-7610DWF<br />
|-<br />
| 2 || 10.0.0.95 || [[Bender]] || HP5550<br />
|-<br />
| 2 || 10.0.0.96 || Zebra_2844 || Label printer <br />
|-<br />
| 2 || 10.0.0.97 ||[[Plotter]] || Plotter (HP DesignJet 600)<br />
|}(''coming soon...'') <br /><br />
<br />
===VLAN 3===<br />
These are all statically assigned.<br />
{| class="wikitable"<br />
|-<br />
! VLAN<br />
! IP<br />
! DNS Name<br />
! Notes<br />
|-<br />
| 3 || 192.168.0.1 || [[Holly|Holly]] || Our primary server hosing hms and instrumentation things<br />
|-<br />
| 3 || 192.168.0.6 || [[Holly|HollyVM]] || OLD server. <br />
|-<br />
| 3 || 192.168.0.10 || [[Gatekeeper|gatekeeper]] || Access Control Arduino<br />
|-<br />
| 3 || 192.168.0.11 || [[LED_Matrix|MatrixMQTT]] || BIG LED Matrix Display Arduino<br />
|-<br />
| 3 || 192.168.0.12 || [[Vending_Machine|Vending Machine]] || RFID cashless payment nanode<br />
|-<br />
| 3 || 192.168.0.13 || [[Mini-matrix|Mini-matrix]] || Blue room mini-matrix display nanode<br />
|-<br />
| <s>3</s> || <s>''192.168.0.14''</s> || <s>[[Wall of Faces]]</s> || <s>''Wall of members faces''</s><br />
|-<br />
| 3 || ''192.168.0.15'' || [[Lighting Automation|Studio Controller]] || ''Lighting Controller (Studio)''<br />
|-<br />
| 3 || ''192.168.0.16'' || [[Lighting Automation|Workshop Controller]] || ''Lighting Controller (Workshop)''<br />
|-<br />
| 3 || ''192.168.0.17'' || [[Lighting Automation|Studio Switch Panel]] || ''Lighting Switch's (Studio)''<br />
|-<br />
| 3 || ''192.168.0.18'' || [[Lighting Automation|Workshop Switch Panel]] || ''Lighting Switch's (Workshop)''<br />
|-<br />
| 3 || 192.168.0.19 || WorkshopMQTT || Workshop Bell and Temp Node<br />
|-<br />
| 3 || 192.168.0.20 || [[CoinAcceptor]] || Coin acceptor for [[Snackspace]] / [[Vending_Machine|Vending Machine]] payments<br />
|-<br />
| 3 || 192.168.0.21 || [[NoteAcceptor]] || Note acceptor for [[Snackspace]] / [[Vending_Machine|Vending Machine]] payments<br />
|-<br />
| 3 || 192.168.0.22 || [[Laser_cutter|laser]] ||[[Nhtools|Laser RFID]]<br />
|-<br />
| 3 || 192.168.0.23 || [[3D Printer]] ||[[Nhtools|3D Printer RFID]]<br />
|-<br />
| 3 || 192.168.0.24 || [[Laser Display]] || LED display near laser cutter<br />
|-<br />
| 3 || 192.168.0.25 || [[Queeg]] || Hollys backup<br />
|-<br />
| 3 || 192.168.0.26 || [[Embroidery Machine]] || [[Nhtools|Embroidery machine RIFD]]<br />
|}(''coming soon...'')<br />
<br />
===VLAN 6===<br />
Direct network between Unimatrix and Locutus used for HDD replication<br/><br />
These are all statically assigned.<br />
{| class="wikitable"<br />
|-<br />
! VLAN<br />
! IP<br />
! DNS Name<br />
! Notes<br />
|-<br />
| 6 || 192.168.6.1 || [[Collective#Unimatrix|Unimatrix]] ||<br />
|-<br />
| 6 || 192.168.6.2 || [[Collective#Locutus|Locutus]] || <br />
|-<br />
<!--<br />
| 8 || 192.168.6.3 || [[Collective#Queen|Queen]] || Reserved Not connected<br />
|-<br />
--><br />
|}<br />
<br />
===VLAN 7===<br />
Direct network between Unimatrix and Queen used for VM Backups<br/><br />
These are all statically assigned.<br />
{| class="wikitable"<br />
|-<br />
! VLAN<br />
! IP<br />
! DNS Name<br />
! Notes<br />
|-<br />
| 7 || 192.168.7.1 || [[Collective#Unimatrix|Unimatrix]] ||<br />
|-<br />
<!--<br />
| 7 || 192.168.7.2 || [[Collective#Locutus|Locutus]] || Reserved Not connected<br />
|-<br />
--><br />
| 7 || 192.168.7.3 || [[Collective#Queen|Queen]] ||<br />
|}<br />
<br />
===VLAN 8===<br />
Direct network between Locutus and Queen used for VM Backups<br/><br />
These are all statically assigned.<br />
{| class="wikitable"<br />
|-<br />
! VLAN<br />
! IP<br />
! DNS Name<br />
! Notes<br />
|-<br />
<!--<br />
| 8 || 192.168.8.1 || [[Collective#Unimatrix|Unimatrix]] || Reserved Not connected<br />
|-<br />
--><br />
| 8 || 192.168.8.2 || [[Collective#Locutus|Locutus]] ||<br />
|-<br />
| 8 || 192.168.8.3 || [[Collective#Queen|Queen]] ||<br />
|}<br />
<br />
== External Port Routing ==<br />
{| class="wikitable"<br />
|-<br />
! Service<br />
! External Port<br />
! Internal Port<br />
! Internal IP<br />
! Notes<br />
|-<br />
| HTTP || 80 || 80 || 10.0.0.14 || Webserver on [[Holly]]<br />
|-<br />
| HTTPS || 443 || 443 || 10.0.0.14 || HMS SSL Webserver on [[Holly]]<br />
|-<br />
| SSH || 1922 || 22 || 10.0.0.18 || SSH on [[Collective#Unimatrix|Unimatrix]]<br />
|-<br />
| SSH || 3000 || 22 || 10.0.0.4 || SSH on [[JARVIS]]<br />
|-<br />
| SSH || 3045 || 22 || 10.0.0.5 || SSH on [[Rommie]]<br />
|-<br />
| RTP || 10000-20000 || 10000-20000 || 10.0.0.27 || Asterisk/RTP on PBX<br />
|-<br />
| SIP || 5060 || 5060 || 10.0.0.27 || Asterisk/SIP on PBX<br />
|}<br />
<br />
== Switch port assignments ==<br />
=== Netgear Prosafe FS728x ===<br />
The switch in the members storage room is a Netgear FS728TP (24x 100mbit with [http://en.wikipedia.org/wiki/Power_over_Ethernet POE] + 4x gbit ports), the switch in the workshop is FS728TS (same, but with no POE). As far as possible, both switches should have identical configuration; I.e. if the studio switch fails, the workshop switch should be a drop in replacement.<br />
{| class="wikitable"<br />
|-<br />
! Port<br />
! VLAN<br />
! Comments<br />
|-<br />
| e1-e6 || 3 || [[HackSpace_Instrumentation|Instrumentation projects]] <br />
|-<br />
| e7 || 4 || Able (VDSL Modem)<br />
|-<br />
| e8|| 1,2 || Data/Lore (WAP)<br />
|-<br />
| e9-e10 || 3 || [[HackSpace_Instrumentation|Instrumentation projects]] <br />
|-<br />
| e11 || all || [[Queeg]]<br />
|-<br />
| e12 || 2 || Thomson ST2020 SIP phone in blue room<br />
|-<br />
| e13+ || 2 || Main hackspace network<br />
|-<br />
| g1 || all || [[Collective]]<br />
|-<br />
| g2 || 2 || Gigabit switch on Blue room table<br />
|-<br />
| g3 || 1,2,3,5 || Dell PowerConnect 2724<br />
|-<br />
| g4 || all || ''other'' switch (FS728TP or FS728TS)<br />
|}<br />
<br />
=== Dell PowerConnect 2724 ===<br />
The Dell switch is in the members storage room, just above collective. It is connected to the Netgear FS728TP and to most of the Studio network sockets.<br />
{| class="wikitable"<br />
|-<br />
! Port<br />
! VLAN<br />
! Comments<br />
|-<br />
| e1-e23 || 2 || Main hackspace network<br />
|-<br />
| e24 || 1,2,3,5 || Netgear FS728TP<br />
|}<br />
<br />
== Server Naming ==<br />
See [[Network/Naming|here]] for our naming convention<br />
<br />
= Network Devices=<br />
=== Able ===<br />
Able is Kryten's brother the BT Openreach VDSL modem that talks to the outside world. <br/><br />
<br />
=== [http://en.wikipedia.org/wiki/Kryten Kryten] ===<br />
<br />
Kryten is VM on [[Collective]] running [http://www.pfsense.org pfSense], it handles all our DHCP and routing from the external world.<br/><br />
It is connected to VLAN 4 for access to Able, and 2 for the main hackspace network.<br />
<br />
The Nottinghack VLAN has access to local resources - e.g. a samba file-share on [[JARVIS]], a future local dropbox server for projects & collaborations, a backup of all Web / Wiki files (to allow a remote restore in the event of moving hosts / outage of services) and anything else we don't want to be web facing.<br/><br />
<br />
The VPN (when enabled) would allow remote management of the VLANS, which could come in handy in the event of issues with the client WiFi access point.<br/><br />
<br />
Router management username & password for Authorised members only. If there something you need changing ask on the google group or speak to [[User:Lwk|'RepRap' Matt]] or [[User:Daniel|Daniel]] directly<br/><br />
<br />
Usual rules apply, as to any tool - if you don't know how to use it / don't do anything :)<br />
<br />
====OpenVPN====<br />
<br />
'''Not currently running and not for member access'''<br/><br />
Kryten runs our openVPN server for access to the hackspace network from the outside world.<br/><br />
<br />
For more details see the [[Network/VPN|VPN]] page<br />
<br />
=== WiFi ===<br />
There are three WiFi networks:<br />
<br />
==== HSNOTTS ====<br />
WiFi for Hackspace SSID: '''HSNOTTS''' passcode uses WPA2 protocol AES encryption. Members only, passcode on request, changes to the passcode will be emailed to members only.<br/><br />
<br />
==== HSNOTTS_GUEST ====<br />
WiFi for guests is setup as '''HSNOTTS_GUEST''' and passcode can be provided and this will (possibly at some point) run on a separate VLAN. <br/><br />
<br />
==== [https://spacefed.net/wiki/index.php/Spacenet spacenet] ====<br />
Cross-hackspace wireless network, using WPA2 Enterprise. Login using: <br /><br />
Username: ''&lt;[[HMS]]-username&gt;''@nottinghack.org.uk <br /><br />
Password: ''&lt;[[HMS]]-password&gt;'' <br /><br />
<br />
For more details, see [[spacenet]].<br />
<br />
=Servers=<br />
===[[Holly]]===<br />
See [[Holly]]<br />
===[[Collective]]===<br />
See [[Collective]]<br />
===[[Andromeda]]===<br />
See [[Andromeda]]<br />
<br />
=== [http://en.wikipedia.org/wiki/WOPR Joshua] ===<br />
Joshua loves to play games, Tic Tac Toe, Chess, Global Thermonuclear War... all the family favourites. <br />
We've co-opted him into running Quake II, Open Arena, Unreal Tournament & Counter Strike 1.5. <br/><br />
The aim is to have a games server running games suitable for clients running low powered netbooks & laptops. This allows us to run LAN parties & have more people join in, without having to bring gaming rigs from home. Also QII & Open Arena have open source install paths available, with Unreal & Counter Strike available at low cost.<br/> <br />
Joshua is running Windows XP Pro on a 1GHz PIII with 512MB RAM & a RIVA TNT2 graphics card. <br/><br />
Impressive I know.<br/><br />
<br />
There are 2 user accounts -<br/> <br />
"David" - not password protected, but limited access - suitable for web browsing / printing etc.<br/><br />
"Falken" - admin account - speak to [[User:Tony_S|Tony_S]] if you need the password.<br/><br />
<br />
=Genral Use PC=<br />
===[[Quorra]]===<br />
A workstation with dual heads, Quorra is available for all members to use.<br />
<br />
===[[WOPR]]===<br />
Another general-use PC in the blue room, by the window<br />
<br />
=Printers=<br />
For more details, see [[Printers]].<br />
<br />
=== Bender ===<br />
The HP Color Laserjet HP5550 is set up on 10.0.0.95 as Bender.<br/><br />
The printer feeds A4 paper from tray 2 and A3 paper from tray 3.<br/><br />
A duplexer is installed enabling double-sided printing.<br/><br />
Bender is shared on [[JARVIS]], so should be auto-detected by Linux machines.<br />
<br />
=== Rosey ===<br />
An Epson WF-7610DWF printer/scanner set up on 10.0.0.94. The scanner/printer should be auto-detected by most Linux/Mac machines, and is known to work from [[Quorra]] using Xsane.<br />
<br />
=== Plotter ===<br />
HP DesignJet 600<br />
Not networked, but connected via serial or parallel interface to [[quorra]]<br />
<br />
=Websites=<br />
<br />
=== [http://nottinghack.org.uk Nottinghack.org.uk] ===<br />
<br />
The main Nottinghack websites are run form [[Andromeda]].<br />
<br />
This hosts the [http://nottinghack.org.uk Wordpress blog], [http://wiki.nottinghack.org.uk this wiki], [http://planet.nottinghack.org.uk the Nottinghack Planet]<br />
<br />
The [[Twitterbot]] for @HSNOTTS is also hosted on on this server.<br />
<br />
===[http://lspace.nottinghack.org.uk lspace.nottinghack.org.uk]===<br />
<br />
Hosted locally at the space on [[Holly]] <br/><br />
<br />
Includes:<br />
* [https://lspace.nottinghack.org.uk/hms/ Hackspace Management System] - see [[HMS]]<br />
* [http://lspace.nottinghack.org.uk/addr_graphs/ Graph] showing connected network device count<br />
<br />
DNS record looked after by [[User:Lwk|'RepRap' Matt]]<br />
<br />
===[http://cacti.nottinghack.org.uk/graph_view.php cacti.nottinghack.org.uk]===<br />
<br />
Also hosted locally on [[Holly]] this provides graphing of various stats and info (mostly temperature graphs) from the hackspace instrumentation<br />
<br />
===http://holly/===<br />
<br />
Our intranet, only accessible from the hackspace network<br />
<br />
= HackSpace Instrumentation =<br />
The Network and [[Holly]] provide the backbone to our [[HackSpace Instrumentation]] projects.<br />
<br />
=Other Info=<br />
== ADSL Connection Reboot Procedure ==<br />
If for some reason the internet connection is not responding!<br/><br />
Then Able is located on the Internet shelf on the Members Storage room<br/><br />
On Able check if the 'DSL' and 'Internet' lights are green<br/><br />
If not on then reboot Able by cycling power using the power switch on the back,<br/><br />
If two minutes after doing this the 'DSL' light does not come back on then you need to get in touch with either [[User:Lwk|&#39;RepRap&#39; Matt]] or [[User:Daniel|Daniel]] who can check on Kryten<br/><br />
If there's still no look, it could well be an outside issue with talktalk.<br />
<br />
== Extra Equipment ==<br />
See [[Network/Equipment|here]] for a list of our other network gear<br />
<br />
[[Category:Infrastructure]]</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=Mig_Welder_Pledge&diff=13096Mig Welder Pledge2016-12-08T09:33:10Z<p>Robert: /* List of pledges */</p>
<hr />
<div>This is a pledge to bid in a currently running online auction for a used mig welder for the space. The welder is an ESAB Mig 510 with a Feed 304 (I believe from the photos - the model isn't listed in the text). The auction ends on the 13th at 6pm.<br />
<br />
[http://mam.esab.com/assets/1/430C284BB944436A9D2A3A32A40AD331/doc/613A470C97174EB987D919C1B7BC8125/430481-en_WW-FactSheet_Main-01.pdf ESAB Mig 410/510 Brochure ]<br />
<br />
[http://mam.esab.com/assets/1/430C284BB944436A9D2A3A32A40AD331/doc/253145E04770442C8230F24850316232/430480-en_WW-FactSheet_Main-01.pdf ESAB Feed 304/484 Brochure ]<br />
<br />
This is a very capable machine from a well respected manufacturer. It uses a standard euro torch, and feed rollers are available for wire sizes from 0.6 to 1.6mm, and also for aluminium and flux-core.<br />
<br />
== List of pledges ==<br />
<br />
Please only post on the Google Group mailing list if you really, truly have forgotten your HMS password and need to have someone else to update this.<br />
<br />
{| class="wikitable"<br />
|-<br />
! Who<br />
! How Much<br />
! Paid?<br />
! Method Paid<br />
|-<br />
| [[User:jjb|James B]] || £50 || No || --<br />
|-<br />
| [[User:Lwk|&#39;RepRap&#39; Matt]] || £40 || No || --<br />
|-<br />
| [[User:chriscain|Chris Cain]] || £50 || No || --<br />
|-<br />
| Mouse || £15 || No || --<br />
|-<br />
| Andrew Walters || £25 || No || --<br />
|-<br />
| Kirsty L || £10 || No || --<br />
|-<br />
| [[User:Skipferret|Phil Parry]] || £10 || No || --<br />
|-<br />
| [[User:Tasos|Tasos]] || £35 || No || --<br />
|-<br />
| Ian Davis || £20 || No || --<br />
|-<br />
| Matt Little || £20 || No || --<br />
|-<br />
| Jayen Pancholi || £20 || No || --<br />
|-<br />
| Tom Grover || £30 || No || --<br />
|-<br />
| Paul Meynell || £20 || No || --<br />
|-<br />
| Rob Hunt || £15 || No || --<br />
|-<br />
|}<br />
<br />
{{#widget:PledgeTracker}}<br />
<br />
<br />
[[Category:Pledge Drives]]</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=Nhtools&diff=13069Nhtools2016-12-04T10:56:19Z<p>Robert: /* Enclosure */</p>
<hr />
<div>The tools access control device (which still needs to be named) is designed to allow use of the attached tool to be restricted to inducted members, and to keep track of usage for charging purposes. It's been designed with the aim of being easy to fit to multiple different tools if needed (e.g. lathe and mill), not just the laser cutter - although charging for use is unlikely to be used for other tools.<br />
<br />
For the [[Laser cutter]], it keeps track of [[LaserPledge|pledged time]], and charges by the second for those that didn't pledge, or have used up their pledged time. Any laser usage which isn't covered by pledged time is charged in the same way as the [[Vending_Machine|Vending machine]], which results in a monthly email, and can be paid off using either the [[Snackspace]] jar, or the [[NoteAcceptor]].<br />
<br />
The hardware consists of an Arduino, Ethernet shield, RFID module, (optional) LCD and relay, and it communicates with a server side process on [[Holly]] using [http://en.wikipedia.org/wiki/MQTT MQTT], specifically an instance of the [http://mosquitto.org/ Mosquitto] MQTT broker.<br />
<br />
[[File:Tool_system.png|frame|Tools system overview]]<br />
<br />
There is a related tool booking system running on [[HMS]], however the interaction with that is limited; booking a tool in HMS currently has no connection to who can or can't sign on to the laser. HMS can be used by any member to see their use of the laser (and any charges as a result), as well as see if the laser is currently in use or not.<br />
<br />
=Hardware=<br />
The current device on the [[Laser cutter]] is a prototype, built on an Arduino UNO (or clone, I can't remember), wiznet based Ethernet shield and [http://shop.ciseco.co.uk/protox-standard-worlds-best-prototype-shield-for-xino-and-all-arduino-type-boards/ protoshield]. The second version (intended for the [[3D_Printing_Pledge|3d printer]]) has been built using a custom PCB, see [https://github.com/NottingHack/NH-Tool-PCB GitHub] for the design, and [https://www.flickr.com/photos/nottinghack/sets/72157649341526096 flickr] for photos of the mostly assembled device, minus case.<br />
[[File:tools_laser.jpg|200px|thumb|right|tool control prototype on laser cutter]]<br />
[[File:tools_pcb1.jpg|200px|thumb|right|Next version of tools control device]]<br />
The RFID reader is a MFRC-522 based device purchased from hobby components ([http://hobbycomponents.com/index.php/rfid-module-kit-mifare.html HCMODU0016]) and connected using SPI, the LCD is a 2x16 I2C display also from Hobby Components ([http://hobbycomponents.com/index.php/arduino-compatible-iic-i2c-twi-ywrobot-serial-lcd-1602-module.html HCARDU0023]).<br />
<br />
The attached tool is controlled by using a relay on the protoshield - this is intended more for isolation, and not to switch any great load. In the case of the laser cutter, the relay on the protoshield is wired back to another relay+contactor inside the laser cutter which is wired in series with the incoming mains.<br />
There are two push buttons; one to allow authorised members to record other members as having been inducted, and one to sign off. There is also a status LED that lights up when the signed in member is authorized to give inductions, and flashes after the induct button had been pressed and the system is searching for a card to induct (the original idea was that the induct button would be an illuminated push button).<br />
<br />
{| class="wikitable"<br />
|+Pin assigments<br />
|-<br />
! scope="col"| Pin<br />
! scope="col"| Description<br />
|-<br />
|A4<br />
|SDA for LCD<br />
|-<br />
|A5<br />
|SCL for LCD<br />
|-<br />
|D2<br />
|Sign off button<br />
|-<br />
|D3<br />
|Induct button<br />
|-<br />
|D4<br />
|''(Used by Ethernet shield?)''<br />
|-<br />
|D5<br />
|Relay<br />
|-<br />
|D6<br />
|RFID RST<br />
|-<br />
|D7<br />
|RFID Slave Select (labelled SDA on RFID module)<br />
|-<br />
|D8<br />
|Sign off LED. Currently unconnected - but will be used for tools that don't have an LCD<br />
|-<br />
|D9<br />
|Induct LED<br />
|-<br />
|D10<br />
|''(Used by Ethernet shield?)''<br />
|-<br />
|D11<br />
|MISO for RFID & Ethernet<br />
|-<br />
|D12<br />
|MOSI for RFID & Ethernet<br />
|-<br />
|D13<br />
|SCK for RFID and Ethernet<br />
|}<br />
<br />
=Enclosure=<br />
This is the second version of the enclosure designed for the version 2 PCB. The design files for the laser cut panels and 3D printer parts are available on GitHub at https://github.com/NottingHack/NH-Tool-PCB<br />
<br />
Notes:<br />
* The design is based on using 6mm material for the laser cut panels.<br />
* The LCD is optional, simply omit the hole from the front panel. LCD used: https://www.amazon.co.uk/dp/B019SXNKGU<br />
* The 3D printed card mount should be printed with support material (touching buildplate) and a brim to ensure it does not fall over during printing.<br />
* The hole in the bottom for the IEC C7 socket (figure of 8) is specific to the [[Embroidery Machine]], it can be removed or customized for other tools.<br />
* The micro switch is used for an additional means of card detection but there is currently no support in the firmware.<br />
<br />
{| class="wikitable"<br />
|+BoM (Bill of Materials)<br />
|-<br />
! scope="col"| Qty<br />
! scope="col"| Part<br />
! scope="col"| Description<br />
|-<br />
|8<br />
|M3x16mm bolt<br />
|front and back panels of the box<br />
|-<br />
|4<br />
|M3x12mm bolt<br />
|3D printed card holder<br />
|-<br />
|2<br />
|M3x6mm bolt<br />
|(OPTIONAL) to mount LCD module<br />
|-<br />
|3<br />
|M3x30mm bolt<br />
|mounting PCBs<br />
|-<br />
|15<br />
|M3 nuts<br />
|<br />
|-<br />
|5 (7 if using LCD)<br />
|M3 washers<br />
| PCB mounting, microswitch mounting, (OPTIONAL) LCD mounting<br />
|-<br />
|2<br />
|M2.5x12mm bolts<br />
|microswitch mounting<br />
|-<br />
|2<br />
|M2.5 nuts<br />
|<br />
|-<br />
|1<br />
|4-way F-F cable<br />
|(OPTIONAL) for LCD module<br />
|-<br />
|1<br />
|8-way F-M cable<br />
|for RFID reader module<br />
|-<br />
|1<br />
|7-way M-bare end cable<br />
|front panel buttons and indicators<br />
|-<br />
|3<br />
|5mm LED<br />
|front panel indicators, preferably red, green and yellow<br />
|-<br />
|2<br />
|momentary push switch<br />
|typical sub-mini normally-open panel mount push buttons<br />
|-<br />
|1<br />
|RFID-RC522 module<br />
|<br />
|-<br />
|1<br />
|WIZnet Ethernet shield<br />
|<br />
|-<br />
|1<br />
|HSNOTTS nh-tool PCB v0.2<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|1<br />
|2x16 charter I2C LCD module<br />
|(OPTIONAL) https://www.amazon.co.uk/gp/product/B019SXNKGU or similar<br />
|-<br />
|1<br />
|3D Printed card mount<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|3<br />
|3D Printed M3 spacer<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|1<br />
|Laser cut 6mm wooden box<br />
|(6 panels) https://github.com/NottingHack/NH-Tool-PCB<br />
|}<br />
<br />
The required parts for the construction of the RFID tool control encosure.<br />
<br />
[[File:Rfidbox_01.jpg|675px]]<br />
<br />
Attach the 8-way F-M cable to the RFID-RC522 board, note the colours may be different.<br />
<br />
[[File:Rfidbox_02.jpg|675px]]<br />
<br />
Slot the RFID-RC522 module into the 3D printed plastic card mount.<br />
<br />
[[File:Rfidbox_03.jpg|675px]]<br />
<br />
Due to the thickness of the wooden enclosure (6mm) the panel mounted push button will need to be recessed into the back of the panel. Use a spade bit on the pillar drill to remove about 3mm of the material from the back.<br />
<br />
[[File:Rfidbox_04.jpg|675px]]<br />
<br />
You should now have room to install the push buttons.<br />
<br />
[[File:Rfidbox_05.jpg|675px]]<br />
<br />
Attach the push button and ensure the spring washer is on the back of the panel. Use a pair of pliers to tighten the nuts on the front.<br />
<br />
[[File:Rfidbox_06.jpg|675px]]<br />
<br />
The push buttons should now be securely fastened to the panel.<br />
<br />
[[File:Rfidbox_07.jpg|675px]]<br />
<br />
Lay out the remaining wooden pieces as shown in the photo. The top panel has a cut out for a card on the front edge and the bottom panel has an extended slot for the wires to pass through. The back panel should be orientated so the majority of the holes are near the top. The left and right panels are identical.<br />
<br />
[[File:Rfidbox_08.jpg|675px]]<br />
<br />
Assemble the box and ensure the parts fit together easily with no large gaps.<br />
<br />
[[File:Rfidbox_09.jpg|675px]]<br />
<br />
Use a hot glue gun to glue the side panels of the box together, do not glue the front or back panels in as they are held together with nuts and bolts to allow access to the electronics.<br />
<br />
[[File:Rfidbox_10.jpg|675px]]<br />
<br />
Only a small amount of glue is required in the very corner or the joints.<br />
<br />
[[File:Rfidbox_11.jpg|675px]]<br />
<br />
Allow the glue to cool slightly before continuing.<br />
<br />
[[File:Rfidbox_12.jpg|675px]]<br />
<br />
Pass 3 M3x30mm bolts through the back panel as shown in the photo, note only 3 of the 4 holes are used.<br />
<br />
[[File:Rfidbox_13.jpg|675px]]<br />
<br />
Place the 3D printed M3 spacers over the bolts.<br />
<br />
[[File:Rfidbox_14.jpg|675px]]<br />
<br />
Place the WIZnet Ethernet shield onto the bolts and secure with 3 M3 nuts.<br />
<br />
[[File:Rfidbox_15.jpg|675px]]<br />
<br />
Place 4 M3 nuts into the T-slots towards the back of the enclosure. You may need to use pliers to force the nuts depending on the quality of the wood and laser cutting.<br />
<br />
[[File:Rfidbox_16.jpg|675px]]<br />
<br />
Use 4 M3x16mm bolts to attach the back of the enclosure.<br />
<br />
[[File:Rfidbox_17.jpg|675px]]<br />
<br />
You back panel should look similar to the photo below.<br />
<br />
[[File:Rfidbox_18.jpg|675px]]<br />
<br />
The inside of the enclosure should look similar to the photo below, ensure that the ethernet socket on the WIZnet Ethernet shield is facing the hole in the bottom of the enclosure. If this is not the case you may need to unscrew the back panel and rotate it 180 degrees.<br />
<br />
[[File:Rfidbox_19.jpg|675px]]<br />
<br />
Place the 3 LEDs into holes in the front panel. use red for "STATUS", yellow for "INDUCT" and green for "TOOL". Try and orient the LEDs so that the short legs are all facing the same way to make the wiring easier.<br />
<br />
[[File:Rfidbox_20.jpg|675px]]<br />
<br />
Use some hot glue to secure the LEDs and switches in place.<br />
<br />
[[File:Rfidbox_21.jpg|675px]]<br />
<br />
You should now have a front panel that looks similar to the photo below.<br />
<br />
[[File:Rfidbox_22.jpg|675px]]<br />
<br />
Attach the micro switch with the roller facing towards the bottom using 2 M2.5mm x 12mm bolts, 2x M3 washers and 2x M2.5 nuts<br />
<br />
[[File:Rfidbox_23.jpg|675px]]<br />
<br />
The washer should be near the head of the bolt before it goes through the slots in the 3D printed part as shown in the photo below. You do not need to adjust the position of the switch at this point.<br />
<br />
[[File:Rfidbox_24.jpg|675px]]<br />
<br />
Place 4 M3x12mm bolts through the front panel in the holes.<br />
<br />
[[File:Rfidbox_25.jpg|675px]]<br />
<br />
Attach the 3D printed card mount to the back by securing it with 4 M3 nuts.<br />
<br />
[[File:Rfidbox_26.jpg|675px]]<br />
<br />
Begin wiring the front panel by connecting all of the common/ground connections first, use heat shrink to cover the connections. WARNING: the push buttons and micro switch do not like a lot of heat when soldering as they will very easily melt.<br />
<br />
[[File:Rfidbox_27.jpg|675px]]<br />
<br />
Use the 7-way M to bare ended ribbon cable to make all of the remaining connections including a common/ground. Follow the order based on the board labels to make things easier when connecting the ribbon.<br />
<br />
[[File:Rfidbox_28.jpg|675px]]<br />
<br />
Finished wiring.<br />
<br />
[[File:Rfidbox_29.jpg|675px]]<br />
<br />
Connect the RFID-RC522 module to the main board, the colours should match up as shown below.<br />
<br />
[[File:Rfidbox_30.jpg|675px]]<br />
<br />
Attach the front panel wiring to the back of the main board.<br />
<br />
[[File:Rfidbox_31.jpg|675px]]<br />
<br />
Connect the main board to the WIZnet Ethernet shield being careful not to bend any pins in the process. Place the front panel onto the enclosure and attach with 4 M3 nuts in the T-slots and 4 M3x16mm bolts in the same way the back panel was attached.<br />
<br />
[[File:Rfidbox_32.jpg|675px]]<br />
<br />
NOTE: the power supply, Ethernet cable and relay connections are not shown but can be attached by removing the main board.<br />
<br />
=Firmware=<br />
The source code for the Arduino firmware is on [https://github.com/NottingHack/Tools GitHub],<br />
<br />
The Arduino firmware uses these libraries:<br />
* PubSubClient - https://github.com/knolleary/pubsubclient - for MQTT communications<br />
* HCARDU0023_LiquidCrystal_I2C_V2_1 - http://forum.hobbycomponents.com/viewtopic.php?f=39&t=1125 - for the I2C LCD<br />
* rfid - https://github.com/miguelbalboa/rfid - RFID reader<br />
<br />
The firmware includes a serial based setup menu to configure MAC/IP addresses, set the MQTT topic and tool name; these settings are stored in EEPROM. The idea is to be able to set up the device for another tool without having to change any code.<br />
<br />
[[File:tool_states.png|frame|Possible state transitions]]<br />
<br />
The device can be in one of 6 states (valid transitions shown in the diagram), these are:<br />
{| class="wikitable"<br />
|+States<br />
|-<br />
! scope="col"| State<br />
! scope="col"| Description<br />
|-<br />
|DEV_NO_CON<br />
|No network and/or MQTT connection<br />
|-<br />
|DEV_IDLE<br />
|Connected to MQTT broker on [[Holly]], tool not being used, waiting for an RFID card to be scanned. <br />
|-<br />
|DEV_AUTH_WAIT<br />
|An RFID card has been scanned, and a lookup request sent over the network<br />
|-<br />
|DEV_ACTIVE<br />
|Tool access enabled. It is not possible to leave this state with whilst the RFID card is still on the reader (e.g. pressing the sign out button does nothing with the card still present, nor does a loss of network connection); the only exception is if the induct button is pressed and the signed on member is authorised to induct others.<br />
|-<br />
|DEV_INDUCT<br />
|The induct button has been pressed ''and'' the currently signed on member is permitted to give inductions. The device starts looking for any RFID card other than the one used to sign on.<br />
|-<br />
|DEV_INDUCT_WAIT<br />
|A second RFID card has been found, and a request to induct the member sent.<br />
|}<br />
==Communications==<br />
All communications with the server side is done using MQTT; topic names are comprised of "<base topic><tool name>/<command>". Base topic can be the same for all access controlled tools, but obviously the name must be unique. The base topic currently being used is "nh/tools/", and the name set for the laser cutter is "laser".<br />
<br />
<br />
{| class="wikitable"<br />
|+Commands<br />
|-<br />
! scope="col"| Direction (A=Arduino, S=Server)<br />
! scope="col"| Command<br />
! scope="col"| Payload<br />
! scope="col"| Description<br />
|-<br />
|A > S<br />
|AUTH<br />
|<RFID Serial><br />
| Sent to the server when a card is first presented<br />
|-<br />
|S > A<br />
|GRANT<br />
|<<code>U</code>/<code>I</code>/<code>M</code>><16 char message>\n<16 char message><br />
| The first character must be either <code>U</code>, <code>I</code> or <code>M</code>, which corresponds to the access levels User, Induct or Maintain. Currently there is no difference in the firmware between I and M - both will allow the signed on member to induct others. The remainder of the payload is displayed on the LCD, with a newline character expected to split text for the top and bottom line. At the moment for the laser cutter, the first line shows the username, and the second the amount of pledged time remaining (or blank if none). After 5 seconds, the bottom line of the LCD is wiped and replaced with a session timer (hh:mm:ss).<br />
Once this command is received, power to the tool is enabled.<br />
|-<br />
|S > A<br />
|DENY<br />
|<16 character message><br />
|Received in response to an AUTH if the RFID card was rejected - the message in the payload is displayed on the first line of the LCD. Possible reasons at the moment include "Out of credit", "Unknown card"....<br />
|-<br />
|A > S<br />
|COMPLETE<br />
|<tool active time><br />
|Sent once either the sign off button is pressed, or the 15s card timeout is reached. The payload is currently always 0, but in the future may be the amount of time the laser tube is active for (there is no hardware or firmware support for this yet).<br />
|-<br />
|A > S<br />
|INDUCT<br />
|<induct RFID><code>:</code><inductee RFID> <br />
|Sent when the induct button has been pressed, and a second RFID card found.<br />
|-<br />
|S > A<br />
|ISUC<br />
|<br />
|User inducted successfully; device returns to idle state<br />
|-<br />
|S > A<br />
|IFAL<br />
|<16 char message><br />
|Induct failed. the payload is the failure reason, and is displayed on the first line of the display. Possible reasons include "Bad card", "Not a member". If received, the device looks for another card to try again.<br />
|-<br />
|A > S<br />
|RESET<br />
|<code>BOOT</code> / <code>ACTIVE</code> / <code>IDLE</code><br />
|<br />
*<code>BOOT</code> - Sent when the device is first powered up<br />
*<code>ACTIVE</code> - Sent is the device looses it's network connection whilst tool is in use, and is still in use on reconnecting<br />
*<code>IDLE</code> - Sent if the device looses it's network connection, and the tool is not in use on reconnecting.<br />
|}<br />
<br />
==Examples==<br />
Normal sign on with ~10 hours pledged time remaining, then sign off:<br />
< [nh/tools/laser/AUTH], message=[1234567890]<br />
> [nh/tools/laser/GRANT], message=[UFoo <br />
Remain 10:02:16]<br />
< [nh/tools/laser/COMPLETE], message=[0]<br />
<br />
Member "Bar" with RFID "0000000001" signing on, then successfully inducting member with RFID "9999999999":<br />
< [nh/tools/laser/AUTH], message=[0000000001]<br />
> [nh/tools/laser/GRANT], message=[IBar <br />
Remain 12:07:53]<br />
< [nh/tools/laser/COMPLETE], message=[0]<br />
< [nh/tools/laser/INDUCT], message=[0000000001:9999999999]<br />
> [nh/tools/laser/ISUC], message=[]<br />
<br />
==Configuration==<br />
The device has a serial based configuration menu (9600 baud, set local echo on) which can be used to set:<br />
* MAC address<br />
* IP address<br />
* Tool name - e.g. "laser"<br />
* Base topic - e.g. "nh/tools" <br />
The IP address of the server is currently hard-coded to be 192.168.0.1 ([[Holly]]), this should probably be added to the configuration menu at some point. Once set, these settings are saved in EEPROM.<br />
E.g. showing current settings:<br />
<nowiki><br />
Main menu<br />
---------<br />
[ 1 ] Show current settings<br />
[ 2 ] Set MAC address<br />
[ 3 ] Set IP address<br />
[ 4 ] Set name<br />
[ 5 ] Set base topic<br />
[ 6 ] Reset/reboot<br />
Enter selection: 1<br />
<br />
Current settings:<br />
MAC address: 12:23:34:45:56:67<br />
IP address : 192.0.2.1<br />
Name : test<br />
Base topic : nh/tools<br />
</nowiki><br />
Note that the device must be reset after changing any of these settings - option 6 will reset the Arduino by abusing the watchdog timer.<br />
<br />
==TODO==<br />
* Allow server IP address to be set using serial config menu<br />
* Tidy up RFID code (remove duplication), and allow the type of RFID reader to be changed relatively easily<br />
<br />
<br />
=Current issues=<br />
The biggest problem at the moment is interference from the TIG welder. This either causes the RFID reader to stop reading cards (causing a time-out and sign-off after 15 seconds), or causes the Arduino to reboot, which one happens seems to vary, but obviously neither is good!<br />
<br />
There are also issues with the RFID reader not reading some cards - in particular some newer oyster cards. This is probably down to the choice of RFID reader.<br />
<br />
=Software=<br />
The server side component runs on [[Holly]], is part of the [[HackSpace_Instrumentation|Instrumentation]] project, and is responsible for authorising members to sign on / induct others, keeping track of pledged time and billing for time used. <br />
The source code is on [https://github.com/NottingHack/instrumentation/blob/master/cpp/nh-tools.cpp GitHub].<br />
<br />
'''TODO''': Add some details.<br />
<br />
[[Category:Projects]]<br />
[[Category:Network]]<br />
[[Category:Instrumentation]]</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_32.jpg&diff=13068File:Rfidbox 32.jpg2016-12-04T10:21:28Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_31.jpg&diff=13067File:Rfidbox 31.jpg2016-12-04T10:21:24Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_30.jpg&diff=13066File:Rfidbox 30.jpg2016-12-04T10:21:03Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_29.jpg&diff=13065File:Rfidbox 29.jpg2016-12-04T10:20:59Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_28.jpg&diff=13064File:Rfidbox 28.jpg2016-12-04T10:20:54Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_27.jpg&diff=13063File:Rfidbox 27.jpg2016-12-04T10:20:50Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_26.jpg&diff=13062File:Rfidbox 26.jpg2016-12-04T10:20:45Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_25.jpg&diff=13061File:Rfidbox 25.jpg2016-12-04T10:20:40Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_24.jpg&diff=13060File:Rfidbox 24.jpg2016-12-04T10:20:34Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_23.jpg&diff=13059File:Rfidbox 23.jpg2016-12-04T10:20:29Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_22.jpg&diff=13058File:Rfidbox 22.jpg2016-12-04T10:20:24Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_21.jpg&diff=13057File:Rfidbox 21.jpg2016-12-04T10:20:19Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_20.jpg&diff=13056File:Rfidbox 20.jpg2016-12-04T10:20:13Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_19.jpg&diff=13055File:Rfidbox 19.jpg2016-12-04T10:20:08Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_18.jpg&diff=13054File:Rfidbox 18.jpg2016-12-04T10:20:02Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_17.jpg&diff=13053File:Rfidbox 17.jpg2016-12-04T10:19:58Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_16.jpg&diff=13052File:Rfidbox 16.jpg2016-12-04T10:19:53Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_15.jpg&diff=13051File:Rfidbox 15.jpg2016-12-04T10:19:49Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_14.jpg&diff=13050File:Rfidbox 14.jpg2016-12-04T10:19:44Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_13.jpg&diff=13049File:Rfidbox 13.jpg2016-12-04T10:19:39Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_12.jpg&diff=13048File:Rfidbox 12.jpg2016-12-04T10:19:34Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_11.jpg&diff=13047File:Rfidbox 11.jpg2016-12-04T10:19:29Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_10.jpg&diff=13046File:Rfidbox 10.jpg2016-12-04T10:19:24Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_09.jpg&diff=13045File:Rfidbox 09.jpg2016-12-04T10:19:19Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_08.jpg&diff=13044File:Rfidbox 08.jpg2016-12-04T10:19:14Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_07.jpg&diff=13043File:Rfidbox 07.jpg2016-12-04T10:19:09Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_06.jpg&diff=13042File:Rfidbox 06.jpg2016-12-04T10:19:04Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_05.jpg&diff=13041File:Rfidbox 05.jpg2016-12-04T10:18:59Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_04.jpg&diff=13040File:Rfidbox 04.jpg2016-12-04T10:18:51Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_03.jpg&diff=13039File:Rfidbox 03.jpg2016-12-04T10:18:46Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_02.jpg&diff=13038File:Rfidbox 02.jpg2016-12-04T10:18:41Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:Rfidbox_01.jpg&diff=13037File:Rfidbox 01.jpg2016-12-04T10:18:36Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=Nhtools&diff=13035Nhtools2016-12-03T11:33:03Z<p>Robert: /* Enclosure */</p>
<hr />
<div>The tools access control device (which still needs to be named) is designed to allow use of the attached tool to be restricted to inducted members, and to keep track of usage for charging purposes. It's been designed with the aim of being easy to fit to multiple different tools if needed (e.g. lathe and mill), not just the laser cutter - although charging for use is unlikely to be used for other tools.<br />
<br />
For the [[Laser cutter]], it keeps track of [[LaserPledge|pledged time]], and charges by the second for those that didn't pledge, or have used up their pledged time. Any laser usage which isn't covered by pledged time is charged in the same way as the [[Vending_Machine|Vending machine]], which results in a monthly email, and can be paid off using either the [[Snackspace]] jar, or the [[NoteAcceptor]].<br />
<br />
The hardware consists of an Arduino, Ethernet shield, RFID module, (optional) LCD and relay, and it communicates with a server side process on [[Holly]] using [http://en.wikipedia.org/wiki/MQTT MQTT], specifically an instance of the [http://mosquitto.org/ Mosquitto] MQTT broker.<br />
<br />
[[File:Tool_system.png|frame|Tools system overview]]<br />
<br />
There is a related tool booking system running on [[HMS]], however the interaction with that is limited; booking a tool in HMS currently has no connection to who can or can't sign on to the laser. HMS can be used by any member to see their use of the laser (and any charges as a result), as well as see if the laser is currently in use or not.<br />
<br />
=Hardware=<br />
The current device on the [[Laser cutter]] is a prototype, built on an Arduino UNO (or clone, I can't remember), wiznet based Ethernet shield and [http://shop.ciseco.co.uk/protox-standard-worlds-best-prototype-shield-for-xino-and-all-arduino-type-boards/ protoshield]. The second version (intended for the [[3D_Printing_Pledge|3d printer]]) has been built using a custom PCB, see [https://github.com/NottingHack/NH-Tool-PCB GitHub] for the design, and [https://www.flickr.com/photos/nottinghack/sets/72157649341526096 flickr] for photos of the mostly assembled device, minus case.<br />
[[File:tools_laser.jpg|200px|thumb|right|tool control prototype on laser cutter]]<br />
[[File:tools_pcb1.jpg|200px|thumb|right|Next version of tools control device]]<br />
The RFID reader is a MFRC-522 based device purchased from hobby components ([http://hobbycomponents.com/index.php/rfid-module-kit-mifare.html HCMODU0016]) and connected using SPI, the LCD is a 2x16 I2C display also from Hobby Components ([http://hobbycomponents.com/index.php/arduino-compatible-iic-i2c-twi-ywrobot-serial-lcd-1602-module.html HCARDU0023]).<br />
<br />
The attached tool is controlled by using a relay on the protoshield - this is intended more for isolation, and not to switch any great load. In the case of the laser cutter, the relay on the protoshield is wired back to another relay+contactor inside the laser cutter which is wired in series with the incoming mains.<br />
There are two push buttons; one to allow authorised members to record other members as having been inducted, and one to sign off. There is also a status LED that lights up when the signed in member is authorized to give inductions, and flashes after the induct button had been pressed and the system is searching for a card to induct (the original idea was that the induct button would be an illuminated push button).<br />
<br />
{| class="wikitable"<br />
|+Pin assigments<br />
|-<br />
! scope="col"| Pin<br />
! scope="col"| Description<br />
|-<br />
|A4<br />
|SDA for LCD<br />
|-<br />
|A5<br />
|SCL for LCD<br />
|-<br />
|D2<br />
|Sign off button<br />
|-<br />
|D3<br />
|Induct button<br />
|-<br />
|D4<br />
|''(Used by Ethernet shield?)''<br />
|-<br />
|D5<br />
|Relay<br />
|-<br />
|D6<br />
|RFID RST<br />
|-<br />
|D7<br />
|RFID Slave Select (labelled SDA on RFID module)<br />
|-<br />
|D8<br />
|Sign off LED. Currently unconnected - but will be used for tools that don't have an LCD<br />
|-<br />
|D9<br />
|Induct LED<br />
|-<br />
|D10<br />
|''(Used by Ethernet shield?)''<br />
|-<br />
|D11<br />
|MISO for RFID & Ethernet<br />
|-<br />
|D12<br />
|MOSI for RFID & Ethernet<br />
|-<br />
|D13<br />
|SCK for RFID and Ethernet<br />
|}<br />
<br />
=Enclosure=<br />
This is the second version of the enclosure designed for the version 2 PCB. The design files for the laser cut panels and 3D printer parts are available on GitHub at https://github.com/NottingHack/NH-Tool-PCB<br />
<br />
Notes:<br />
* The design is based on using 6mm material for the laser cut panels.<br />
* The LCD is optional, simply omit the hole from the front panel. LCD used: https://www.amazon.co.uk/dp/B019SXNKGU<br />
* The 3D printed card mount should be printed with support material (touching buildplate) and a brim to ensure it does not fall over during printing.<br />
* The hole in the bottom for the IEC C7 socket (figure of 8) is specific to the [[Embroidery Machine]], it can be removed or customized for other tools.<br />
* The micro switch is used for an additional means of card detection but there is currently no support in the firmware.<br />
<br />
{| class="wikitable"<br />
|+BoM (Bill of Materials)<br />
|-<br />
! scope="col"| Qty<br />
! scope="col"| Part<br />
! scope="col"| Description<br />
|-<br />
|8<br />
|M3x16mm bolt<br />
|front and back panels of the box<br />
|-<br />
|4<br />
|M3x12mm bolt<br />
|3D printed card holder<br />
|-<br />
|2<br />
|M3x6mm bolt<br />
|(OPTIONAL) to mount LCD module<br />
|-<br />
|3<br />
|M3x30mm bolt<br />
|mounting PCBs<br />
|-<br />
|15<br />
|M3 nuts<br />
|<br />
|-<br />
|5 (7 if using LCD)<br />
|M3 washers<br />
| PCB mounting, microswitch mounting, (OPTIONAL) LCD mounting<br />
|-<br />
|2<br />
|M2.5x12mm bolts<br />
|microswitch mounting<br />
|-<br />
|2<br />
|M2.5 nuts<br />
|<br />
|-<br />
|1<br />
|4-way F-F cable<br />
|(OPTIONAL) for LCD module<br />
|-<br />
|1<br />
|8-way F-M cable<br />
|for RFID reader module<br />
|-<br />
|1<br />
|7-way M-bare end cable<br />
|front panel buttons and indicators<br />
|-<br />
|3<br />
|5mm LED<br />
|front panel indicators, preferably red, green and yellow<br />
|-<br />
|2<br />
|momentary push switch<br />
|typical sub-mini normally-open panel mount push buttons<br />
|-<br />
|1<br />
|RFID-RC522 module<br />
|<br />
|-<br />
|1<br />
|WIZnet Ethernet shield<br />
|<br />
|-<br />
|1<br />
|HSNOTTS nh-tool PCB v0.2<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|1<br />
|2x16 charter I2C LCD module<br />
|(OPTIONAL) https://www.amazon.co.uk/gp/product/B019SXNKGU or similar<br />
|-<br />
|1<br />
|3D Printed card mount<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|3<br />
|3D Printed M3 spacer<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|1<br />
|Laser cut 6mm wooden box<br />
|(6 panels) https://github.com/NottingHack/NH-Tool-PCB<br />
|}<br />
<br />
[[File:IMG 6339.jpg|675px]]<br />
[[File:IMG 6340.jpg|675px]]<br />
[[File:IMG 6341.jpg|675px]]<br />
[[File:IMG 6342.jpg|675px]]<br />
[[File:IMG 6343.jpg|675px]]<br />
[[File:IMG 6344.jpg|675px]]<br />
[[File:IMG 6345.jpg|675px]]<br />
[[File:IMG 6347.jpg|675px]]<br />
[[File:IMG 6348.jpg|675px]]<br />
[[File:IMG 6355.jpg|675px]]<br />
[[File:IMG 6357.jpg|675px]]<br />
[[File:IMG 6360.jpg|675px]]<br />
[[File:IMG 6361.jpg|675px]]<br />
[[File:IMG 6373.jpg|675px]]<br />
[[File:IMG 6374.jpg|675px]]<br />
[[File:IMG 6375.jpg|675px]]<br />
<br />
=Firmware=<br />
The source code for the Arduino firmware is on [https://github.com/NottingHack/Tools GitHub],<br />
<br />
The Arduino firmware uses these libraries:<br />
* PubSubClient - https://github.com/knolleary/pubsubclient - for MQTT communications<br />
* HCARDU0023_LiquidCrystal_I2C_V2_1 - http://forum.hobbycomponents.com/viewtopic.php?f=39&t=1125 - for the I2C LCD<br />
* rfid - https://github.com/miguelbalboa/rfid - RFID reader<br />
<br />
The firmware includes a serial based setup menu to configure MAC/IP addresses, set the MQTT topic and tool name; these settings are stored in EEPROM. The idea is to be able to set up the device for another tool without having to change any code.<br />
<br />
[[File:tool_states.png|frame|Possible state transitions]]<br />
<br />
The device can be in one of 6 states (valid transitions shown in the diagram), these are:<br />
{| class="wikitable"<br />
|+States<br />
|-<br />
! scope="col"| State<br />
! scope="col"| Description<br />
|-<br />
|DEV_NO_CON<br />
|No network and/or MQTT connection<br />
|-<br />
|DEV_IDLE<br />
|Connected to MQTT broker on [[Holly]], tool not being used, waiting for an RFID card to be scanned. <br />
|-<br />
|DEV_AUTH_WAIT<br />
|An RFID card has been scanned, and a lookup request sent over the network<br />
|-<br />
|DEV_ACTIVE<br />
|Tool access enabled. It is not possible to leave this state with whilst the RFID card is still on the reader (e.g. pressing the sign out button does nothing with the card still present, nor does a loss of network connection); the only exception is if the induct button is pressed and the signed on member is authorised to induct others.<br />
|-<br />
|DEV_INDUCT<br />
|The induct button has been pressed ''and'' the currently signed on member is permitted to give inductions. The device starts looking for any RFID card other than the one used to sign on.<br />
|-<br />
|DEV_INDUCT_WAIT<br />
|A second RFID card has been found, and a request to induct the member sent.<br />
|}<br />
==Communications==<br />
All communications with the server side is done using MQTT; topic names are comprised of "<base topic><tool name>/<command>". Base topic can be the same for all access controlled tools, but obviously the name must be unique. The base topic currently being used is "nh/tools/", and the name set for the laser cutter is "laser".<br />
<br />
<br />
{| class="wikitable"<br />
|+Commands<br />
|-<br />
! scope="col"| Direction (A=Arduino, S=Server)<br />
! scope="col"| Command<br />
! scope="col"| Payload<br />
! scope="col"| Description<br />
|-<br />
|A > S<br />
|AUTH<br />
|<RFID Serial><br />
| Sent to the server when a card is first presented<br />
|-<br />
|S > A<br />
|GRANT<br />
|<<code>U</code>/<code>I</code>/<code>M</code>><16 char message>\n<16 char message><br />
| The first character must be either <code>U</code>, <code>I</code> or <code>M</code>, which corresponds to the access levels User, Induct or Maintain. Currently there is no difference in the firmware between I and M - both will allow the signed on member to induct others. The remainder of the payload is displayed on the LCD, with a newline character expected to split text for the top and bottom line. At the moment for the laser cutter, the first line shows the username, and the second the amount of pledged time remaining (or blank if none). After 5 seconds, the bottom line of the LCD is wiped and replaced with a session timer (hh:mm:ss).<br />
Once this command is received, power to the tool is enabled.<br />
|-<br />
|S > A<br />
|DENY<br />
|<16 character message><br />
|Received in response to an AUTH if the RFID card was rejected - the message in the payload is displayed on the first line of the LCD. Possible reasons at the moment include "Out of credit", "Unknown card"....<br />
|-<br />
|A > S<br />
|COMPLETE<br />
|<tool active time><br />
|Sent once either the sign off button is pressed, or the 15s card timeout is reached. The payload is currently always 0, but in the future may be the amount of time the laser tube is active for (there is no hardware or firmware support for this yet).<br />
|-<br />
|A > S<br />
|INDUCT<br />
|<induct RFID><code>:</code><inductee RFID> <br />
|Sent when the induct button has been pressed, and a second RFID card found.<br />
|-<br />
|S > A<br />
|ISUC<br />
|<br />
|User inducted successfully; device returns to idle state<br />
|-<br />
|S > A<br />
|IFAL<br />
|<16 char message><br />
|Induct failed. the payload is the failure reason, and is displayed on the first line of the display. Possible reasons include "Bad card", "Not a member". If received, the device looks for another card to try again.<br />
|-<br />
|A > S<br />
|RESET<br />
|<code>BOOT</code> / <code>ACTIVE</code> / <code>IDLE</code><br />
|<br />
*<code>BOOT</code> - Sent when the device is first powered up<br />
*<code>ACTIVE</code> - Sent is the device looses it's network connection whilst tool is in use, and is still in use on reconnecting<br />
*<code>IDLE</code> - Sent if the device looses it's network connection, and the tool is not in use on reconnecting.<br />
|}<br />
<br />
==Examples==<br />
Normal sign on with ~10 hours pledged time remaining, then sign off:<br />
< [nh/tools/laser/AUTH], message=[1234567890]<br />
> [nh/tools/laser/GRANT], message=[UFoo <br />
Remain 10:02:16]<br />
< [nh/tools/laser/COMPLETE], message=[0]<br />
<br />
Member "Bar" with RFID "0000000001" signing on, then successfully inducting member with RFID "9999999999":<br />
< [nh/tools/laser/AUTH], message=[0000000001]<br />
> [nh/tools/laser/GRANT], message=[IBar <br />
Remain 12:07:53]<br />
< [nh/tools/laser/COMPLETE], message=[0]<br />
< [nh/tools/laser/INDUCT], message=[0000000001:9999999999]<br />
> [nh/tools/laser/ISUC], message=[]<br />
<br />
==Configuration==<br />
The device has a serial based configuration menu (9600 baud, set local echo on) which can be used to set:<br />
* MAC address<br />
* IP address<br />
* Tool name - e.g. "laser"<br />
* Base topic - e.g. "nh/tools" <br />
The IP address of the server is currently hard-coded to be 192.168.0.1 ([[Holly]]), this should probably be added to the configuration menu at some point. Once set, these settings are saved in EEPROM.<br />
E.g. showing current settings:<br />
<nowiki><br />
Main menu<br />
---------<br />
[ 1 ] Show current settings<br />
[ 2 ] Set MAC address<br />
[ 3 ] Set IP address<br />
[ 4 ] Set name<br />
[ 5 ] Set base topic<br />
[ 6 ] Reset/reboot<br />
Enter selection: 1<br />
<br />
Current settings:<br />
MAC address: 12:23:34:45:56:67<br />
IP address : 192.0.2.1<br />
Name : test<br />
Base topic : nh/tools<br />
</nowiki><br />
Note that the device must be reset after changing any of these settings - option 6 will reset the Arduino by abusing the watchdog timer.<br />
<br />
==TODO==<br />
* Allow server IP address to be set using serial config menu<br />
* Tidy up RFID code (remove duplication), and allow the type of RFID reader to be changed relatively easily<br />
<br />
<br />
=Current issues=<br />
The biggest problem at the moment is interference from the TIG welder. This either causes the RFID reader to stop reading cards (causing a time-out and sign-off after 15 seconds), or causes the Arduino to reboot, which one happens seems to vary, but obviously neither is good!<br />
<br />
There are also issues with the RFID reader not reading some cards - in particular some newer oyster cards. This is probably down to the choice of RFID reader.<br />
<br />
=Software=<br />
The server side component runs on [[Holly]], is part of the [[HackSpace_Instrumentation|Instrumentation]] project, and is responsible for authorising members to sign on / induct others, keeping track of pledged time and billing for time used. <br />
The source code is on [https://github.com/NottingHack/instrumentation/blob/master/cpp/nh-tools.cpp GitHub].<br />
<br />
'''TODO''': Add some details.<br />
<br />
[[Category:Projects]]<br />
[[Category:Network]]<br />
[[Category:Instrumentation]]</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=Nhtools&diff=13034Nhtools2016-12-03T11:32:00Z<p>Robert: Undo revision 13033 by Robert (talk)</p>
<hr />
<div>The tools access control device (which still needs to be named) is designed to allow use of the attached tool to be restricted to inducted members, and to keep track of usage for charging purposes. It's been designed with the aim of being easy to fit to multiple different tools if needed (e.g. lathe and mill), not just the laser cutter - although charging for use is unlikely to be used for other tools.<br />
<br />
For the [[Laser cutter]], it keeps track of [[LaserPledge|pledged time]], and charges by the second for those that didn't pledge, or have used up their pledged time. Any laser usage which isn't covered by pledged time is charged in the same way as the [[Vending_Machine|Vending machine]], which results in a monthly email, and can be paid off using either the [[Snackspace]] jar, or the [[NoteAcceptor]].<br />
<br />
The hardware consists of an Arduino, Ethernet shield, RFID module, (optional) LCD and relay, and it communicates with a server side process on [[Holly]] using [http://en.wikipedia.org/wiki/MQTT MQTT], specifically an instance of the [http://mosquitto.org/ Mosquitto] MQTT broker.<br />
<br />
[[File:Tool_system.png|frame|Tools system overview]]<br />
<br />
There is a related tool booking system running on [[HMS]], however the interaction with that is limited; booking a tool in HMS currently has no connection to who can or can't sign on to the laser. HMS can be used by any member to see their use of the laser (and any charges as a result), as well as see if the laser is currently in use or not.<br />
<br />
=Hardware=<br />
The current device on the [[Laser cutter]] is a prototype, built on an Arduino UNO (or clone, I can't remember), wiznet based Ethernet shield and [http://shop.ciseco.co.uk/protox-standard-worlds-best-prototype-shield-for-xino-and-all-arduino-type-boards/ protoshield]. The second version (intended for the [[3D_Printing_Pledge|3d printer]]) has been built using a custom PCB, see [https://github.com/NottingHack/NH-Tool-PCB GitHub] for the design, and [https://www.flickr.com/photos/nottinghack/sets/72157649341526096 flickr] for photos of the mostly assembled device, minus case.<br />
[[File:tools_laser.jpg|200px|thumb|right|tool control prototype on laser cutter]]<br />
[[File:tools_pcb1.jpg|200px|thumb|right|Next version of tools control device]]<br />
The RFID reader is a MFRC-522 based device purchased from hobby components ([http://hobbycomponents.com/index.php/rfid-module-kit-mifare.html HCMODU0016]) and connected using SPI, the LCD is a 2x16 I2C display also from Hobby Components ([http://hobbycomponents.com/index.php/arduino-compatible-iic-i2c-twi-ywrobot-serial-lcd-1602-module.html HCARDU0023]).<br />
<br />
The attached tool is controlled by using a relay on the protoshield - this is intended more for isolation, and not to switch any great load. In the case of the laser cutter, the relay on the protoshield is wired back to another relay+contactor inside the laser cutter which is wired in series with the incoming mains.<br />
There are two push buttons; one to allow authorised members to record other members as having been inducted, and one to sign off. There is also a status LED that lights up when the signed in member is authorized to give inductions, and flashes after the induct button had been pressed and the system is searching for a card to induct (the original idea was that the induct button would be an illuminated push button).<br />
<br />
{| class="wikitable"<br />
|+Pin assigments<br />
|-<br />
! scope="col"| Pin<br />
! scope="col"| Description<br />
|-<br />
|A4<br />
|SDA for LCD<br />
|-<br />
|A5<br />
|SCL for LCD<br />
|-<br />
|D2<br />
|Sign off button<br />
|-<br />
|D3<br />
|Induct button<br />
|-<br />
|D4<br />
|''(Used by Ethernet shield?)''<br />
|-<br />
|D5<br />
|Relay<br />
|-<br />
|D6<br />
|RFID RST<br />
|-<br />
|D7<br />
|RFID Slave Select (labelled SDA on RFID module)<br />
|-<br />
|D8<br />
|Sign off LED. Currently unconnected - but will be used for tools that don't have an LCD<br />
|-<br />
|D9<br />
|Induct LED<br />
|-<br />
|D10<br />
|''(Used by Ethernet shield?)''<br />
|-<br />
|D11<br />
|MISO for RFID & Ethernet<br />
|-<br />
|D12<br />
|MOSI for RFID & Ethernet<br />
|-<br />
|D13<br />
|SCK for RFID and Ethernet<br />
|}<br />
<br />
=Enclosure=<br />
This is the second version of the enclosure designed for the version 2 PCB. The design files for the laser cut panels and 3D printer parts are available on GitHub at https://github.com/NottingHack/NH-Tool-PCB<br />
<br />
Notes:<br />
* The design is based on using 6mm material for the laser cut panels.<br />
* The LCD is optional, simply omit the hole from the front panel. LCD used: https://www.amazon.co.uk/dp/B019SXNKGU<br />
* The 3D printed card mount should be printed with support material (touching buildplate) and a brim to ensure it does not fall over during printing.<br />
* The hole in the bottom for the IEC C7 socket (figure of 8) is specific to the [[Embroidery Machine]], it can be removed or customized for other tools.<br />
* The micro switch is used for an additional means of card detection but there is currently no support in the firmware.<br />
<br />
{| class="wikitable"<br />
|+BoM (Bill of Materials)<br />
|-<br />
! scope="col"| Qty<br />
! scope="col"| Part<br />
! scope="col"| Description<br />
|-<br />
|8<br />
|M3x16mm bolt<br />
|front and back panels of the box<br />
|-<br />
|4<br />
|M3x12mm bolt<br />
|3D printed card holder<br />
|-<br />
|2<br />
|M3x6mm bolt<br />
|(OPTIONAL) to mount LCD module<br />
|-<br />
|3<br />
|M3x30mm bolt<br />
|mounting PCBs<br />
|-<br />
|15<br />
|M3 nuts<br />
|<br />
|-<br />
|5<br />
|M3 washers<br />
|<br />
|-<br />
|2<br />
|M2.5x12mm bolts<br />
|microswitch mounting<br />
|-<br />
|2<br />
|M2.5 nuts<br />
|<br />
|-<br />
|2<br />
|M2.5 washers<br />
|<br />
|-<br />
|1<br />
|4-way F-F cable<br />
|(OPTIONAL) for LCD module<br />
|-<br />
|1<br />
|8-way F-M cable<br />
|for RFID reader module<br />
|-<br />
|1<br />
|7-way M-bare end cable<br />
|front panel buttons and indicators<br />
|-<br />
|3<br />
|5mm LED<br />
|front panel indicators, preferably red, green and yellow<br />
|-<br />
|2<br />
|momentary push switch<br />
|typical sub-mini normally-open panel mount push buttons<br />
|-<br />
|1<br />
|RFID-RC522 module<br />
|<br />
|-<br />
|1<br />
|WIZnet Ethernet shield<br />
|<br />
|-<br />
|1<br />
|HSNOTTS nh-tool PCB v0.2<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|1<br />
|2x16 charter I2C LCD module<br />
|(OPTIONAL) https://www.amazon.co.uk/gp/product/B019SXNKGU or similar<br />
|-<br />
|1<br />
|3D Printed card mount<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|3<br />
|3D Printed M3 spacer<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|1<br />
|Laser cut 6mm wooden box<br />
|(6 panels) https://github.com/NottingHack/NH-Tool-PCB<br />
|}<br />
<br />
[[File:IMG 6339.jpg|675px]]<br />
[[File:IMG 6340.jpg|675px]]<br />
[[File:IMG 6341.jpg|675px]]<br />
[[File:IMG 6342.jpg|675px]]<br />
[[File:IMG 6343.jpg|675px]]<br />
[[File:IMG 6344.jpg|675px]]<br />
[[File:IMG 6345.jpg|675px]]<br />
[[File:IMG 6347.jpg|675px]]<br />
[[File:IMG 6348.jpg|675px]]<br />
[[File:IMG 6355.jpg|675px]]<br />
[[File:IMG 6357.jpg|675px]]<br />
[[File:IMG 6360.jpg|675px]]<br />
[[File:IMG 6361.jpg|675px]]<br />
[[File:IMG 6373.jpg|675px]]<br />
[[File:IMG 6374.jpg|675px]]<br />
[[File:IMG 6375.jpg|675px]]<br />
<br />
=Firmware=<br />
The source code for the Arduino firmware is on [https://github.com/NottingHack/Tools GitHub],<br />
<br />
The Arduino firmware uses these libraries:<br />
* PubSubClient - https://github.com/knolleary/pubsubclient - for MQTT communications<br />
* HCARDU0023_LiquidCrystal_I2C_V2_1 - http://forum.hobbycomponents.com/viewtopic.php?f=39&t=1125 - for the I2C LCD<br />
* rfid - https://github.com/miguelbalboa/rfid - RFID reader<br />
<br />
The firmware includes a serial based setup menu to configure MAC/IP addresses, set the MQTT topic and tool name; these settings are stored in EEPROM. The idea is to be able to set up the device for another tool without having to change any code.<br />
<br />
[[File:tool_states.png|frame|Possible state transitions]]<br />
<br />
The device can be in one of 6 states (valid transitions shown in the diagram), these are:<br />
{| class="wikitable"<br />
|+States<br />
|-<br />
! scope="col"| State<br />
! scope="col"| Description<br />
|-<br />
|DEV_NO_CON<br />
|No network and/or MQTT connection<br />
|-<br />
|DEV_IDLE<br />
|Connected to MQTT broker on [[Holly]], tool not being used, waiting for an RFID card to be scanned. <br />
|-<br />
|DEV_AUTH_WAIT<br />
|An RFID card has been scanned, and a lookup request sent over the network<br />
|-<br />
|DEV_ACTIVE<br />
|Tool access enabled. It is not possible to leave this state with whilst the RFID card is still on the reader (e.g. pressing the sign out button does nothing with the card still present, nor does a loss of network connection); the only exception is if the induct button is pressed and the signed on member is authorised to induct others.<br />
|-<br />
|DEV_INDUCT<br />
|The induct button has been pressed ''and'' the currently signed on member is permitted to give inductions. The device starts looking for any RFID card other than the one used to sign on.<br />
|-<br />
|DEV_INDUCT_WAIT<br />
|A second RFID card has been found, and a request to induct the member sent.<br />
|}<br />
==Communications==<br />
All communications with the server side is done using MQTT; topic names are comprised of "<base topic><tool name>/<command>". Base topic can be the same for all access controlled tools, but obviously the name must be unique. The base topic currently being used is "nh/tools/", and the name set for the laser cutter is "laser".<br />
<br />
<br />
{| class="wikitable"<br />
|+Commands<br />
|-<br />
! scope="col"| Direction (A=Arduino, S=Server)<br />
! scope="col"| Command<br />
! scope="col"| Payload<br />
! scope="col"| Description<br />
|-<br />
|A > S<br />
|AUTH<br />
|<RFID Serial><br />
| Sent to the server when a card is first presented<br />
|-<br />
|S > A<br />
|GRANT<br />
|<<code>U</code>/<code>I</code>/<code>M</code>><16 char message>\n<16 char message><br />
| The first character must be either <code>U</code>, <code>I</code> or <code>M</code>, which corresponds to the access levels User, Induct or Maintain. Currently there is no difference in the firmware between I and M - both will allow the signed on member to induct others. The remainder of the payload is displayed on the LCD, with a newline character expected to split text for the top and bottom line. At the moment for the laser cutter, the first line shows the username, and the second the amount of pledged time remaining (or blank if none). After 5 seconds, the bottom line of the LCD is wiped and replaced with a session timer (hh:mm:ss).<br />
Once this command is received, power to the tool is enabled.<br />
|-<br />
|S > A<br />
|DENY<br />
|<16 character message><br />
|Received in response to an AUTH if the RFID card was rejected - the message in the payload is displayed on the first line of the LCD. Possible reasons at the moment include "Out of credit", "Unknown card"....<br />
|-<br />
|A > S<br />
|COMPLETE<br />
|<tool active time><br />
|Sent once either the sign off button is pressed, or the 15s card timeout is reached. The payload is currently always 0, but in the future may be the amount of time the laser tube is active for (there is no hardware or firmware support for this yet).<br />
|-<br />
|A > S<br />
|INDUCT<br />
|<induct RFID><code>:</code><inductee RFID> <br />
|Sent when the induct button has been pressed, and a second RFID card found.<br />
|-<br />
|S > A<br />
|ISUC<br />
|<br />
|User inducted successfully; device returns to idle state<br />
|-<br />
|S > A<br />
|IFAL<br />
|<16 char message><br />
|Induct failed. the payload is the failure reason, and is displayed on the first line of the display. Possible reasons include "Bad card", "Not a member". If received, the device looks for another card to try again.<br />
|-<br />
|A > S<br />
|RESET<br />
|<code>BOOT</code> / <code>ACTIVE</code> / <code>IDLE</code><br />
|<br />
*<code>BOOT</code> - Sent when the device is first powered up<br />
*<code>ACTIVE</code> - Sent is the device looses it's network connection whilst tool is in use, and is still in use on reconnecting<br />
*<code>IDLE</code> - Sent if the device looses it's network connection, and the tool is not in use on reconnecting.<br />
|}<br />
<br />
==Examples==<br />
Normal sign on with ~10 hours pledged time remaining, then sign off:<br />
< [nh/tools/laser/AUTH], message=[1234567890]<br />
> [nh/tools/laser/GRANT], message=[UFoo <br />
Remain 10:02:16]<br />
< [nh/tools/laser/COMPLETE], message=[0]<br />
<br />
Member "Bar" with RFID "0000000001" signing on, then successfully inducting member with RFID "9999999999":<br />
< [nh/tools/laser/AUTH], message=[0000000001]<br />
> [nh/tools/laser/GRANT], message=[IBar <br />
Remain 12:07:53]<br />
< [nh/tools/laser/COMPLETE], message=[0]<br />
< [nh/tools/laser/INDUCT], message=[0000000001:9999999999]<br />
> [nh/tools/laser/ISUC], message=[]<br />
<br />
==Configuration==<br />
The device has a serial based configuration menu (9600 baud, set local echo on) which can be used to set:<br />
* MAC address<br />
* IP address<br />
* Tool name - e.g. "laser"<br />
* Base topic - e.g. "nh/tools" <br />
The IP address of the server is currently hard-coded to be 192.168.0.1 ([[Holly]]), this should probably be added to the configuration menu at some point. Once set, these settings are saved in EEPROM.<br />
E.g. showing current settings:<br />
<nowiki><br />
Main menu<br />
---------<br />
[ 1 ] Show current settings<br />
[ 2 ] Set MAC address<br />
[ 3 ] Set IP address<br />
[ 4 ] Set name<br />
[ 5 ] Set base topic<br />
[ 6 ] Reset/reboot<br />
Enter selection: 1<br />
<br />
Current settings:<br />
MAC address: 12:23:34:45:56:67<br />
IP address : 192.0.2.1<br />
Name : test<br />
Base topic : nh/tools<br />
</nowiki><br />
Note that the device must be reset after changing any of these settings - option 6 will reset the Arduino by abusing the watchdog timer.<br />
<br />
==TODO==<br />
* Allow server IP address to be set using serial config menu<br />
* Tidy up RFID code (remove duplication), and allow the type of RFID reader to be changed relatively easily<br />
<br />
<br />
=Current issues=<br />
The biggest problem at the moment is interference from the TIG welder. This either causes the RFID reader to stop reading cards (causing a time-out and sign-off after 15 seconds), or causes the Arduino to reboot, which one happens seems to vary, but obviously neither is good!<br />
<br />
There are also issues with the RFID reader not reading some cards - in particular some newer oyster cards. This is probably down to the choice of RFID reader.<br />
<br />
=Software=<br />
The server side component runs on [[Holly]], is part of the [[HackSpace_Instrumentation|Instrumentation]] project, and is responsible for authorising members to sign on / induct others, keeping track of pledged time and billing for time used. <br />
The source code is on [https://github.com/NottingHack/instrumentation/blob/master/cpp/nh-tools.cpp GitHub].<br />
<br />
'''TODO''': Add some details.<br />
<br />
[[Category:Projects]]<br />
[[Category:Network]]<br />
[[Category:Instrumentation]]</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=Nhtools&diff=13033Nhtools2016-12-03T11:29:18Z<p>Robert: /* Enclosure */</p>
<hr />
<div>The tools access control device (which still needs to be named) is designed to allow use of the attached tool to be restricted to inducted members, and to keep track of usage for charging purposes. It's been designed with the aim of being easy to fit to multiple different tools if needed (e.g. lathe and mill), not just the laser cutter - although charging for use is unlikely to be used for other tools.<br />
<br />
For the [[Laser cutter]], it keeps track of [[LaserPledge|pledged time]], and charges by the second for those that didn't pledge, or have used up their pledged time. Any laser usage which isn't covered by pledged time is charged in the same way as the [[Vending_Machine|Vending machine]], which results in a monthly email, and can be paid off using either the [[Snackspace]] jar, or the [[NoteAcceptor]].<br />
<br />
The hardware consists of an Arduino, Ethernet shield, RFID module, (optional) LCD and relay, and it communicates with a server side process on [[Holly]] using [http://en.wikipedia.org/wiki/MQTT MQTT], specifically an instance of the [http://mosquitto.org/ Mosquitto] MQTT broker.<br />
<br />
[[File:Tool_system.png|frame|Tools system overview]]<br />
<br />
There is a related tool booking system running on [[HMS]], however the interaction with that is limited; booking a tool in HMS currently has no connection to who can or can't sign on to the laser. HMS can be used by any member to see their use of the laser (and any charges as a result), as well as see if the laser is currently in use or not.<br />
<br />
=Hardware=<br />
The current device on the [[Laser cutter]] is a prototype, built on an Arduino UNO (or clone, I can't remember), wiznet based Ethernet shield and [http://shop.ciseco.co.uk/protox-standard-worlds-best-prototype-shield-for-xino-and-all-arduino-type-boards/ protoshield]. The second version (intended for the [[3D_Printing_Pledge|3d printer]]) has been built using a custom PCB, see [https://github.com/NottingHack/NH-Tool-PCB GitHub] for the design, and [https://www.flickr.com/photos/nottinghack/sets/72157649341526096 flickr] for photos of the mostly assembled device, minus case.<br />
[[File:tools_laser.jpg|200px|thumb|right|tool control prototype on laser cutter]]<br />
[[File:tools_pcb1.jpg|200px|thumb|right|Next version of tools control device]]<br />
The RFID reader is a MFRC-522 based device purchased from hobby components ([http://hobbycomponents.com/index.php/rfid-module-kit-mifare.html HCMODU0016]) and connected using SPI, the LCD is a 2x16 I2C display also from Hobby Components ([http://hobbycomponents.com/index.php/arduino-compatible-iic-i2c-twi-ywrobot-serial-lcd-1602-module.html HCARDU0023]).<br />
<br />
The attached tool is controlled by using a relay on the protoshield - this is intended more for isolation, and not to switch any great load. In the case of the laser cutter, the relay on the protoshield is wired back to another relay+contactor inside the laser cutter which is wired in series with the incoming mains.<br />
There are two push buttons; one to allow authorised members to record other members as having been inducted, and one to sign off. There is also a status LED that lights up when the signed in member is authorized to give inductions, and flashes after the induct button had been pressed and the system is searching for a card to induct (the original idea was that the induct button would be an illuminated push button).<br />
<br />
{| class="wikitable"<br />
|+Pin assigments<br />
|-<br />
! scope="col"| Pin<br />
! scope="col"| Description<br />
|-<br />
|A4<br />
|SDA for LCD<br />
|-<br />
|A5<br />
|SCL for LCD<br />
|-<br />
|D2<br />
|Sign off button<br />
|-<br />
|D3<br />
|Induct button<br />
|-<br />
|D4<br />
|''(Used by Ethernet shield?)''<br />
|-<br />
|D5<br />
|Relay<br />
|-<br />
|D6<br />
|RFID RST<br />
|-<br />
|D7<br />
|RFID Slave Select (labelled SDA on RFID module)<br />
|-<br />
|D8<br />
|Sign off LED. Currently unconnected - but will be used for tools that don't have an LCD<br />
|-<br />
|D9<br />
|Induct LED<br />
|-<br />
|D10<br />
|''(Used by Ethernet shield?)''<br />
|-<br />
|D11<br />
|MISO for RFID & Ethernet<br />
|-<br />
|D12<br />
|MOSI for RFID & Ethernet<br />
|-<br />
|D13<br />
|SCK for RFID and Ethernet<br />
|}<br />
<br />
=Enclosure=<br />
This is the second version of the enclosure designed for the version 2 PCB. The design files for the laser cut panels and 3D printer parts are available on GitHub at https://github.com/NottingHack/NH-Tool-PCB<br />
<br />
Notes:<br />
* The design is based on using 6mm material for the laser cut panels.<br />
* The LCD is optional, simply omit the hole from the front panel. LCD used: https://www.amazon.co.uk/dp/B019SXNKGU<br />
* The 3D printed card mount should be printed with support material (touching buildplate) and a brim to ensure it does not fall over during printing.<br />
* The hole in the bottom for the IEC C7 socket (figure of 8) is specific to the [[Embroidery Machine]], it can be removed or customized for other tools.<br />
* The micro switch is used for an additional means of card detection but there is currently no support in the firmware.<br />
<br />
{| class="wikitable"<br />
|+BoM (Bill of Materials)<br />
|-<br />
! scope="col"| Qty<br />
! scope="col"| Part<br />
! scope="col"| Description<br />
|-<br />
|8<br />
|M3x16mm bolt<br />
|front and back panels of the box<br />
|-<br />
|4<br />
|M3x12mm bolt<br />
|3D printed card holder<br />
|-<br />
|2<br />
|M3x6mm bolt<br />
|(OPTIONAL) to mount LCD module<br />
|-<br />
|3<br />
|M3x30mm bolt<br />
|mounting PCBs<br />
|-<br />
|15<br />
|M3 nuts<br />
|<br />
|-<br />
|5 (7 if using LCD)<br />
|M3 washers<br />
| PCB mounting, microswitch mounting, (OPTIONAL) LCD mounting<br />
|-<br />
|2<br />
|M2.5 nuts<br />
|<br />
|-<br />
|2<br />
|M2.5 washers<br />
|<br />
|-<br />
|1<br />
|4-way F-F cable<br />
|(OPTIONAL) for LCD module<br />
|-<br />
|1<br />
|8-way F-M cable<br />
|for RFID reader module<br />
|-<br />
|1<br />
|7-way M-bare end cable<br />
|front panel buttons and indicators<br />
|-<br />
|3<br />
|5mm LED<br />
|front panel indicators, preferably red, green and yellow<br />
|-<br />
|2<br />
|momentary push switch<br />
|typical sub-mini normally-open panel mount push buttons<br />
|-<br />
|1<br />
|RFID-RC522 module<br />
|<br />
|-<br />
|1<br />
|WIZnet Ethernet shield<br />
|<br />
|-<br />
|1<br />
|HSNOTTS nh-tool PCB v0.2<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|1<br />
|2x16 charter I2C LCD module<br />
|(OPTIONAL) https://www.amazon.co.uk/gp/product/B019SXNKGU or similar<br />
|-<br />
|1<br />
|3D Printed card mount<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|3<br />
|3D Printed M3 spacer<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|1<br />
|Laser cut 6mm wooden box<br />
|(6 panels) https://github.com/NottingHack/NH-Tool-PCB<br />
|}<br />
<br />
[[File:IMG 6339.jpg|675px]]<br />
[[File:IMG 6340.jpg|675px]]<br />
[[File:IMG 6341.jpg|675px]]<br />
[[File:IMG 6342.jpg|675px]]<br />
[[File:IMG 6343.jpg|675px]]<br />
[[File:IMG 6344.jpg|675px]]<br />
[[File:IMG 6345.jpg|675px]]<br />
[[File:IMG 6347.jpg|675px]]<br />
[[File:IMG 6348.jpg|675px]]<br />
[[File:IMG 6355.jpg|675px]]<br />
[[File:IMG 6357.jpg|675px]]<br />
[[File:IMG 6360.jpg|675px]]<br />
[[File:IMG 6361.jpg|675px]]<br />
[[File:IMG 6373.jpg|675px]]<br />
[[File:IMG 6374.jpg|675px]]<br />
[[File:IMG 6375.jpg|675px]]<br />
<br />
=Firmware=<br />
The source code for the Arduino firmware is on [https://github.com/NottingHack/Tools GitHub],<br />
<br />
The Arduino firmware uses these libraries:<br />
* PubSubClient - https://github.com/knolleary/pubsubclient - for MQTT communications<br />
* HCARDU0023_LiquidCrystal_I2C_V2_1 - http://forum.hobbycomponents.com/viewtopic.php?f=39&t=1125 - for the I2C LCD<br />
* rfid - https://github.com/miguelbalboa/rfid - RFID reader<br />
<br />
The firmware includes a serial based setup menu to configure MAC/IP addresses, set the MQTT topic and tool name; these settings are stored in EEPROM. The idea is to be able to set up the device for another tool without having to change any code.<br />
<br />
[[File:tool_states.png|frame|Possible state transitions]]<br />
<br />
The device can be in one of 6 states (valid transitions shown in the diagram), these are:<br />
{| class="wikitable"<br />
|+States<br />
|-<br />
! scope="col"| State<br />
! scope="col"| Description<br />
|-<br />
|DEV_NO_CON<br />
|No network and/or MQTT connection<br />
|-<br />
|DEV_IDLE<br />
|Connected to MQTT broker on [[Holly]], tool not being used, waiting for an RFID card to be scanned. <br />
|-<br />
|DEV_AUTH_WAIT<br />
|An RFID card has been scanned, and a lookup request sent over the network<br />
|-<br />
|DEV_ACTIVE<br />
|Tool access enabled. It is not possible to leave this state with whilst the RFID card is still on the reader (e.g. pressing the sign out button does nothing with the card still present, nor does a loss of network connection); the only exception is if the induct button is pressed and the signed on member is authorised to induct others.<br />
|-<br />
|DEV_INDUCT<br />
|The induct button has been pressed ''and'' the currently signed on member is permitted to give inductions. The device starts looking for any RFID card other than the one used to sign on.<br />
|-<br />
|DEV_INDUCT_WAIT<br />
|A second RFID card has been found, and a request to induct the member sent.<br />
|}<br />
==Communications==<br />
All communications with the server side is done using MQTT; topic names are comprised of "<base topic><tool name>/<command>". Base topic can be the same for all access controlled tools, but obviously the name must be unique. The base topic currently being used is "nh/tools/", and the name set for the laser cutter is "laser".<br />
<br />
<br />
{| class="wikitable"<br />
|+Commands<br />
|-<br />
! scope="col"| Direction (A=Arduino, S=Server)<br />
! scope="col"| Command<br />
! scope="col"| Payload<br />
! scope="col"| Description<br />
|-<br />
|A > S<br />
|AUTH<br />
|<RFID Serial><br />
| Sent to the server when a card is first presented<br />
|-<br />
|S > A<br />
|GRANT<br />
|<<code>U</code>/<code>I</code>/<code>M</code>><16 char message>\n<16 char message><br />
| The first character must be either <code>U</code>, <code>I</code> or <code>M</code>, which corresponds to the access levels User, Induct or Maintain. Currently there is no difference in the firmware between I and M - both will allow the signed on member to induct others. The remainder of the payload is displayed on the LCD, with a newline character expected to split text for the top and bottom line. At the moment for the laser cutter, the first line shows the username, and the second the amount of pledged time remaining (or blank if none). After 5 seconds, the bottom line of the LCD is wiped and replaced with a session timer (hh:mm:ss).<br />
Once this command is received, power to the tool is enabled.<br />
|-<br />
|S > A<br />
|DENY<br />
|<16 character message><br />
|Received in response to an AUTH if the RFID card was rejected - the message in the payload is displayed on the first line of the LCD. Possible reasons at the moment include "Out of credit", "Unknown card"....<br />
|-<br />
|A > S<br />
|COMPLETE<br />
|<tool active time><br />
|Sent once either the sign off button is pressed, or the 15s card timeout is reached. The payload is currently always 0, but in the future may be the amount of time the laser tube is active for (there is no hardware or firmware support for this yet).<br />
|-<br />
|A > S<br />
|INDUCT<br />
|<induct RFID><code>:</code><inductee RFID> <br />
|Sent when the induct button has been pressed, and a second RFID card found.<br />
|-<br />
|S > A<br />
|ISUC<br />
|<br />
|User inducted successfully; device returns to idle state<br />
|-<br />
|S > A<br />
|IFAL<br />
|<16 char message><br />
|Induct failed. the payload is the failure reason, and is displayed on the first line of the display. Possible reasons include "Bad card", "Not a member". If received, the device looks for another card to try again.<br />
|-<br />
|A > S<br />
|RESET<br />
|<code>BOOT</code> / <code>ACTIVE</code> / <code>IDLE</code><br />
|<br />
*<code>BOOT</code> - Sent when the device is first powered up<br />
*<code>ACTIVE</code> - Sent is the device looses it's network connection whilst tool is in use, and is still in use on reconnecting<br />
*<code>IDLE</code> - Sent if the device looses it's network connection, and the tool is not in use on reconnecting.<br />
|}<br />
<br />
==Examples==<br />
Normal sign on with ~10 hours pledged time remaining, then sign off:<br />
< [nh/tools/laser/AUTH], message=[1234567890]<br />
> [nh/tools/laser/GRANT], message=[UFoo <br />
Remain 10:02:16]<br />
< [nh/tools/laser/COMPLETE], message=[0]<br />
<br />
Member "Bar" with RFID "0000000001" signing on, then successfully inducting member with RFID "9999999999":<br />
< [nh/tools/laser/AUTH], message=[0000000001]<br />
> [nh/tools/laser/GRANT], message=[IBar <br />
Remain 12:07:53]<br />
< [nh/tools/laser/COMPLETE], message=[0]<br />
< [nh/tools/laser/INDUCT], message=[0000000001:9999999999]<br />
> [nh/tools/laser/ISUC], message=[]<br />
<br />
==Configuration==<br />
The device has a serial based configuration menu (9600 baud, set local echo on) which can be used to set:<br />
* MAC address<br />
* IP address<br />
* Tool name - e.g. "laser"<br />
* Base topic - e.g. "nh/tools" <br />
The IP address of the server is currently hard-coded to be 192.168.0.1 ([[Holly]]), this should probably be added to the configuration menu at some point. Once set, these settings are saved in EEPROM.<br />
E.g. showing current settings:<br />
<nowiki><br />
Main menu<br />
---------<br />
[ 1 ] Show current settings<br />
[ 2 ] Set MAC address<br />
[ 3 ] Set IP address<br />
[ 4 ] Set name<br />
[ 5 ] Set base topic<br />
[ 6 ] Reset/reboot<br />
Enter selection: 1<br />
<br />
Current settings:<br />
MAC address: 12:23:34:45:56:67<br />
IP address : 192.0.2.1<br />
Name : test<br />
Base topic : nh/tools<br />
</nowiki><br />
Note that the device must be reset after changing any of these settings - option 6 will reset the Arduino by abusing the watchdog timer.<br />
<br />
==TODO==<br />
* Allow server IP address to be set using serial config menu<br />
* Tidy up RFID code (remove duplication), and allow the type of RFID reader to be changed relatively easily<br />
<br />
<br />
=Current issues=<br />
The biggest problem at the moment is interference from the TIG welder. This either causes the RFID reader to stop reading cards (causing a time-out and sign-off after 15 seconds), or causes the Arduino to reboot, which one happens seems to vary, but obviously neither is good!<br />
<br />
There are also issues with the RFID reader not reading some cards - in particular some newer oyster cards. This is probably down to the choice of RFID reader.<br />
<br />
=Software=<br />
The server side component runs on [[Holly]], is part of the [[HackSpace_Instrumentation|Instrumentation]] project, and is responsible for authorising members to sign on / induct others, keeping track of pledged time and billing for time used. <br />
The source code is on [https://github.com/NottingHack/instrumentation/blob/master/cpp/nh-tools.cpp GitHub].<br />
<br />
'''TODO''': Add some details.<br />
<br />
[[Category:Projects]]<br />
[[Category:Network]]<br />
[[Category:Instrumentation]]</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=Nhtools&diff=13026Nhtools2016-11-27T11:26:02Z<p>Robert: /* Enclosure */ add BoM</p>
<hr />
<div>The tools access control device (which still needs to be named) is designed to allow use of the attached tool to be restricted to inducted members, and to keep track of usage for charging purposes. It's been designed with the aim of being easy to fit to multiple different tools if needed (e.g. lathe and mill), not just the laser cutter - although charging for use is unlikely to be used for other tools.<br />
<br />
For the [[Laser cutter]], it keeps track of [[LaserPledge|pledged time]], and charges by the second for those that didn't pledge, or have used up their pledged time. Any laser usage which isn't covered by pledged time is charged in the same way as the [[Vending_Machine|Vending machine]], which results in a monthly email, and can be paid off using either the [[Snackspace]] jar, or the [[NoteAcceptor]].<br />
<br />
The hardware consists of an Arduino, Ethernet shield, RFID module, (optional) LCD and relay, and it communicates with a server side process on [[Holly]] using [http://en.wikipedia.org/wiki/MQTT MQTT], specifically an instance of the [http://mosquitto.org/ Mosquitto] MQTT broker.<br />
<br />
[[File:Tool_system.png|frame|Tools system overview]]<br />
<br />
There is a related tool booking system running on [[HMS]], however the interaction with that is limited; booking a tool in HMS currently has no connection to who can or can't sign on to the laser. HMS can be used by any member to see their use of the laser (and any charges as a result), as well as see if the laser is currently in use or not.<br />
<br />
=Hardware=<br />
The current device on the [[Laser cutter]] is a prototype, built on an Arduino UNO (or clone, I can't remember), wiznet based Ethernet shield and [http://shop.ciseco.co.uk/protox-standard-worlds-best-prototype-shield-for-xino-and-all-arduino-type-boards/ protoshield]. The second version (intended for the [[3D_Printing_Pledge|3d printer]]) has been built using a custom PCB, see [https://github.com/NottingHack/NH-Tool-PCB GitHub] for the design, and [https://www.flickr.com/photos/nottinghack/sets/72157649341526096 flickr] for photos of the mostly assembled device, minus case.<br />
[[File:tools_laser.jpg|200px|thumb|right|tool control prototype on laser cutter]]<br />
[[File:tools_pcb1.jpg|200px|thumb|right|Next version of tools control device]]<br />
The RFID reader is a MFRC-522 based device purchased from hobby components ([http://hobbycomponents.com/index.php/rfid-module-kit-mifare.html HCMODU0016]) and connected using SPI, the LCD is a 2x16 I2C display also from Hobby Components ([http://hobbycomponents.com/index.php/arduino-compatible-iic-i2c-twi-ywrobot-serial-lcd-1602-module.html HCARDU0023]).<br />
<br />
The attached tool is controlled by using a relay on the protoshield - this is intended more for isolation, and not to switch any great load. In the case of the laser cutter, the relay on the protoshield is wired back to another relay+contactor inside the laser cutter which is wired in series with the incoming mains.<br />
There are two push buttons; one to allow authorised members to record other members as having been inducted, and one to sign off. There is also a status LED that lights up when the signed in member is authorized to give inductions, and flashes after the induct button had been pressed and the system is searching for a card to induct (the original idea was that the induct button would be an illuminated push button).<br />
<br />
{| class="wikitable"<br />
|+Pin assigments<br />
|-<br />
! scope="col"| Pin<br />
! scope="col"| Description<br />
|-<br />
|A4<br />
|SDA for LCD<br />
|-<br />
|A5<br />
|SCL for LCD<br />
|-<br />
|D2<br />
|Sign off button<br />
|-<br />
|D3<br />
|Induct button<br />
|-<br />
|D4<br />
|''(Used by Ethernet shield?)''<br />
|-<br />
|D5<br />
|Relay<br />
|-<br />
|D6<br />
|RFID RST<br />
|-<br />
|D7<br />
|RFID Slave Select (labelled SDA on RFID module)<br />
|-<br />
|D8<br />
|Sign off LED. Currently unconnected - but will be used for tools that don't have an LCD<br />
|-<br />
|D9<br />
|Induct LED<br />
|-<br />
|D10<br />
|''(Used by Ethernet shield?)''<br />
|-<br />
|D11<br />
|MISO for RFID & Ethernet<br />
|-<br />
|D12<br />
|MOSI for RFID & Ethernet<br />
|-<br />
|D13<br />
|SCK for RFID and Ethernet<br />
|}<br />
<br />
=Enclosure=<br />
This is the second version of the enclosure designed for the version 2 PCB. The design files for the laser cut panels and 3D printer parts are available on GitHub at https://github.com/NottingHack/NH-Tool-PCB<br />
<br />
Notes:<br />
* The design is based on using 6mm material for the laser cut panels.<br />
* The LCD is optional, simply omit the hole from the front panel. LCD used: https://www.amazon.co.uk/dp/B019SXNKGU<br />
* The 3D printed card mount should be printed with support material (touching buildplate) and a brim to ensure it does not fall over during printing.<br />
* The hole in the bottom for the IEC C7 socket (figure of 8) is specific to the [[Embroidery Machine]], it can be removed or customized for other tools.<br />
* The micro switch is used for an additional means of card detection but there is currently no support in the firmware.<br />
<br />
{| class="wikitable"<br />
|+BoM (Bill of Materials)<br />
|-<br />
! scope="col"| Qty<br />
! scope="col"| Part<br />
! scope="col"| Description<br />
|-<br />
|8<br />
|M3x16mm bolt<br />
|front and back panels of the box<br />
|-<br />
|4<br />
|M3x12mm bolt<br />
|3D printed card holder<br />
|-<br />
|2<br />
|M3x6mm bolt<br />
|(OPTIONAL) to mount LCD module<br />
|-<br />
|3<br />
|M3x30mm bolt<br />
|mounting PCBs<br />
|-<br />
|15<br />
|M3 nuts<br />
|<br />
|-<br />
|5<br />
|M3 washers<br />
|<br />
|-<br />
|2<br />
|M2.5x12mm bolts<br />
|microswitch mounting<br />
|-<br />
|2<br />
|M2.5 nuts<br />
|<br />
|-<br />
|2<br />
|M2.5 washers<br />
|<br />
|-<br />
|1<br />
|4-way F-F cable<br />
|(OPTIONAL) for LCD module<br />
|-<br />
|1<br />
|8-way F-M cable<br />
|for RFID reader module<br />
|-<br />
|1<br />
|7-way M-bare end cable<br />
|front panel buttons and indicators<br />
|-<br />
|3<br />
|5mm LED<br />
|front panel indicators, preferably red, green and yellow<br />
|-<br />
|2<br />
|momentary push switch<br />
|typical sub-mini normally-open panel mount push buttons<br />
|-<br />
|1<br />
|RFID-RC522 module<br />
|<br />
|-<br />
|1<br />
|WIZnet Ethernet shield<br />
|<br />
|-<br />
|1<br />
|HSNOTTS nh-tool PCB v0.2<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|1<br />
|2x16 charter I2C LCD module<br />
|(OPTIONAL) https://www.amazon.co.uk/gp/product/B019SXNKGU or similar<br />
|-<br />
|1<br />
|3D Printed card mount<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|3<br />
|3D Printed M3 spacer<br />
|https://github.com/NottingHack/NH-Tool-PCB<br />
|-<br />
|1<br />
|Laser cut 6mm wooden box<br />
|(6 panels) https://github.com/NottingHack/NH-Tool-PCB<br />
|}<br />
<br />
[[File:IMG 6339.jpg|675px]]<br />
[[File:IMG 6340.jpg|675px]]<br />
[[File:IMG 6341.jpg|675px]]<br />
[[File:IMG 6342.jpg|675px]]<br />
[[File:IMG 6343.jpg|675px]]<br />
[[File:IMG 6344.jpg|675px]]<br />
[[File:IMG 6345.jpg|675px]]<br />
[[File:IMG 6347.jpg|675px]]<br />
[[File:IMG 6348.jpg|675px]]<br />
[[File:IMG 6355.jpg|675px]]<br />
[[File:IMG 6357.jpg|675px]]<br />
[[File:IMG 6360.jpg|675px]]<br />
[[File:IMG 6361.jpg|675px]]<br />
[[File:IMG 6373.jpg|675px]]<br />
[[File:IMG 6374.jpg|675px]]<br />
[[File:IMG 6375.jpg|675px]]<br />
<br />
=Firmware=<br />
The source code for the Arduino firmware is on [https://github.com/NottingHack/Tools GitHub],<br />
<br />
The Arduino firmware uses these libraries:<br />
* PubSubClient - https://github.com/knolleary/pubsubclient - for MQTT communications<br />
* HCARDU0023_LiquidCrystal_I2C_V2_1 - http://forum.hobbycomponents.com/viewtopic.php?f=39&t=1125 - for the I2C LCD<br />
* rfid - https://github.com/miguelbalboa/rfid - RFID reader<br />
<br />
The firmware includes a serial based setup menu to configure MAC/IP addresses, set the MQTT topic and tool name; these settings are stored in EEPROM. The idea is to be able to set up the device for another tool without having to change any code.<br />
<br />
[[File:tool_states.png|frame|Possible state transitions]]<br />
<br />
The device can be in one of 6 states (valid transitions shown in the diagram), these are:<br />
{| class="wikitable"<br />
|+States<br />
|-<br />
! scope="col"| State<br />
! scope="col"| Description<br />
|-<br />
|DEV_NO_CON<br />
|No network and/or MQTT connection<br />
|-<br />
|DEV_IDLE<br />
|Connected to MQTT broker on [[Holly]], tool not being used, waiting for an RFID card to be scanned. <br />
|-<br />
|DEV_AUTH_WAIT<br />
|An RFID card has been scanned, and a lookup request sent over the network<br />
|-<br />
|DEV_ACTIVE<br />
|Tool access enabled. It is not possible to leave this state with whilst the RFID card is still on the reader (e.g. pressing the sign out button does nothing with the card still present, nor does a loss of network connection); the only exception is if the induct button is pressed and the signed on member is authorised to induct others.<br />
|-<br />
|DEV_INDUCT<br />
|The induct button has been pressed ''and'' the currently signed on member is permitted to give inductions. The device starts looking for any RFID card other than the one used to sign on.<br />
|-<br />
|DEV_INDUCT_WAIT<br />
|A second RFID card has been found, and a request to induct the member sent.<br />
|}<br />
==Communications==<br />
All communications with the server side is done using MQTT; topic names are comprised of "<base topic><tool name>/<command>". Base topic can be the same for all access controlled tools, but obviously the name must be unique. The base topic currently being used is "nh/tools/", and the name set for the laser cutter is "laser".<br />
<br />
<br />
{| class="wikitable"<br />
|+Commands<br />
|-<br />
! scope="col"| Direction (A=Arduino, S=Server)<br />
! scope="col"| Command<br />
! scope="col"| Payload<br />
! scope="col"| Description<br />
|-<br />
|A > S<br />
|AUTH<br />
|<RFID Serial><br />
| Sent to the server when a card is first presented<br />
|-<br />
|S > A<br />
|GRANT<br />
|<<code>U</code>/<code>I</code>/<code>M</code>><16 char message>\n<16 char message><br />
| The first character must be either <code>U</code>, <code>I</code> or <code>M</code>, which corresponds to the access levels User, Induct or Maintain. Currently there is no difference in the firmware between I and M - both will allow the signed on member to induct others. The remainder of the payload is displayed on the LCD, with a newline character expected to split text for the top and bottom line. At the moment for the laser cutter, the first line shows the username, and the second the amount of pledged time remaining (or blank if none). After 5 seconds, the bottom line of the LCD is wiped and replaced with a session timer (hh:mm:ss).<br />
Once this command is received, power to the tool is enabled.<br />
|-<br />
|S > A<br />
|DENY<br />
|<16 character message><br />
|Received in response to an AUTH if the RFID card was rejected - the message in the payload is displayed on the first line of the LCD. Possible reasons at the moment include "Out of credit", "Unknown card"....<br />
|-<br />
|A > S<br />
|COMPLETE<br />
|<tool active time><br />
|Sent once either the sign off button is pressed, or the 15s card timeout is reached. The payload is currently always 0, but in the future may be the amount of time the laser tube is active for (there is no hardware or firmware support for this yet).<br />
|-<br />
|A > S<br />
|INDUCT<br />
|<induct RFID><code>:</code><inductee RFID> <br />
|Sent when the induct button has been pressed, and a second RFID card found.<br />
|-<br />
|S > A<br />
|ISUC<br />
|<br />
|User inducted successfully; device returns to idle state<br />
|-<br />
|S > A<br />
|IFAL<br />
|<16 char message><br />
|Induct failed. the payload is the failure reason, and is displayed on the first line of the display. Possible reasons include "Bad card", "Not a member". If received, the device looks for another card to try again.<br />
|-<br />
|A > S<br />
|RESET<br />
|<code>BOOT</code> / <code>ACTIVE</code> / <code>IDLE</code><br />
|<br />
*<code>BOOT</code> - Sent when the device is first powered up<br />
*<code>ACTIVE</code> - Sent is the device looses it's network connection whilst tool is in use, and is still in use on reconnecting<br />
*<code>IDLE</code> - Sent if the device looses it's network connection, and the tool is not in use on reconnecting.<br />
|}<br />
<br />
==Examples==<br />
Normal sign on with ~10 hours pledged time remaining, then sign off:<br />
< [nh/tools/laser/AUTH], message=[1234567890]<br />
> [nh/tools/laser/GRANT], message=[UFoo <br />
Remain 10:02:16]<br />
< [nh/tools/laser/COMPLETE], message=[0]<br />
<br />
Member "Bar" with RFID "0000000001" signing on, then successfully inducting member with RFID "9999999999":<br />
< [nh/tools/laser/AUTH], message=[0000000001]<br />
> [nh/tools/laser/GRANT], message=[IBar <br />
Remain 12:07:53]<br />
< [nh/tools/laser/COMPLETE], message=[0]<br />
< [nh/tools/laser/INDUCT], message=[0000000001:9999999999]<br />
> [nh/tools/laser/ISUC], message=[]<br />
<br />
==Configuration==<br />
The device has a serial based configuration menu (9600 baud, set local echo on) which can be used to set:<br />
* MAC address<br />
* IP address<br />
* Tool name - e.g. "laser"<br />
* Base topic - e.g. "nh/tools" <br />
The IP address of the server is currently hard-coded to be 192.168.0.1 ([[Holly]]), this should probably be added to the configuration menu at some point. Once set, these settings are saved in EEPROM.<br />
E.g. showing current settings:<br />
<nowiki><br />
Main menu<br />
---------<br />
[ 1 ] Show current settings<br />
[ 2 ] Set MAC address<br />
[ 3 ] Set IP address<br />
[ 4 ] Set name<br />
[ 5 ] Set base topic<br />
[ 6 ] Reset/reboot<br />
Enter selection: 1<br />
<br />
Current settings:<br />
MAC address: 12:23:34:45:56:67<br />
IP address : 192.0.2.1<br />
Name : test<br />
Base topic : nh/tools<br />
</nowiki><br />
Note that the device must be reset after changing any of these settings - option 6 will reset the Arduino by abusing the watchdog timer.<br />
<br />
==TODO==<br />
* Allow server IP address to be set using serial config menu<br />
* Tidy up RFID code (remove duplication), and allow the type of RFID reader to be changed relatively easily<br />
<br />
<br />
=Current issues=<br />
The biggest problem at the moment is interference from the TIG welder. This either causes the RFID reader to stop reading cards (causing a time-out and sign-off after 15 seconds), or causes the Arduino to reboot, which one happens seems to vary, but obviously neither is good!<br />
<br />
There are also issues with the RFID reader not reading some cards - in particular some newer oyster cards. This is probably down to the choice of RFID reader.<br />
<br />
=Software=<br />
The server side component runs on [[Holly]], is part of the [[HackSpace_Instrumentation|Instrumentation]] project, and is responsible for authorising members to sign on / induct others, keeping track of pledged time and billing for time used. <br />
The source code is on [https://github.com/NottingHack/instrumentation/blob/master/cpp/nh-tools.cpp GitHub].<br />
<br />
'''TODO''': Add some details.<br />
<br />
[[Category:Projects]]<br />
[[Category:Network]]<br />
[[Category:Instrumentation]]</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=2016-11-24_AGM_Agenda&diff=128812016-11-24 AGM Agenda2016-11-15T20:29:45Z<p>Robert: link to proxy vote</p>
<hr />
<div>This page is protected. If you would like to add anything to this agenda, please post in the [[{{TALKPAGENAME}}|Talk page]]. Remember to sign any comments on the talk page with four tildes (<nowiki>~~~~</nowiki>)<br />
<br />
It will be chaired by ?? and will take place on Thursday 24rd November, at 7pm at [https://www.google.co.uk/maps/place/Antenna/@52.9558027,-1.1428262,3a,75y,252.41h,88.29t/data=!3m7!1e1!3m5!1sea18FYRNtIegmA5-JQu87w!2e0!6s%2F%2Fgeo2.ggpht.com%2Fcbk%3Fpanoid%3Dea18FYRNtIegmA5-JQu87w%26output%3Dthumbnail%26cb_client%3Dmaps_sv.tactile.gps%26thumb%3D2%26w%3D203%26h%3D100%26yaw%3D191.93407%26pitch%3D0!7i13312!8i6656!4m2!3m1!1s0x0:0x4d78304762fccbec!6m1!1e1 Antenna Media Centre] which is located on Beck Street, Nottingham, NG1 1EQ<br />
<br />
If you are unable to attend please register your vote with a proxy here: https://wiki.nottinghack.org.uk/wiki/2016-11-24_AGM_Proxy_Votes<br />
<br />
{| class="wikitable"<br />
!#!!Item!!Notes<br />
|-<br />
|1||Roll call||<br />
|-<br />
|2||State of the Union||<br />
|-<br />
|3||Financial Report 2015-2016||<br />
|-<br />
|4||[[{{FULLPAGENAME}}/Special Resolution: Definitions|Special Resolution: Defintions]]||<br />
|-<br />
|5||[[{{FULLPAGENAME}}/Special Resolution: Elections|Special Resolution: Elections]]||<br />
|-<br />
|||There will not be an AOB for this meeting||<br />
|}<br />
<br />
<br />
[[Category:Member's Meetings|^Year 6^]]</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=2016-11-24_AGM_Proxy_Votes&diff=128782016-11-24 AGM Proxy Votes2016-11-15T19:51:49Z<p>Robert: </p>
<hr />
<div>If you cannot attend the AGM, you can register your vote with a proxy voter. This person will submit your vote at the AGM.<br />
<br />
== Proxy Votes ==<br />
<br />
If you would like to volunteer to be a proxy voter please add your name below:<br />
<br />
{| class="wikitable" | <br />
|-<br />
! Name of member acting as Proxy !! Names of members voting via Proxy<br />
|-<br />
| Example || Example<br />
|-<br />
|}</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=2016-11-24_AGM_Proxy_Votes&diff=128772016-11-24 AGM Proxy Votes2016-11-15T19:04:09Z<p>Robert: Created page with "== Proxy Votes == If you cannot attend the AGM, you can register your vote with a proxy voter. This person will submit your vote at the AGM."</p>
<hr />
<div>== Proxy Votes ==<br />
<br />
If you cannot attend the AGM, you can register your vote with a proxy voter. This person will submit your vote at the AGM.</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=Trustees&diff=12828Trustees2016-10-18T16:01:41Z<p>Robert: </p>
<hr />
<div>The Hackspace is run by volunteers. A board of seven trustees give some of their spare time to ensure the space continues to run.<br />
<br />
Just because a trustee seems to have an interest in a particular area, please don't assume that means you can't do things. Trustees are first and foremost members, and any work or space-wide projects that they take part in they do so as members.<br />
<br />
You can always contact the entirety of the current board by emailing [mailto:trustees@nottinghack.org.uk trustees@nottinghack.org.uk].<br />
<br />
The trustees are making an effort to ensure that the membership as a whole has a better understanding of what we do on a daily, weekly and monthly basis. A round up of this information will be available in the newsletter, and updated as regularly as possible (daily usually, at a minimum weekly) on the wiki, [[Trustee_Updates|here]]!<br />
<br />
To contact an individual trustee, use their email from the table below.<br />
<br />
[[File:TrusteeJobDescription.pdf]]<br />
<br />
== Current Board of Trustees==<br />
<br />
{| class="wikitable"<br />
<br />
|-<br />
<br />
! Photo<br />
<br />
! Board Member<br />
<br />
|-<br />
<br />
| [[File:jameshayward.jpg|125px]]<br />'''[[User:James|James Hayward]]''' <br />
| '''Email:''' [mailto:james.hayward@nottinghack.org.uk james.hayward@nottinghack.org.uk]<br /> <br />
'''Trustee since:''' 2011<br /><br />I first became a trustee when we first became a proper limited organisation. I was scared that we would collapse in some way, and I needed to make sure that we didn't - and it seems to have worked pretty well! Since then, I've become the go-to guy for all things legal, which seems to take up an inordinate amount of my time and also terrifies me on an almost daily basis. Despite this encroaching fear, I still enjoy being a trustee, and I love to see the place grow and become a better place for everyone.<br />
<br />
|-<br />
<br />
| [[File:AFroggatt_2016_Trustee.jpg|125px]]<br />'''[[User:froggy|Adam Froggatt]]'''<br />
| '''Email:''' [mailto:adam.froggatt@nottinghack.org.uk adam.froggatt@nottinghack.org.uk]<br /><br />
'''Trustee since:''' 2015<br /><br /> I originally joined Nottinghack as a student in 2012. Since then it's helped me learn a multitude of skills, from foamcraft to lasercutting, 3D printing to lathing. Before becoming a Trustee I was a part of several teams: Laser, Membership, Craft, Snackspace, and I definitely see my role as Trustee as continuing to be helpful and provide guidance to members. I'd love to see the Hackspace expand it's visibility outside our usual events, and start showing others just how awesome we are and the kinds of crazy contraptions we make. All of this while being elbow deep in lasercut foam props of course.<br />
<br />
|-<br />
<br />
| [[File:MattLloyd.jpg|125px]]<br />'''[[User:Lwk|Matt Lloyd]]'''<br />
| '''Email: [mailto:matt.lloyd@nottinghack.org.uk matt.lloyd@nottinghack.org.uk]]'''<br /><br />
'''Trustee since:''' 2011<br /><br />As a founding member of NottingHack, I've always been involved in helping the space grow. As a trustee, I continue to help the space by keeping a close eye on the financial aspect, tracking what we have on hand, the current project commitments, as well as long-term budget predictions. These days I spend most of my time at the space working on infrastructure projects such as working on Gatekeeper, the system that operates the front door, to restoring the Bridgeport mill, to improving the metal-working area.<br />
<br />
|-<br />
<br />
| [[File:RHunt 2015 Trustee.jpg|125px]]<br />'''[[User:Robert|Rob Hunt]]'''<br />
| '''Email:''' [mailto:rob.hunt@nottinghack.org.uk rob.hunt@nottinghack.org.uk]<br /><br />
'''Trustee since:''' 2015<br /><br />I've been a member of the space since 2013 and have seen the space nearly double in membership. This growth comes with interesting challenges which need to be solved and I feel that I can help as part of the trustee team. I aim to making the space a more inviting and enjoyable place for everyone with the help of my fellow trustees.<br />
<br />
|-<br />
<br />
| [[File:KBolin_2016_Trustee.jpg|125px]]<br />'''[[User:Kate|Kate Bolin]]'''<br />
| '''Email:''' [mailto:kate.bolin@nottinghack.org.uk kate.bolin@nottinghack.org.uk ]<br /><br />
'''Trustee since:''' 2016<br /><br /><br />
<br />
|-<br />
<br />
| [[File:RHoughton_2016_Trustee.jpg|125px]]<br />'''Russell Houghton'''<br />
| '''Email:''' [mailto:russell.houghton@nottinghack.org.uk russell.houghton@nottinghack.org.uk]<br /><br />
'''Trustee since:''' 2016<br /><br /><br />
<br />
|-<br />
<br />
| [[File:IDickinson_2016_Trustee.png|125px]]<br />'''Ian Dickinson'''<br />
| '''Email:''' [mailto:ian.dickinson@nottinghack.org.uk ian.dickinson@nottinghack.org]<br /><br />
'''Trustee since:''' 2016<br /><br /><br />
|}<br />
<br />
== Elections ==<br />
<br />
Board elections take place each May, and any member can stand for election.<br />
<br />
== Related ==<br />
<br />
There is currently a [[Board/Expenses Policy|expenses policy]] under consideration.<br />
<br />
==Previous trustees==<br />
<br />
===2016-2017===<br />
{| class="wikitable sortable"<br />
|-<br />
! Board Member<br />
|-<br />
| [[User:James|James Hayward]]<br />
|-<br />
| [[User:lwk|Matt Lloyd]]<br />
|-<br />
| [[User:Elsen|Sophie Wilkinson]] (stood down 12 September 2016)<br />
|-<br />
| [[User:Robert|Rob Hunt]]<br />
|-<br />
| [[User:Froggy|Adam Froggatt]]<br />
|-<br />
| [[User:Kate|Kate Bolin]]<br />
|-<br />
| [[User:Msemtd|Michael Erskine]] (stood down 9 June 2016)<br />
|-<br />
| Russell Houghton (replaced Michael, 28 July 2016)<br />
|-<br />
| [[User:Iandickinson|Ian Dickinson]] (replaced Sophie, 17 October 2016)<br />
|}<br />
<br />
===2015-2016===<br />
{| class="wikitable sortable"<br />
|-<br />
! Board Member<br />
|-<br />
| [[User:James|James Hayward]]<br />
|-<br />
| [[User:lwk|Matt Lloyd]]<br />
|-<br />
| [[User:Dclarke|David Clarke]]<br />
|-<br />
| [[User:Dominic|Dominic Morrow]] (stood down 28 June 2015)<br />
|-<br />
| [[User:Jfowkes|James Fowkes]] (stood down 28 July 2015<br />
|-<br />
| [[User:Elsen|Sophie Wilkinson]]<br />
|-<br />
| [[User:Robert|Rob Hunt]]<br />
|-<br />
| [[User:Froggy|Adam Froggatt]] (replaced Dominic, 3 August 2015)<br />
|-<br />
| [[User:Daniel|Daniel Swann]] (replaced James F, 12 September 2015<br />
|}<br />
<br />
===2014-2015===<br />
{| class="wikitable sortable"<br />
|-<br />
! Board Member<br />
|-<br />
| [[User:Garethdoodles|Gareth Howell]]<br />
|-<br />
| [[User:James|James Hayward]]<br />
|-<br />
| [[User:lwk|Matt Lloyd]]<br />
|-<br />
| [[User:Davidhayward|David Hayward]]<br />
|-<br />
| [[User:Dclarke|David Clarke]]<br />
|-<br />
| [[User:Dominic|Dominic Morrow]]<br />
|-<br />
| [[User:Jfowkes|James Fowkes]]<br />
|}<br />
===2013-2014===<br />
{| class="wikitable sortable"<br />
|-<br />
! Board Member<br />
|-<br />
| [[User:Gmjhowe|Jake Howe]]<br />
|-<br />
| [[User:Kate|Kate Bolin]]<br />
|-<br />
| [[User:Garethdoodles|Gareth Howell]]<br />
|-<br />
| [[User:James|James Hayward]]<br />
|-<br />
| [[User:lwk|Matt Lloyd]]<br />
|-<br />
| [[User:Davidhayward|David Hayward]]<br />
|-<br />
| [[User:Dclarke|David Clarke]]<br />
|}<br />
<br />
===2012-2013===<br />
{| class="wikitable sortable"<br />
|-<br />
! Board Member<br />
|-<br />
| [[User:Dominic|Dominic Morrow]]<br />
|-<br />
| [[User:James|James Hayward]]<br />
|-<br />
| [[User:lwk|Matt Lloyd]]<br />
|-<br />
| [[User:Davidhayward|David Hayward]]<br />
|-<br />
| [[User:Gmjhowe|Jake Howe]]<br />
|-<br />
| [[User:Kate|Kate Bolin]]<br />
|-<br />
| [[User:Dclarke|David Clarke]]<br />
|}<br />
<br />
===2011-2012===<br />
{| class="wikitable sortable"<br />
|-<br />
! Board Member<br />
|-<br />
| [[User:Dominic|Dominic Morrow]]<br />
|-<br />
| [[User:Chunky|Matt Little]]<br />
|-<br />
| [[User:MichaelP|Michael Procter]]<br />
|-<br />
| [[User:Msemtd|Michael Erskine]]<br />
|-<br />
| [[User:James|James Hayward]]<br />
|-<br />
| [[User:lwk|Matt Lloyd]]<br />
|-<br />
| [[User:Davidhayward|David Hayward]]<br />
|}<br />
<br />
=== Pre-2011 ===<br />
<br />
Until 2011, Nottingham Hackspace didn't have an elected board.<br />
[[Category:Governance]]</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=2016-10-17_Election&diff=128082016-10-17 Election2016-10-10T07:49:02Z<p>Robert: Created page with "The election will take place electronically using OpaVote, and you will receive an individual voting email to your registered email address. <br>'''The nomination window is n..."</p>
<hr />
<div>The election will take place electronically using OpaVote, and you will receive an individual voting email to your registered email address.<br />
<br />
<br>'''The nomination window is now closed.''' <br/><br />
<br />
Sophie Wilkinson has stepped down as trustee<br />
<br />
There is one open trustee slot, and the following members have put themselves forward to be trustees.<br />
<br />
We will start the election on the 17th October and it will run for 7 days. All members, no matter how remote, will be able to vote. You will receive an email to your registered email address.<br />
<br />
Our returning officer for this election is '''[TBD]''' who will set up and handle the OPA vote system for the election. <br />
<br />
{| class="wikitable"<br />
<br />
|-<br />
! Photo<br />
! Nominee<br />
<br />
|-<br />
| [[File:IDickinson_2016_Trustee.png|125px]]<br />'''Ian Dickinson'''<br />
|Since discovering Nottinghack in 2012 I have been an active member of the community. Some of the things I have been involved with include:<br />
<br />
* Organising and running the popular Introduction to Arduino workshops (It's my 14th one next month)<br />
* Representing Nottinghack at various events, includng Derby and Newcastle Maker Faires, and this year's Green Festival<br />
* Apply for funding from the Creative Quarter and running the Nottinghack event at Light Night 2016<br />
* Making a number of parts for Barbot, the Nottinghack automated cocktail bar<br />
* Doing laser cutter inductions, and regularly maintaining the laser to ensure a high level of availability<br />
* Building the Rule Zero / Fire Pong game we took to this year's EMF Camp<br />
* Taking an active role in the membership team, giving tours, setting up cards and dealing with membership emails<br />
* Organising this year's Crapathon event (takes place on 3rd December)<br />
* Helping with many Hack the Space days, including helping with HS2.5<br />
* Making the annoying taking donations box in the comfy area<br />
* Keeping the electronics areas tidy, and the space in general, including emptying the bins!<br />
<br />
None of these things have been done alone, but through my involvement in these activites with others I have helped to make the space a better place and have also made many new friends.<br />
<br />
When I joined the space there were around 120 members. We are now have four times this at nearly 500 members. I have seen many changes, and would very much like to play a central role in making sure the hackspace continues to grow, but is inclusive for all members. <br />
<br />
Lastly I also very much enjoy making things, and want to see the hackspace have the best tools it can.<br />
|}</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=File:IDickinson_2016_Trustee.png&diff=12807File:IDickinson 2016 Trustee.png2016-10-10T07:46:38Z<p>Robert: </p>
<hr />
<div></div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=Embroidery_Pledge&diff=12781Embroidery Pledge2016-09-28T08:31:37Z<p>Robert: </p>
<hr />
<div>'''Main page for the machine is here [[Embroidery Machine]]<br />
'''<br />
[[File:Brother-innov-is-955-255-1.jpg|thumb|200px|Product page: http://bit.ly/25UWkR4]]<br />
<br />
This pledge is for a computerised embroidery machine, like the Brother Innov-is 750E shown to the right.<br />
<br />
We can get this machine for around £900, and it comes with 136 designs built in, as well as ~3 fonts for letters.<br />
<br />
It also accepts designs through the USB stick, which you can create with the Brother software, which is included with the machine.<br />
<br />
This pledge is currently for a machine, not necessarily the one above. Feel free to suggest other machines on the talk page, or on the Google Group post.<br />
<br />
== List of pledges ==<br />
<br />
Please only post on the [https://groups.google.com/forum/?fromgroups#!topic/nottinghack/aMteHIXIXfw Google Group mailing list] if you really, truly have forgotten your HMS password and need to have someone else to update this.<br />
<br />
{| class="wikitable"<br />
|-<br />
! Who<br />
! How Much<br />
! Paid?<br />
! Method Paid<br />
! Inducted?<br />
|-<br />
| [[User:James|James]] || £40 || No || -- || No<br />
|-<br />
| [[User:Jelly|Joshua Kelly]] || £20 || Yes || (Confirmed cash) || No<br />
|-<br />
| [[User:LauraMathews|LoraEm]] || £50 || Yes || (Confirmed LM)|| No<br />
|-<br />
| [[User:mathw|Matthew Walton]] || £30 || No || --|| Yes<br />
|-<br />
| [[User:kirkichi|Kirsty Lockhart]] || £20 || No || --|| No<br />
|-<br />
| [[User:Msemtd|Michael Erskine]] || £80 || Yes || Transfer (Confirmed MSE)|| Kind of self-inducted!<br />
|-<br />
| [[User:Aeish|Adam F]] || £20 || Yes || Transfer 19/8/16 PledgeEMAF (Confirmed AF)|| Yes<br />
|-<br />
| Marky Domleo || £100 || Yes ||(Confirmed MD) || No<br />
|-<br />
| [[User:RussellH|Russell Houghton]] || £30 || Yes || Transfer 8/09/16 ref: PledgeEMRH (Confirmed RH)|| No<br />
|-<br />
| [[User:TalksToRainbows|Becca T]] || £20 || Yes || Transfer (Confirmed BT)|| No<br />
|-<br />
| [[User:Mouse|Mouse]] || £40 || No || --|| No<br />
|-<br />
| Bob Wood || £10 || Yes || Xfer (Confirmed BW)|| No<br />
|-<br />
| [[User:iandickinson|Ian D]] and Sue D || £30 || Yes || Bank transfer 18/08/16 PledgeEMID (Confirmed ID)|| No<br />
|-<br />
| [[User:Kate|Kate]] || £15 || Yes || (Confirmed KB) || No<br />
|-<br />
| Greg Duckworth || £30 || Yes || Transfer (Confirmed GD)|| No<br />
|-<br />
| [[User:sid351|Owen C]] || £20 || Yes || Transfer (Confirmed OC)|| No<br />
|-<br />
| [[User:MattP|Matt Pritchard]]|| £20 || Yes || Transfer (Confirmed MP)|| No<br />
|-<br />
| [[User:matingslinkys|Toby]]|| £25 || Yes || Transfer (Confirmed TJ)|| No<br />
|-<br />
| [[User:kimjonggill|Gill Z]] and Dominic|| £25 || Yes || Transfer 22/08 (Confirmed GZ)|| No<br />
|-<br />
| [[User:spacebee|Paul H]]|| £40 || Yes || Bank xfer 03/09 (might not go through until monday) (Confirmed PH)|| Yes<br />
|-<br />
| [[User:Skipferret|Phil Parry]]|| £30 || Yes || Bank Xfer 1/9/16 PledgeEMPCP (Confirmed PCP)|| No<br />
|-<br />
| [[User:tasos|Tasos]]|| £25 || Yes || Bank Xfer 18/08/16 PledgeEMAA (Confirmed AA)|| No<br />
|-<br />
| [[User:TrumpetTom|Tom Grover]]|| £40 || Yes || Bank Xfer PledgeEMTG (Confirmed TG)|| No<br />
|-<br />
| [[User:aarondobie555|Aaron Dobie]]|| £5 || Yes || Bank Xfer 17.08.16 (Confirmed AD)|| No<br />
|-<br />
| Alan Woodcock|| £50 || Yes || Transfer (Confirmed XX)|| No<br />
|-<br />
| [[User:Chunky|Matt Little]]|| £20 || Yes|| Bank transfer 18/08/16 PledgeEMMEL (Confirmed)|| No<br />
|-<br />
| [[User:MSRaynsford|Martin Raynsford]]|| £20 || Yes || Transfer (Confirmed MR)|| No<br />
|-<br />
| [[User:Moodybass|John Moody]]|| £40 || Yes || Bank Transfer 7/9 - PledgeEMJM (Confirmed JM)|| No<br />
|-<br />
| [[User:mellchie|Michelle S]]|| £20 || Yes ||| Bank transfer 17/08/16 PledgeEM-MS (Confirmed MS)|| No<br />
|-<br />
| [[User:c4arl3|C Clark]]|| £15 || Yes || Transfer 20/08/2016 (Confirmed CC)|| No<br />
|}<br />
<br />
{{#widget:PledgeTracker|pledgeGoal=900}}<br />
<br />
[[Category:Pledge Drives]]</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=Embroidery_Pledge&diff=12758Embroidery Pledge2016-09-20T17:49:08Z<p>Robert: /* List of pledges */</p>
<hr />
<div>'''Main page for the machine is here [[Embroidery Machine]]<br />
'''<br />
[[File:Brother-innov-is-955-255-1.jpg|thumb|200px|Product page: http://bit.ly/25UWkR4]]<br />
<br />
This pledge is for a computerised embroidery machine, like the Brother Innov-is 750E shown to the right.<br />
<br />
We can get this machine for around £900, and it comes with 136 designs built in, as well as ~3 fonts for letters.<br />
<br />
It also accepts designs through the USB stick, which you can create with the Brother software, which is included with the machine.<br />
<br />
This pledge is currently for a machine, not necessarily the one above. Feel free to suggest other machines on the talk page, or on the Google Group post.<br />
<br />
== List of pledges ==<br />
<br />
Please only post on the [https://groups.google.com/forum/?fromgroups#!topic/nottinghack/aMteHIXIXfw Google Group mailing list] if you really, truly have forgotten your HMS password and need to have someone else to update this.<br />
<br />
{| class="wikitable"<br />
|-<br />
! Who<br />
! How Much<br />
! Paid?<br />
! Method Paid<br />
! Inducted?<br />
|-<br />
| [[User:James|James]] || £40 || No || -- || No<br />
|-<br />
| [[User:Jelly|Joshua Kelly]] || £25 || No || -- || No<br />
|-<br />
| [[User:LauraMathews|LoraEm]] || £50 || Yes || (Confirmed LM)|| No<br />
|-<br />
| [[User:mathw|Matthew Walton]] || £30 || No || --|| Yes<br />
|-<br />
| [[User:kirkichi|Kirsty Lockhart]] || £20 || No || --|| No<br />
|-<br />
| [[User:Msemtd|Michael Erskine]] || £80 || Yes || Transfer (Confirmed MSE)|| Kind of self-inducted!<br />
|-<br />
| [[User:Aeish|Adam F]] || £20 || Yes || Transfer 19/8/16 PledgeEMAF (Confirmed AF)|| Yes<br />
|-<br />
| Marky Domleo || £100 || Yes ||(Confirmed MD) || No<br />
|-<br />
| [[User:RussellH|Russell Houghton]] || £30 || Yes || Transfer 8/09/16 ref: PledgeEMRH (Confirmed RH)|| No<br />
|-<br />
| [[User:TalksToRainbows|Becca T]] || £20 || Yes || Transfer (Confirmed BT)|| No<br />
|-<br />
| [[User:Mouse|Mouse]] || £40 || No || --|| No<br />
|-<br />
| Bob Wood || £10 || Yes || Xfer (Confirmed BW)|| No<br />
|-<br />
| [[User:iandickinson|Ian D]] and Sue D || £30 || Yes || Bank transfer 18/08/16 PledgeEMID (Confirmed ID)|| No<br />
|-<br />
| [[User:Kate|Kate]] || £15 || Yes || (Confirmed KB) || No<br />
|-<br />
| Greg Duckworth || £30 || Yes || Transfer (Confirmed GD)|| No<br />
|-<br />
| [[User:sid351|Owen C]] || £20 || Yes || Transfer (Confirmed OC)|| No<br />
|-<br />
| [[User:MattP|Matt Pritchard]]|| £20 || Yes || Transfer (Confirmed MP)|| No<br />
|-<br />
| [[User:matingslinkys|Toby]]|| £25 || Yes || Transfer (Confirmed TJ)|| No<br />
|-<br />
| [[User:kimjonggill|Gill Z]] and Dominic|| £25 || Yes || Transfer 22/08 (Confirmed GZ)|| No<br />
|-<br />
| [[User:spacebee|Paul H]]|| £40 || Yes || Bank xfer 03/09 (might not go through until monday) (Confirmed PH)|| Yes<br />
|-<br />
| [[User:Skipferret|Phil Parry]]|| £30 || Yes || Bank Xfer 1/9/16 PledgeEMPCP (Confirmed PCP)|| No<br />
|-<br />
| [[User:tasos|Tasos]]|| £25 || Yes || Bank Xfer 18/08/16 PledgeEMAA (Confirmed AA)|| No<br />
|-<br />
| [[User:TrumpetTom|Tom Grover]]|| £40 || Yes || Bank Xfer PledgeEMTG (Confirmed TG)|| No<br />
|-<br />
| [[User:aarondobie555|Aaron Dobie]]|| £5 || Yes || Bank Xfer 17.08.16 (Confirmed AD)|| No<br />
|-<br />
| Alan Woodcock|| £50 || Yes || Transfer (Confirmed XX)|| No<br />
|-<br />
| [[User:Chunky|Matt Little]]|| £20 || Yes|| Bank transfer 18/08/16 PledgeEMMEL (Confirmed)|| No<br />
|-<br />
| [[User:MSRaynsford|Martin Raynsford]]|| £20 || Yes || Transfer (Confirmed MR)|| No<br />
|-<br />
| [[User:Moodybass|John Moody]]|| £40 || Yes || Bank Transfer 7/9 - PledgeEMJM (Confirmed JM)|| No<br />
|-<br />
| [[User:mellchie|Michelle S]]|| £20 || Yes ||| Bank transfer 17/08/16 PledgeEM-MS (Confirmed MS)|| No<br />
|-<br />
| [[User:c4arl3|C Clark]]|| £15 || Yes || Transfer 20/08/2016 (Confirmed CC)|| No<br />
|}<br />
<br />
{{#widget:PledgeTracker|pledgeGoal=900}}<br />
<br />
[[Category:Pledge Drives]]</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=Embroidery_Pledge&diff=12678Embroidery Pledge2016-09-10T10:43:20Z<p>Robert: </p>
<hr />
<div>'''Main page for the machine is here [[Embroidery Machine]]<br />
'''<br />
[[File:Brother-innov-is-955-255-1.jpg|thumb|200px|Product page: http://bit.ly/25UWkR4]]<br />
<br />
This pledge is for a computerised embroidery machine, like the Brother Innov-is 750E shown to the right.<br />
<br />
We can get this machine for around £900, and it comes with 136 designs built in, as well as ~3 fonts for letters.<br />
<br />
It also accepts designs through the USB stick, which you can create with the Brother software, which is included with the machine.<br />
<br />
This pledge is currently for a machine, not necessarily the one above. Feel free to suggest other machines on the talk page, or on the Google Group post.<br />
<br />
== List of pledges ==<br />
<br />
Please only post on the [https://groups.google.com/forum/?fromgroups#!topic/nottinghack/aMteHIXIXfw Google Group mailing list] if you really, truly have forgotten your HMS password and need to have someone else to update this.<br />
<br />
{| class="wikitable"<br />
|-<br />
! Who<br />
! How Much<br />
! Paid?<br />
! Method Paid<br />
! Inducted?<br />
|-<br />
| [[User:James|James]] || £40 || No || -- || No<br />
|-<br />
| [[User:Jelly|Joshua Kelly]] || £25 || No || -- || No<br />
|-<br />
| [[User:LauraMathews|LoraEm]] || £50 || Yes || (Confirmed LM)|| No<br />
|-<br />
| [[User:mathw|Matthew Walton]] || £30 || No || --|| Yes<br />
|-<br />
| [[User:kirkichi|Kirsty Lockhart]] || £20 || No || --|| No<br />
|-<br />
| [[User:Msemtd|Michael Erskine]] || £80 || Yes || Transfer (Confirmed MSE)|| Kind of self-inducted!<br />
|-<br />
| [[User:Aeish|Adam F]] || £20 || Yes || Transfer 19/8/16 PledgeEMAF (Confirmed AF)|| Yes<br />
|-<br />
| Marky Domleo || £100 || No || --|| No<br />
|-<br />
| [[User:RussellH|Russell Houghton]] || £30 || Yes || Transfer 8/09/16 ref: PledgeEMRH (Confirmed RH)|| No<br />
|-<br />
| [[User:TalksToRainbows|Becca T]] || £20 || Yes || Transfer (Confirmed BT)|| No<br />
|-<br />
| [[User:Mouse|Mouse]] || £40 || No || --|| No<br />
|-<br />
| Bob Wood || £10 || Yes || Xfer (Confirmed BW)|| No<br />
|-<br />
| [[User:iandickinson|Ian D]] and Sue D || £30 || Yes || Bank transfer 18/08/16 PledgeEMID (Confirmed ID)|| No<br />
|-<br />
| [[User:Kate|Kate]] || £15 || Yes || (Confirmed KB) || No<br />
|-<br />
| Greg Duckworth || £30 || Yes || Transfer (Confirmed GD)|| No<br />
|-<br />
| [[User:sid351|Owen C]] || £20 || Yes || Transfer (Confirmed OC)|| No<br />
|-<br />
| [[User:MattP|Matt Pritchard]]|| £20 || Yes || Transfer (Confirmed MP)|| No<br />
|-<br />
| [[User:matingslinkys|Toby]]|| £25 || Yes || Transfer (Confirmed TJ)|| No<br />
|-<br />
| [[User:kimjonggill|Gill Z]] and Dominic|| £25 || Yes || Transfer 22/08 (Confirmed GZ)|| No<br />
|-<br />
| [[User:spacebee|Paul H]]|| £40 || Yes || Bank xfer 03/09 (might not go through until monday) (Confirmed PH)|| Yes<br />
|-<br />
| [[User:Skipferret|Phil Parry]]|| £30 || Yes || Bank Xfer 1/9/16 PledgeEMPCP (Confirmed PCP)|| No<br />
|-<br />
| [[User:tasos|Tasos]]|| £25 || Yes || Bank Xfer 18/08/16 PledgeEMAA (Confirmed AA)|| No<br />
|-<br />
| [[User:TrumpetTom|Tom Grover]]|| £40 || Yes || Bank Xfer PledgeEMTG (Confirmed TG)|| No<br />
|-<br />
| [[User:aarondobie555|Aaron Dobie]]|| £5 || Yes || Bank Xfer 17.08.16 (Confirmed AD)|| No<br />
|-<br />
| Alan Woodcock|| £50 || Yes || Transfer (Confirmed XX)|| No<br />
|-<br />
| [[User:Chunky|Matt Little]]|| £20 || Yes|| Bank transfer 18/08/16 PledgeEMMEL (Confirmed)|| No<br />
|-<br />
| [[User:MSRaynsford|Martin Raynsford]]|| £20 || Yes || Transfer (Confirmed MR)|| No<br />
|-<br />
| [[User:Moodybass|John Moody]]|| £40 || Yes || Bank Transfer 7/9 - PledgeEMJM (Confirmed JM)|| No<br />
|-<br />
| [[User:mellchie|Michelle S]]|| £20 || Yes ||| Bank transfer 17/08/16 PledgeEM-MS (Confirmed MS)|| No<br />
|-<br />
| [[User:c4arl3|C Clark]]|| £15 || Yes || Transfer 20/08/2016 (Confirmed CC)|| No<br />
|}<br />
<br />
{{#widget:PledgeTracker|pledgeGoal=900}}<br />
<br />
[[Category:Pledge Drives]]</div>Roberthttps://wiki.nottinghack.org.uk/index.php?title=Embroidery_Pledge&diff=12655Embroidery Pledge2016-09-07T12:17:00Z<p>Robert: /* List of pledges */</p>
<hr />
<div>'''Main page for the machine is here [[Embroidery Machine]]<br />
'''<br />
[[File:Brother-innov-is-955-255-1.jpg|thumb|200px|Product page: http://bit.ly/25UWkR4]]<br />
<br />
This pledge is for a computerised embroidery machine, like the Brother Innov-is 750E shown to the right.<br />
<br />
We can get this machine for around £900, and it comes with 136 designs built in, as well as ~3 fonts for letters.<br />
<br />
It also accepts designs through the USB stick, which you can create with the Brother software, which is included with the machine.<br />
<br />
This pledge is currently for a machine, not necessarily the one above. Feel free to suggest other machines on the talk page, or on the Google Group post.<br />
<br />
== List of pledges ==<br />
<br />
Please only post on the [https://groups.google.com/forum/?fromgroups#!topic/nottinghack/aMteHIXIXfw Google Group mailing list] if you really, truly have forgotten your HMS password and need to have someone else to update this.<br />
<br />
{| class="wikitable"<br />
|-<br />
! Who<br />
! How Much<br />
! Paid?<br />
! Method Paid<br />
! Inducted?<br />
|-<br />
| [[User:James|James]] || £40 || No || -- || No<br />
|-<br />
| [[User:Jelly|Joshua Kelly]] || £25 || No || -- || No<br />
|-<br />
| [[User:LauraMathews|LoraEm]] || £50 || Yes || (Confirmed LM)|| No<br />
|-<br />
| [[User:mathw|Matthew Walton]] || £30 || No || --|| Yes<br />
|-<br />
| [[User:kirkichi|Kirsty Lockhart]] || £20 || No || --|| No<br />
|-<br />
| [[User:Msemtd|Michael Erskine]] || £80 || Yes || Transfer (Confirmed MSE)|| No<br />
|-<br />
| [[User:Aeish|Adam F]] || £20 || Yes || Transfer 19/8/16 PledgeEMAF (Confirmed AF)|| Yes<br />
|-<br />
| Marky Domleo || £100 || No || --|| No<br />
|-<br />
| [[User:RussellH|Russell Houghton]] || £30 || No || --|| No<br />
|-<br />
| [[User:TalksToRainbows|Becca T]] || £20 || Yes || Transfer (Confirmed BT)|| No<br />
|-<br />
| [[User:Mouse|Mouse]] || £40 || No || --|| No<br />
|-<br />
| Bob Wood || £10 || Yes || Xfer (Confirmed BW)|| No<br />
|-<br />
| [[User:iandickinson|Ian D]] and Sue D || £30 || Yes || Bank transfer 18/08/16 PledgeEMID (Confirmed ID)|| No<br />
|-<br />
| [[User:Kate|Kate]] || £15 || Yes || (Confirmed KB) || No<br />
|-<br />
| Greg Duckworth || £30 || Yes || Transfer (Confirmed GD)|| No<br />
|-<br />
| [[User:sid351|Owen C]] || £20 || Yes || Transfer (Confirmed OC)|| No<br />
|-<br />
| [[User:MattP|Matt Pritchard]]|| £20 || Yes || Transfer (Confirmed MP)|| No<br />
|-<br />
| [[User:matingslinkys|Toby]]|| £25 || Yes || Transfer (Confirmed TJ)|| No<br />
|-<br />
| [[User:kimjonggill|Gill Z]] and Dominic|| £25 || Yes || Transfer 22/08 (Confirmed GZ)|| No<br />
|-<br />
| [[User:spacebee|Paul H]]|| £40 || Yes || Bank xfer 03/09 (might not go through until monday) (Confirmed PH)|| Yes<br />
|-<br />
| [[User:Skipferret|Phil Parry]]|| £30 || Yes || Bank Xfer 1/9/16 PledgeEMPCP (Confirmed PCP)|| No<br />
|-<br />
| [[User:tasos|Tasos]]|| £25 || Yes || Bank Xfer 18/08/16 PledgeEMAA (Confirmed AA)|| No<br />
|-<br />
| [[User:TrumpetTom|Tom Grover]]|| £40 || Yes || Bank Xfer PledgeEMTG (Confirmed TG)|| No<br />
|-<br />
| [[User:aarondobie555|Aaron Dobie]]|| £5 || Yes || Bank Xfer 17.08.16 (Confirmed AD)|| No<br />
|-<br />
| Alan Woodcock|| £50 || Yes || Transfer (Confirmed XX)|| No<br />
|-<br />
| [[User:Chunky|Matt Little]]|| £20 || Yes|| Bank transfer 18/08/16 PledgeEMMEL (Confirmed)|| No<br />
|-<br />
| [[User:MSRaynsford|Martin Raynsford]]|| £20 || Yes || Transfer (Confirmed MR)|| No<br />
|-<br />
| [[User:Moodybass|John Moody]]|| £40 || Yes || Bank Transfer 7/9 - PledgeEMJM (Confirmed JM)|| No<br />
|-<br />
| [[User:mellchie|Michelle S]]|| £20 || Yes ||| Bank transfer 17/08/16 PledgeEM-MS (Confirmed MS)|| No<br />
|-<br />
| [[User:c4arl3|C Clark]]|| £15 || Yes || Transfer 20/08/2016 (Confirmed CC)|| No<br />
|}<br />
<br />
{{#widget:PledgeTracker|pledgeGoal=900}}<br />
<br />
[[Category:Pledge Drives]]</div>Robert