DSC Binding and OpenHab 1.8

Hello:

I have been playing with the DSC Binding all day, with no luck, and was wondering if anyone can see what I am doing wrong? I have this connected to an invisalink module, and can log in without issue to the invisalink, but it almost seems that OH is not logging in? I am using OH 1.8, and the bindings I have are labeled 1.81 ( org.openhab.binding.dscalarm-1.8.1 )

Below is my items file:

Group DSCAlarm
Group DSCAlarmPanel (DSCAlarm)
Group DSCAlarmPartitions (DSCAlarm)
Group DSCAlarmZones (DSCAlarm)
Group DSCAlarmKeypads (DSCAlarm)

/* DSC Alarm Items */

/* DSC Alarm Panel Items */
Number PANEL_CONNECTION “Panel Connected: [%d]” (DSCAlarmPanel) {dscalarm=“panel:panel_connection”}
Number PANEL_COMMAND “Panel Commands” (DSCAlarmPanel) {dscalarm=“panel:panel_command”}
String PANEL_MESSAGE “Panel Message: [%s]” <“shield-1”> (DSCAlarmPanel) {dscalarm=“panel:panel_message”}
String PANEL_SYSTEM_ERROR “Panel System Error: [%s]” <“shield-1”> (DSCAlarmPanel) {dscalarm=“panel:panel_system_error”}

Switch PANEL_TROUBLE_LED “Panel Trouble LED” (DSCAlarmPanel) {dscalarm=“panel:panel_trouble_led”}
Switch PANEL_SERVICE_REQUIRED (DSCAlarmPanel) {dscalarm=“panel:panel_service_required”}
Switch PANEL_AC_TROUBLE (DSCAlarmPanel) {dscalarm=“panel:panel_ac_trouble”}
Switch PANEL_TELEPHONE_TROUBLE (DSCAlarmPanel) {dscalarm=“panel:panel_telephone_trouble”}
Switch PANEL_FTC_TROUBLE (DSCAlarmPanel) {dscalarm=“panel:panel_ftc_trouble”}
Switch PANEL_ZONE_FAULT (DSCAlarmPanel) {dscalarm=“panel:panel_zone_fault”}
Switch PANEL_ZONE_TAMPER (DSCAlarmPanel) {dscalarm=“panel:panel_zone_tamper”}
Switch PANEL_ZONE_LOW_BATTERY (DSCAlarmPanel) {dscalarm=“panel:panel_zone_low_battery”}
Switch PANEL_TIME_LOSS (DSCAlarmPanel) {dscalarm=“panel:panel_time_loss”}
String PANEL_TROUBLE_MESSAGE “Panel Trouble Message: [%s]” <“shield-1”> (DSCAlarmPanel) {dscalarm=“panel:panel_trouble_message”}

DateTime PANEL_TIME “Panel Time [%1$tA, %1$tm/%1$td/%1$tY %1tT]” (DSCAlarmPanel) {dscalarm=“panel:panel_time”}
Switch PANEL_TIME_STAMP (DSCAlarmPanel) {dscalarm=“panel:panel_time_stamp”}
Switch PANEL_TIME_BROADCAST (DSCAlarmPanel) {dscalarm=“panel:panel_time_broadcast”}

Switch PANEL_FIRE_KEY_ALARM (DSCAlarmPanel) {dscalarm=“panel:panel_fire_key_alarm”}
Switch PANEL_PANIC_KEY_ALARM (DSCAlarmPanel) {dscalarm=“panel:panel_panic_key_alarm”}
Switch PANEL_AUX_KEY_ALARM (DSCAlarmPanel) {dscalarm=“panel:panel_aux_key_alarm”}
Switch PANEL_AUX_INPUT_ALARM (DSCAlarmPanel) {dscalarm=“panel:panel_aux_input_alarm”}

/* DSC Alarm Partition Items */
String PARTITION1_STATUS “Partition 1 Status: [%s]” (DSCAlarmPartitions) {dscalarm=“partition:1:partition_status”}
Number PARTITION1_ARM_MODE “Partition Arm Mode: [%d]” (DSCAlarmPartitions) {dscalarm=“partition:1:partition_arm_mode”}

Switch PARTITION1_ARMED (DSCAlarmPartitions) {dscalarm=“partition:1:partition_armed”}
Switch PARTITION1_ENTRY_DELAY (DSCAlarmPartitions) {dscalarm=“partition:1:partition_entry_delay”}
Switch PARTITION1_EXIT_DELAY (DSCAlarmPartitions) {dscalarm=“partition:1:partition_exit_delay”}
Switch PARTITION1_IN_ALARM (DSCAlarmPartitions) {dscalarm=“partition:1:partition_in_alarm”}
String PARTITION1_OPENING_CLOSING_MODE “Partition 1 Opening/Closing Mode: [%s]” (DSCAlarmPartitions) {dscalarm=“partition:1:partition_opening_closing_mode”}

/* DSC Alarm Zones Items */
Contact ZONE1_GENERAL_STATUS “Front Door Sensor” (DSCAlarmZones) {dscalarm=“zone:1:1:zone_general_status”}
Number ZONE1_BYPASS_MODE “Front Door Sensor Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:1:zone_bypass_mode”}
String ZONE1_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:1:zone_alarm_status”}
String ZONE1_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:1:zone_fault_status”}
String ZONE1_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:1:zone_tamper_status”}
Switch ZONE1_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:1:zone_in_alarm”}
Switch ZONE1_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:1:zone_tamper”}
Switch ZONE1_FAULT (DSCAlarmZones) {dscalarm=“zone:1:1:zone_fault”}
Switch ZONE1_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:1:zone_tripped”}

Contact ZONE2_GENERAL_STATUS “Garage Entry Door Sensor” (DSCAlarmZones, FrontFoyer) {dscalarm=“zone:1:2:zone_general_status”}
Number ZONE2_BYPASS_MODE “Garage Entry Door Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:2:zone_bypass_mode”}
String ZONE2_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:2:zone_alarm_status”}
String ZONE2_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:2:zone_fault_status”}
String ZONE2_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:2:zone_tamper_status”}
Switch ZONE2_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:2:zone_in_alarm”}
Switch ZONE2_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:2:zone_tamper”}
Switch ZONE2_FAULT (DSCAlarmZones) {dscalarm=“zone:1:2:zone_fault”}
Switch ZONE2_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:2:zone_tripped”}

Contact ZONE3_GENERAL_STATUS “Patio Door Sensor” (DSCAlarmZones, FamilyRoom) {dscalarm=“zone:1:3:zone_general_status”}
Number ZONE3_BYPASS_MODE “Patio Door Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:3:zone_bypass_mode”}
String ZONE3_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:3:zone_alarm_status”}
String ZONE3_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:3:zone_fault_status”}
String ZONE3_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:3:zone_tamper_status”}
Switch ZONE3_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:3:zone_in_alarm”}
Switch ZONE3_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:3:zone_tamper”}
Switch ZONE3_FAULT (DSCAlarmZones) {dscalarm=“zone:1:3:zone_fault”}
Switch ZONE3_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:3:zone_tripped”}

Contact ZONE4_GENERAL_STATUS “Main Floor Motion Sensor” (DSCAlarmZones, UtilityRoom) {dscalarm=“zone:1:4:zone_general_status”}
Number ZONE4_BYPASS_MODE “Main Floor Motion Sensor Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:4:zone_bypass_mode”}
String ZONE4_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:4:zone_alarm_status”}
String ZONE4_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:4:zone_fault_status”}
String ZONE4_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:4:zone_tamper_status”}
Switch ZONE4_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:4:zone_in_alarm”}
Switch ZONE4_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:4:zone_tamper”}
Switch ZONE4_FAULT (DSCAlarmZones) {dscalarm=“zone:1:4:zone_fault”}
Switch ZONE4_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:4:zone_tripped”}

Contact ZONE5_GENERAL_STATUS “Basement Floor Motion Sensor” (DSCAlarmZones, SideFoyer) {dscalarm=“zone:1:5:zone_general_status”}
Number ZONE5_BYPASS_MODE “Basement Floor Motion Sensor Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:5:zone_bypass_mode”}
String ZONE5_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:5:zone_alarm_status”}
String ZONE5_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:5:zone_fault_status”}
String ZONE5_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:5:zone_tamper_status”}
Switch ZONE5_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:5:zone_in_alarm”}
Switch ZONE5_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:5:zone_tamper”}
Switch ZONE5_FAULT (DSCAlarmZones) {dscalarm=“zone:1:5:zone_fault”}
Switch ZONE5_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:5:zone_tripped”}

Contact ZONE6_GENERAL_STATUS “Smoke Alarm Sensor” (DSCAlarmZones, Garage) {dscalarm=“zone:1:6:zone_general_status”}
Number ZONE6_BYPASS_MODE “Smoke Alarm Sensor Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:6:zone_bypass_mode”}
String ZONE6_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:6:zone_alarm_status”}
String ZONE6_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:6:zone_fault_status”}
String ZONE6_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:6:zone_tamper_status”}
Switch ZONE6_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:6:zone_in_alarm”}
Switch ZONE6_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:6:zone_tamper”}
Switch ZONE6_FAULT (DSCAlarmZones) {dscalarm=“zone:1:6:zone_fault”}
Switch ZONE6_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:6:zone_tripped”}

Contact ZONE9_GENERAL_STATUS “Bathroom Window Sensor” (DSCAlarmZones, FrontFoyer) {dscalarm=“zone:1:9:zone_general_status”}
Number ZONE9_BYPASS_MODE “Bathroom Window Sensor Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:9:zone_bypass_mode”}
String ZONE9_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:9:zone_alarm_status”}
String ZONE9_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:9:zone_fault_status”}
String ZONE9_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:9:zone_tamper_status”}
Switch ZONE9_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:9:zone_in_alarm”}
Switch ZONE9_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:9:zone_tamper”}
Switch ZONE9_FAULT (DSCAlarmZones) {dscalarm=“zone:1:9:zone_fault”}
Switch ZONE9_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:9:zone_tripped”}

Contact ZONE10_GENERAL_STATUS “Kitchen Window Sensor” (DSCAlarmZones, FamilyRoom) {dscalarm=“zone:1:10:zone_general_status”}
Number ZONE10_BYPASS_MODE “Kitchen Window Sensor Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:10:zone_bypass_mode”}
String ZONE10_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:10:zone_alarm_status”}
String ZONE10_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:10:zone_fault_status”}
String ZONE10_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:10:zone_tamper_status”}
Switch ZONE10_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:10:zone_in_alarm”}
Switch ZONE10_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:10:zone_tamper”}
Switch ZONE10_FAULT (DSCAlarmZones) {dscalarm=“zone:1:10:zone_fault”}
Switch ZONE10_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:10:zone_tripped”}

Contact ZONE11_GENERAL_STATUS “Dining Room Window Sensor” (DSCAlarmZones, UtilityRoom) {dscalarm=“zone:1:11:zone_general_status”}
Number ZONE11_BYPASS_MODE “Dining Room Window Sensor Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:11:zone_bypass_mode”}
String ZONE11_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:11:zone_alarm_status”}
String ZONE11_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:11:zone_fault_status”}
String ZONE11_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:11:zone_tamper_status”}
Switch ZONE11_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:11:zone_in_alarm”}
Switch ZONE11_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:11:zone_tamper”}
Switch ZONE11_FAULT (DSCAlarmZones) {dscalarm=“zone:1:11:zone_fault”}
Switch ZONE11_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:11:zone_tripped”}

Contact ZONE12_GENERAL_STATUS “Living Room Window Sensor” (DSCAlarmZones, SideFoyer) {dscalarm=“zone:1:12:zone_general_status”}
Number ZONE12_BYPASS_MODE “Living Room Window Sensor Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:12:zone_bypass_mode”}
String ZONE12_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:12:zone_alarm_status”}
String ZONE12_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:12:zone_fault_status”}
String ZONE12_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:12:zone_tamper_status”}
Switch ZONE12_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:12:zone_in_alarm”}
Switch ZONE12_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:12:zone_tamper”}
Switch ZONE12_FAULT (DSCAlarmZones) {dscalarm=“zone:1:12:zone_fault”}
Switch ZONE12_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:12:zone_tripped”}

Contact ZONE13_GENERAL_STATUS “Great Room Window Sensor” (DSCAlarmZones, Garage) {dscalarm=“zone:1:13:zone_general_status”}
Number ZONE13_BYPASS_MODE “Great Room Window Sensor Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:13:zone_bypass_mode”}
String ZONE13_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:13:zone_alarm_status”}
String ZONE13_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:13:zone_fault_status”}
String ZONE13_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:13:zone_tamper_status”}
Switch ZONE13_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:13:zone_in_alarm”}
Switch ZONE13_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:13:zone_tamper”}
Switch ZONE13_FAULT (DSCAlarmZones) {dscalarm=“zone:1:13:zone_fault”}
Switch ZONE13_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:13:zone_tripped”}

Contact ZONE14_GENERAL_STATUS “Basement Utility Room Window Sensor” (DSCAlarmZones, Garage) {dscalarm=“zone:1:14:zone_general_status”}
Number ZONE14_BYPASS_MODE “Basement Utility Room Window Sensor Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:14:zone_bypass_mode”}
String ZONE14_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:14:zone_alarm_status”}
String ZONE14_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:14:zone_fault_status”}
String ZONE14_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:14:zone_tamper_status”}
Switch ZONE14_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:14:zone_in_alarm”}
Switch ZONE14_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:14:zone_tamper”}
Switch ZONE14_FAULT (DSCAlarmZones) {dscalarm=“zone:1:14:zone_fault”}
Switch ZONE14_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:14:zone_tripped”}

Contact ZONE15_GENERAL_STATUS “Basement Play Room Window Sensor” (DSCAlarmZones, Garage) {dscalarm=“zone:1:15:zone_general_status”}
Number ZONE15_BYPASS_MODE “Basement Play Room Window Sensor Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:15:zone_bypass_mode”}
String ZONE15_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:15:zone_alarm_status”}
String ZONE15_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:15:zone_fault_status”}
String ZONE15_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:15:zone_tamper_status”}
Switch ZONE15_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:15:zone_in_alarm”}
Switch ZONE15_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:15:zone_tamper”}
Switch ZONE15_FAULT (DSCAlarmZones) {dscalarm=“zone:1:15:zone_fault”}
Switch ZONE15_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:15:zone_tripped”}

Contact ZONE16_GENERAL_STATUS “Basement Theater Window Sensor” (DSCAlarmZones, UtilityRoom) {dscalarm=“zone:1:16:zone_general_status”}
Number ZONE16_BYPASS_MODE “Basement Theater Window Sensor Bypass Mode” (DSCAlarmZones) {dscalarm=“zone:1:16:zone_bypass_mode”}
String ZONE16_ALARM_STATUS “Alarm Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:16:zone_alarm_status”}
String ZONE16_FAULT_STATUS “Fault Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:16:zone_fault_status”}
String ZONE16_TAMPER_STATUS “Tamper Status : [%s]” (DSCAlarmZones) {dscalarm=“zone:1:16:zone_tamper_status”}
Switch ZONE16_IN_ALARM (DSCAlarmZones) {dscalarm=“zone:1:16:zone_in_alarm”}
Switch ZONE16_TAMPER (DSCAlarmZones) {dscalarm=“zone:1:16:zone_tamper”}
Switch ZONE16_FAULT (DSCAlarmZones) {dscalarm=“zone:1:16:zone_fault”}
Switch ZONE16_TRIPPED (DSCAlarmZones) {dscalarm=“zone:1:16:zone_tripped”}

/* DSC Alarm Keypad Items */
Number KEYPAD_READY_LED “Ready LED Status: [%d]” (DSCAlarmKeypads) {dscalarm=“keypad:keypad_ready_led”}
Number KEYPAD_ARMED_LED “Armed LED Status: [%d]” (DSCAlarmKeypads) {dscalarm=“keypad:keypad_armed_led”}
Number KEYPAD_MEMORY_LED “Memory LED Status: [%d]” (DSCAlarmKeypads) {dscalarm=“keypad:keypad_memory_led”}
Number KEYPAD_BYPASS_LED “Bypass LED Status: [%d]” (DSCAlarmKeypads) {dscalarm=“keypad:keypad_bypass_led”}
Number KEYPAD_TROUBLE_LED “Trouble LED Status: [%d]” (DSCAlarmKeypads) {dscalarm=“keypad:keypad_trouble_led”}
Number KEYPAD_PROGRAM_LED “Program LED Status: [%d]” (DSCAlarmKeypads) {dscalarm=“keypad:keypad_program_led”}
Number KEYPAD_FIRE_LED “Fire LED Status: [%d]” (DSCAlarmKeypads) {dscalarm=“keypad:keypad_fire_led”}
Number KEYPAD_BACKLIGHT_LED “Backlight LED Status: [%d]” (DSCAlarmKeypads) {dscalarm=“keypad:keypad_backlight_led”}
Number KEYPAD_AC_LED “AC LED Status: [%d]” (DSCAlarmKeypads) {dscalarm=“keypad:keypad_ac_led”}

And below is my sitemap:

	Frame label="Alarm System" {
Text label="DSC Alarm System" icon="shield-1" {
    Frame label="Panel" {
        Switch item=PANEL_CONNECTION label="Panel Connection" icon="shield-1" mappings=[1="Connected", 0="Disconnected"]
        Text item=PANEL_MESSAGE icon="shield-1"
    }

    Frame label="Partitions" {
            Text item=PARTITION1_STATUS icon="shield-1" {
                Switch item=PARTITION1_ARM_MODE label="Partition 1 Arm Options" mappings=[0="Disarm", 1="Away", 2="Stay", 3="Zero", 4="W/Code"]
            }
    }

    Frame label="Keypad" {
        Text label="Keypad LED Status" icon="shield-1" {
            Switch item=KEYPAD_READY_LED label="Ready LED Status:" mappings=[0="Off", 1="On", 2="Flashing"]
            Switch item=KEYPAD_ARMED_LED label="Armed LED Status:" mappings=[0="Off", 1="On", 2="Flashing"]
            Switch item=KEYPAD_MEMORY_LED label="Memory LED Status:" mappings=[0="Off", 1="On", 2="Flashing"]
            Switch item=KEYPAD_BYPASS_LED label="Bypass LED Status:" mappings=[0="Off", 1="On", 2="Flashing"]
            Switch item=KEYPAD_TROUBLE_LED label="Trouble LED Status:" mappings=[0="Off", 1="On", 2="Flashing"]
            Switch item=KEYPAD_PROGRAM_LED label="Program LED Status:" mappings=[0="Off", 1="On", 2="Flashing"]
            Switch item=KEYPAD_FIRE_LED label="Fire LED Status:" mappings=[0="Off", 1="On", 2="Flashing"]
            Switch item=KEYPAD_BACKLIGHT_LED label="Backlight LED Status:" mappings=[0="Off", 1="On", 2="Flashing"]
            Switch item=KEYPAD_AC_LED label="AC LED Status:" mappings=[0="Off", 1="On", 2="Flashing"]
        }
    }

    Frame label="Zones" {
        Text item=ZONE1_GENERAL_STATUS {
            Switch item=ZONE1_BYPASS_MODE icon="shield-0" mappings=[0="Armed", 1="Bypassed"]
            Frame label="Other Status:" {
                Text item=ZONE1_ALARM_STATUS icon="shield-3"
                Text item=ZONE1_FAULT_STATUS icon="shield-3"
                Text item=ZONE1_TAMPER_STATUS icon="shield-3"
            }
        }

        Text item=ZONE2_GENERAL_STATUS {
            Switch item=ZONE2_BYPASS_MODE icon="shield-0" mappings=[0="Armed", 1="Bypassed"]
            Frame label="Other Status:" {
                Text item=ZONE2_ALARM_STATUS icon="shield-3"
                Text item=ZONE2_FAULT_STATUS icon="shield-3"
                Text item=ZONE2_TAMPER_STATUS icon="shield-3"
            }
        }
        Text item=ZONE3_GENERAL_STATUS {
            Switch item=ZONE3_BYPASS_MODE icon="shield-0" mappings=[0="Armed", 1="Bypassed"]
            Frame label="Other Status:" {
                Text item=ZONE3_ALARM_STATUS icon="shield-3"
                Text item=ZONE3_FAULT_STATUS icon="shield-3"
                Text item=ZONE3_TAMPER_STATUS icon="shield-3"
            }
        }
        Text item=ZONE4_GENERAL_STATUS {
            Switch item=ZONE4_BYPASS_MODE icon="shield-0" mappings=[0="Armed", 1="Bypassed"]
            Frame label="Other Status:" {
                Text item=ZONE4_ALARM_STATUS icon="shield-3"
                Text item=ZONE4_FAULT_STATUS icon="shield-3"
                Text item=ZONE4_TAMPER_STATUS icon="shield-3"
            }
        }
        Text item=ZONE5_GENERAL_STATUS {
            Switch item=ZONE5_BYPASS_MODE icon="shield-0" mappings=[0="Armed", 1="Bypassed"]
            Frame label="Other Status:" {
                Text item=ZONE5_ALARM_STATUS icon="shield-3"
                Text item=ZONE5_FAULT_STATUS icon="shield-3"
                Text item=ZONE5_TAMPER_STATUS icon="shield-3"
            }
        }
        Text item=ZONE6_GENERAL_STATUS {
            Switch item=ZONE6_BYPASS_MODE icon="shield-0" mappings=[0="Armed", 1="Bypassed"]
            Frame label="Other Status:" {
                Text item=ZONE6_ALARM_STATUS icon="shield-3"
                Text item=ZONE6_FAULT_STATUS icon="shield-3"
                Text item=ZONE6_TAMPER_STATUS icon="shield-3"
            }
        }
        Text item=ZONE9_GENERAL_STATUS {
            Switch item=ZONE7_BYPASS_MODE icon="shield-0" mappings=[0="Armed", 1="Bypassed"]
            Frame label="Other Status:" {
                Text item=ZONE7_ALARM_STATUS icon="shield-3"
                Text item=ZONE7_FAULT_STATUS icon="shield-3"
                Text item=ZONE7_TAMPER_STATUS icon="shield-3"
            }
        }
        Text item=ZONE10_GENERAL_STATUS {
            Switch item=ZONE8_BYPASS_MODE icon="shield-0" mappings=[0="Armed", 1="Bypassed"]
            Frame label="Other Status:" {
                Text item=ZONE10_ALARM_STATUS icon="shield-3"
                Text item=ZONE10_FAULT_STATUS icon="shield-3"
                Text item=ZONE10_TAMPER_STATUS icon="shield-3"
            }
        }
        Text item=ZONE11_GENERAL_STATUS {
            Switch item=ZONE9_BYPASS_MODE icon="shield-0" mappings=[0="Armed", 1="Bypassed"]
            Frame label="Other Status:" {
                Text item=ZONE11_ALARM_STATUS icon="shield-3"
                Text item=ZONE11_FAULT_STATUS icon="shield-3"
                Text item=ZONE11_TAMPER_STATUS icon="shield-3"
            }
        }
                    Text item=ZONE12_GENERAL_STATUS {
            Switch item=ZONE9_BYPASS_MODE icon="shield-0" mappings=[0="Armed", 1="Bypassed"]
            Frame label="Other Status:" {
                Text item=ZONE12_ALARM_STATUS icon="shield-3"
                Text item=ZONE12_FAULT_STATUS icon="shield-3"
                Text item=ZONE12_TAMPER_STATUS icon="shield-3"
            }
        }
    }
}

}

And below is the debug log… It does not seem to be logging in, and I have ran out of ideas. Would really appreciate if anyone can see what I’ve done wrong. :slightly_smiling:

2016-02-15 15:52:25.328 [DEBUG] [b.d.internal.DSCAlarmActivator] - start(): DSC Alarm binding has been started.
2016-02-15 15:52:25.360 [DEBUG] [i.internal.GenericItemProvider] - Start processing binding configuration of Item ‘PANEL_CONNECTION (Type=NumberItem, State=Uninitialized)’ with ‘DSCAlarmGenericBindingProvider’ reader.
2016-02-15 15:52:25.395 [DEBUG] [DSCAlarmGenericBindingProvider] - processBindingConfiguration(): Item added: PANEL_CONNECTION - panel:panel_connection
2016-02-15 15:52:25.403 [DEBUG] [i.internal.GenericItemProvider] - Start processing binding configuration of Item ‘PANEL_COMMAND (Type=NumberItem, State=Uninitialized)’ with ‘DSCAlarmGenericBindingProvider’ reader.
2016-02-15 15:52:25.417 [DEBUG] [DSCAlarmGenericBindingProvider] - processBindingConfiguration(): Item added: PANEL_COMMAND - panel:panel_command
2016-02-15 15:52:25.425 [DEBUG] [i.internal.GenericItemProvider] - Start processing binding configuration of Item ‘PANEL_MESSAGE (Type=StringItem, State=Uninitialized)’ with ‘DSCAlarmGenericBindingProvider’ reader.
2016-02-15 15:52:25.433 [DEBUG] [DSCAlarmGenericBindingProvider] - processBindingConfiguration(): Item added: PANEL_MESSAGE - panel:panel_message
2016-02-15 15:52:25.441 [DEBUG] [i.internal.GenericItemProvider] - Start processing binding configuration of Item ‘PANEL_SYSTEM_ERROR (Type=StringItem, State=Uninitialized)’ with ‘DSCAlarmGenericBindingProvider’ reader.
2016-02-15 15:52:25.449 [DEBUG] [DSCAlarmGenericBindingProvider] - processBindingConfiguration(): Item added: PANEL_SYSTEM_ERROR - panel:panel_system_error
2016-02-15 15:52:25.466 [DEBUG] [i.internal.GenericItemProvider] - Start processing binding configuration of Item ‘PANEL_TROUBLE_LED (Type=SwitchItem, State=Uninitialized)’ with ‘DSCAlarmGenericBindingProvider’ reader.
2016-02-15 15:52:28.388 [DEBUG] [DSCAlarmGenericBindingProvider] - processBindingConfiguration(): Item added: KEYPAD_AC_LED - keypad:keypad_ac_led
2016-02-15 15:52:28.718 [DEBUG] [.o.b.d.i.DSCAlarmActiveBinding] - DSC Alarm Binding Activated!
2016-02-15 15:52:28.736 [DEBUG] [.o.b.d.i.DSCAlarmActiveBinding] - updated(): Configuration updated, config true

What have you set in the openhab config?

C

I should have mentioned that sorry, in oh.cfg I’ve tried with only the IP address, ip+user+pw, all, none, etc, to no avail… I have also specified invisalink as the type, and tried with it commented out to no avail…

Hello @shep,

You can login to the Envisalink via it’s built in web page and see if there is a TPI connection on the Network page. If there is, check the the IP address and make sure it is the IP of your openHAB server. If it is not the openHAB server IP address then something else is connecting to it. Also, the config entries for password and usercode and for different purposes, the password entry is to login into the Envisalink while the usercode is for certain commands sent to the DSC Alarm system. Both have the default set in the binding, but if you changed your Envisalink password then you would need to set password to your new password in the config file. Hope this helps.

Thanks @rsstephens ! I just reset the Envisalink 3 module for fun, and rebooted openhab. I checked the TPI link status and it is "Offline - No Client "

So, back to the openahb.cfg:

############################## DSC Alarm Binding #####################################

DSC Alarm interface device type

Valid values are it100 (default for serial connection) or envisalink (default for tcp connection)

dscalarm:deviceType=envisalink

DSC Alarm port name for a serial connection.

Valid values are e.g. COM1 for Windows and /dev/ttyS0 or /dev/ttyUSB0 for Linux.

Leave undefined if not connecting by serial port.

#dscalarm:serialPort=

DSC Alarm baud rate for serial connections.

Valid values are 9600 (default), 19200, 38400, 57600, and 115200.

Leave undefined if using default.

#dscalarm:baud=

DSC Alarm IP address for a TCP connection.

Leave undefined if not connecting by network connection.

dscalarm:ip=192.168.0.131

DSC Alarm TCP port for a TCP connection.

Can be EyezOn Envisalink on 4025 (default) or a TCP serial server to IT-100

Leave undefined if not connecting by network connection.

#dscalarm:tcpPort=4025

DSC Alarm password for logging into the EyezOn Envisalink 3/2DS interface.

Leave undefined if using default.

dscalarm:password=user

DSC Alarm user code for logging certain DSC Alarm commands.

Leave undefined if using default.

#dscalarm:usercode=user

DSC Alarm poll period.

Amount of time elapsed in minutes between poll commands sent to the DSC Alarm.

Valid values are 1-15 (Default = 1).

Leave undefined if using default.

#dscalarm:pollPeriod=

I can log into the invisalink module no problem, with the default user/pass, remotely arm / disarm…

Openhab is running on a RPi base OS Raspbian Jessie

When openhab boots I get:

2016-02-17 12:26:32.602 [DEBUG] [b.d.internal.DSCAlarmActivator] - start(): DSC Alarm binding has been started.

All of the items seem to load, ( please see above post ), followed by:

2016-02-17 12:27:14.764 [DEBUG] [.o.b.d.i.DSCAlarmActiveBinding] - DSC Alarm Binding Activated!
2016-02-17 12:27:14.787 [DEBUG] [.o.b.d.i.DSCAlarmActiveBinding] - updated(): Configuration updated, config true

But it never seems to log into the invisalink 3 module?!?!

I’m stuck, any help would be greatly appreciated.

Looking at your config file, try the following: Leave deviceType, tcpPort, password, and usercode blank. By putting in an IP the binding defaults to the Envisalink at port 4025. The password you have is the default so it is not needed. The usercode is 4 or 6 digit number, depending on how your DSC Alarm is configured. The default usercode is 1234 which is built into the binding.

Hey @rsstephens ! That worked! Removing those entries allowed it to connect! BIG THANKS!!!

Quick and last question. I really appreciate your help,

When arming the alarm, it works great from my sitemap, but disarming does not:

`
2016-02-17 15:03:29.012 [DEBUG] [dscalarm.internal.protocol.API] - sendCommand(): ‘PartitionDisarmControl’ Command Sent - 0401123400EF

2016-02-17 15:03:29.020 [DEBUG] [.d.internal.DSCAlarmItemUpdate] - updateDeviceProperties(): Item Name: PARTITION1_ARM_MODE
2016-02-17 15:03:29.027 [DEBUG] [o.b.d.internal.model.Partition] - updateProperties(): Partition Item Name: PARTITION1_ARM_MODE
2016-02-17 15:03:29.031 [DEBUG] [.d.internal.DSCAlarmItemUpdate] - updateDeviceItem(): Item Name: PARTITION1_ARM_MODE
2016-02-17 15:03:29.038 [DEBUG] [o.b.d.internal.model.Partition] - refreshItem(): Partition Item Name: PARTITION1_ARM_MODE
2016-02-17 15:03:29.062 [DEBUG] [.o.b.d.i.DSCAlarmActiveBinding] - processUpdateMap(): Updated item: PARTITION1_ARM_MODE
2016-02-17 15:03:29.392 [DEBUG] [o.b.d.i.connector.TCPConnector] - read(): Message Received: 50004029
2016-02-17 15:03:29.400 [DEBUG] [d.internal.protocol.APIMessage] - parseAPIMessage(): Message Received (500040) - Code: 500, Name: Command Acknowledge, Description: 500: A command has been received successfully., Data: 040
2016-02-17 15:03:29.409 [DEBUG] [o.b.d.i.connector.TCPConnector] - handleIncomingMessage(): Message recieved: 50004029 - Code: “500”, Name: “Command Acknowledge”, Description: “500: A command has been received successfully.”, Data: 040
2016-02-17 15:03:29.420 [DEBUG] [.io.net.http.SecureHttpContext] - security is disabled - processing aborted!
2016-02-17 15:03:29.421 [DEBUG] [.o.b.d.i.DSCAlarmActiveBinding] - setTimeStampState(): Time Stamp:
2016-02-17 15:03:29.430 [DEBUG] [.o.u.w.i.servlet.WebAppServlet] - Servlet request received!
2016-02-17 15:03:29.445 [DEBUG] [.o.u.w.i.servlet.WebAppServlet] - reading sitemap home
2016-02-17 15:03:29.454 [DEBUG] [.d.internal.DSCAlarmItemUpdate] - updateDeviceProperties(): Item Name: PANEL_TIME_STAMP
2016-02-17 15:03:29.478 [DEBUG] [.o.b.d.i.DSCAlarmActiveBinding] - setTimeStampState(): Already Set!
2016-02-17 15:03:29.487 [DEBUG] [.d.internal.DSCAlarmItemUpdate] - updateDeviceItem(): Item Name: PANEL_MESSAGE
2016-02-17 15:03:29.495 [DEBUG] [.d.internal.DSCAlarmItemUpdate] - updateDeviceProperties(): Item Name: PANEL_MESSAGE
2016-02-17 15:03:29.502 [DEBUG] [.dscalarm.internal.model.Panel] - updateProperties(): Panel Item Name: PANEL_MESSAGE
2016-02-17 15:03:29.514 [DEBUG] [.dscalarm.internal.model.Panel] - refreshItem(): Panel Item Name: PANEL_MESSAGE
2016-02-17 15:03:29.538 [DEBUG] [.o.b.d.i.DSCAlarmActiveBinding] - dscAlarmEventRecieved(): Event received! Looking for item: null
2016-02-17 15:03:29.892 [DEBUG] [o.b.d.i.connector.TCPConnector] - read(): Message Received: 6701CE
2016-02-17 15:03:29.900 [DEBUG] [d.internal.protocol.APIMessage] - parseAPIMessage(): Message Received (6701) - Code: 670, Name: Invalid Access Code, Description: 670: An access code that was entered was invalid., Data: 1
2016-02-17 15:03:29.907 [DEBUG] [o.b.d.i.connector.TCPConnector] - handleIncomingMessage(): Message recieved: 6701CE - Code: “670”, Name: “Invalid Access Code”, Description: “670: An access code that was entered was invalid.”, Partition: 1, Data: 1
2016-02-17 15:03:29.915 [DEBUG] [.o.b.d.i.DSCAlarmActiveBinding] - setTimeStampState(): Time Stamp:
2016-02-17 15:03:29.927 [DEBUG] [.d.internal.DSCAlarmItemUpdate] - updateDeviceProperties(): Item Name: PANEL_TIME_STAMP
2016-02-17 15:03:29.935 [DEBUG] [.o.b.d.i.DSCAlarmActiveBinding] - setTimeStampState(): Already Set!
2016-02-17 15:03:29.949 [DEBUG] [.d.internal.DSCAlarmItemUpdate] - updateDeviceItem(): Item Name: PANEL_MESSAGE
2016-02-17 15:03:29.956 [DEBUG] [.d.internal.DSCAlarmItemUpdate] - updateDeviceProperties(): Item Name: PANEL_MESSAGE
2016-02-17 15:03:29.969 [DEBUG] [.dscalarm.internal.model.Panel] - updateProperties(): Panel Item Name: PANEL_MESSAGE
2016-02-17 15:03:29.979 [DEBUG] [.dscalarm.internal.model.Panel] - refreshItem(): Panel Item Name: PANEL_MESSAGE

2016-02-17 15:12:04.537 [DEBUG] [.o.b.d.i.DSCAlarmActiveBinding] - dscAlarmEventRecieved(): Event received! Looking for item: null
2016-02-17 15:12:05.443 [DEBUG] [o.b.d.i.connector.TCPConnector] - read(): Message Received: 6701CE
2016-02-17 15:12:05.456 [DEBUG] [d.internal.protocol.APIMessage] - parseAPIMessage(): Message Received (6701) - Code: 670, Name: Invalid Access Code, Description: 670: An access code that was entered was invalid., Data: 1
2016-02-17 15:12:05.465 [DEBUG] [o.b.d.i.connector.TCPConnector] - handleIncomingMessage(): Message recieved: 6701CE - Code: “670”, Name: “Invalid Access Code”, Description: “670: An access code that was entered was invalid.”, Partition: 1, Data: 1

I’m assuming i need a code inserted in here somewhere, and just checked the Wiki but couldn’t find a reference to it sorry… :frowning:

Got it! A quick re read of the .cfg / reboot fixed everything! Thanks again very much!

Hello @shep,

Glad to hear it is working. :smile: