Laser/Lazzzorauth: Unterschied zwischen den Versionen

aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Zur Navigation springenZur Suche springen
Zeile 1: Zeile 1:
 
 
[[Datei:lazzzorauth.jpg|300px|thumb|left|done.]]
 
[[Datei:lazzzorauth.jpg|300px|thumb|left|done.]]
  
Zeile 24: Zeile 23:
  
 
Arduino code (because there was a spare arduino laying around..)
 
Arduino code (because there was a spare arduino laying around..)
 +
 +
  
 
== How ==
 
== How ==
Zeile 41: Zeile 42:
 
All states are now handled by the embedded system.
 
All states are now handled by the embedded system.
  
The Arduino only displays what the ELS sends it.
+
The Arduino only displays what the embedded System sends it.
  
 
The arduino sends ibutton scans and pushbutton events.
 
The arduino sends ibutton scans and pushbutton events.
 +
 +
<pre>
 +
//this code is followed by the button id
 +
#define BUTTON_ID_SCANNED  'I'
 +
 +
// error is followed by error description (like CRC error)
 +
#define ERROR_CODE  'E'
 +
 +
// when button is triggered
 +
#define LOGOUT_USER  'B'
 +
// when button is long pressed
 +
#define EXTERNAL_USER_RESPONSIBLE  'X'
 +
 +
//button was removed, this event is ignored by embedded system
 +
#define BUTTON_REMOVED  'L'
 +
 +
// sensor from valve magnetic field
 +
#define LASERJOB_STARTED  'J'
 +
#define LASERJOB_FINISHED  'S'
 +
</pre>
 +
 +
 +
The embedded System sends:
 +
<pre>
 +
'A' followed by text for the FIRST line
 +
'B' folloowed by text for the second line
 +
'C' Turn color on LCD to
 +
 +
</pre>
  
  
Zeile 50: Zeile 80:
  
 
LazzzorAuth runs @ 10.20.30.27
 
LazzzorAuth runs @ 10.20.30.27
 +
 +
Its located right begind the Lazzzorstation on the wall.
 +
  
 
== Links ==
 
== Links ==
# GIT - Arduino source
+
[[https://github.com/Metalab/LazzzorAuth/arduino Arduino source ]]
# GIT - Dockstar linux mods +scripts
+
[[https://github.com/Metalab/LazzzorAuth/embedded Linux part (node.js, cronjobs, ...) ]]
# GIT - Node.js application
+
 
 +
 
 +
== Gotchas ==
 +
The Arduino used is a Arduino UNO but it's bootloader is from an Arduino DUEMILANOVE.
 +
 
 +
Pick this as target when compiling a new firmware for it..
 +
 
 +
When the Arduino is plugged in it displays "Linux booting.. hang in there"
 +
 
 +
Once The embedded system is up it sends a welcoming message over serial and this flushed the display.
  
 
[[Kategorie:Howto]]
 
[[Kategorie:Howto]]

Version vom 1. Februar 2013, 16:54 Uhr

done.

Hardware

Consists of:

- Seagate Dockstar (because the raspberry pi SD-cards died several times)
- Arduino
- RGB 16x2 LCD
- OneWire Socket (iButton support)
- A red Button
- a 6-Port Network Switch

Software

dockstar linux distro from usb stick

Node.js Server / Database

Arduino code (because there was a spare arduino laying around..)


How

Hardware documentation

Breadboard aufbau (made with fritzing)
The hall effect sensor + Preamp


There is a hall effect sensor placed right over the valve of the airassist.

This valve is opened to enable a static airflow as soon as a laserjob starts and is disabled when the job ends.

Protocols

All states are now handled by the embedded system.

The Arduino only displays what the embedded System sends it.

The arduino sends ibutton scans and pushbutton events.

//this code is followed by the button id
#define BUTTON_ID_SCANNED   'I'

// error is followed by error description (like CRC error)
#define ERROR_CODE  'E'

// when button is triggered
#define LOGOUT_USER  'B'
// when button is long pressed
#define EXTERNAL_USER_RESPONSIBLE  'X'

//button was removed, this event is ignored by embedded system
#define BUTTON_REMOVED  'L'

// sensor from valve magnetic field
#define LASERJOB_STARTED  'J'
#define LASERJOB_FINISHED  'S'


The embedded System sends:

'A' followed by text for the FIRST line
'B' folloowed by text for the second line
'C' Turn color on LCD to 


Where

LazzzorAuth runs @ 10.20.30.27

Its located right begind the Lazzzorstation on the wall.


Links

[Arduino source ] [Linux part (node.js, cronjobs, ...) ]


Gotchas

The Arduino used is a Arduino UNO but it's bootloader is from an Arduino DUEMILANOVE.

Pick this as target when compiling a new firmware for it..

When the Arduino is plugged in it displays "Linux booting.. hang in there"

Once The embedded system is up it sends a welcoming message over serial and this flushed the display.