Beispiel #1
0
def safety_callback(channel):
    open(config.get('task', 'lock_file'), 'w').close()
    message = {'type': '', 'code': ''}
    write_emergency(json.dumps(message))
    su = SerialUtils()
    GPIO_STATUS=GPIO.input(2)
    type="emergency"
    if(GPIO_STATUS == 0):
        su.sendGCode('M730')
        reply = su.getReply()
        #print ">>>> ", reply
        if(reply != ''):
            decodedReply =  decodeReply(reply)
            if decodedReply != None :
                special_codes = [110, 120, 121]
                if(decodedReply in special_codes):
                    if decodedReply == 110:
                        type="alert"
                        su.flush()
                        su.sendGCode('M999')
                    elif decodedReply == 120 or decodedReply == 121:
                        if(settings['bothy'] == 'Shutdown' or settings['bothz'] == 'Shutdown'):
                            call (['sudo php /var/www/fabui/application/modules/controller/ajax/shutdown.php'], shell=True)
                            GPIO.cleanup() #we can disable GPIO as we are rebooting the system.
                            
                message = {'type': type, 'code': str(decodedReply)}
                ws.send(json.dumps(message))
                write_emergency(json.dumps(message))
            
    su.flush()
    su.close()
    GPIO_STATUS=GPIO.HIGH
    if os.path.isfile(config.get('task', 'lock_file')):
        os.remove(config.get('task', 'lock_file'))
Beispiel #2
0
def safety_callback(channel):
    open(config.get('task', 'lock_file'), 'w').close()
    message = {'type': '', 'code': ''}
    write_emergency(json.dumps(message))
    su = SerialUtils()
    GPIO_STATUS = GPIO.input(2)
    type = "emergency"
    if (GPIO_STATUS == 0):
        su.sendGCode('M730')
        reply = su.getReply()
        #print ">>>> ", reply
        if (reply != ''):
            decodedReply = decodeReply(reply)
            if decodedReply != None:
                special_codes = [110, 120, 121]
                if (decodedReply in special_codes):
                    if decodedReply == 110:
                        type = "alert"
                        su.flush()
                        su.sendGCode('M999')
                    elif decodedReply == 120 or decodedReply == 121:
                        if (settings['bothy'] == 'Shutdown'
                                or settings['bothz'] == 'Shutdown'):
                            call([
                                'sudo php /var/www/fabui/application/modules/controller/ajax/shutdown.php'
                            ],
                                 shell=True)
                            GPIO.cleanup(
                            )  #we can disable GPIO as we are rebooting the system.

                message = {'type': type, 'code': str(decodedReply)}
                ws.send(json.dumps(message))
                write_emergency(json.dumps(message))

    su.flush()
    su.close()
    GPIO_STATUS = GPIO.HIGH
    if os.path.isfile(config.get('task', 'lock_file')):
        os.remove(config.get('task', 'lock_file'))
Beispiel #3
0
}

HEAD_VERSION_CMDS = {
    'hybrid': hybridHead,
    'print_v2': printHead2,
    'mill_v2': millHead2
}
"""
START BOOTSTRAP
"""
if (hardware_reset):
    su.reset()
    time.sleep(3)

if (flush):
    su.flush()

if (hardware_reset == False):
    su.sendGCode('M300')
    su.sendGCode('M701 S0\r\nM702 S0\r\nM703 S0')

### rise probe
su.sendGCode('M402')
time.sleep(1)
### set ambient colors
su.sendGCode(
    ('M701 S%s\r\nM702 S%s\r\nM703 S%s' %
     (settings['color']['r'], settings['color']['g'], settings['color']['b'])))
### set safety door open: enable/disable warnings
su.sendGCode(('M732 S%s' % settings['safety']['door']))
### set collision-warning enable/disable warnings