Laser/Lazzzorauth
SYSTEM IS LIVE! Here is how it works
Important notes:
You need a key, or a key owner to log in for you before you can lazzzor!
If you have lazzzor privileges but not yet a key, get in touch with mzeltner, overflo or !
If you try to print without anyone being logged in, CorelDraw will freeze
and print jobs will have to be cancelled! After deletion CorelDraw will unfreeze.
Currently public list of people with lazzzor privileges:
Workflow / Howto
- Logging in: put in your key
- Print as per usual!
- Be externally responsible: hold logout button for 3 seconds (display doesn't changes after 3s but after releasing the button)
- External (i.e. not you!) print as per usual
- Log out: tap logout once (if you're done lazzzoring or overseeing lazzzoring!)
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
There is a hall effect sensor placed right over the valve of the air-assist. 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 GREEN =1 RED =2 BLUE =4
Where
LazzzorAuth runs @ 10.20.30.27
Its located right behind the Lazzzor station on the wall.
Links
Arduino + Embedded system code on github
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 flushes the display.