private void updateLedStatus() { if (mSerialDevice != null && mHanDeviceLinkedList.size() > 0) { HanDevice hd = mHanDeviceLinkedList.get(2); if (hd.getOnOff() == true) mTextViewLedOnOff.setText(R.string.led_is_on); else mTextViewLedOnOff.setText(R.string.led_is_off); } }
public void buttonResetHandler(View target) { for (int i = 0; i < mHanDeviceLinkedList.size(); i++) { HanDevice hd = mHanDeviceLinkedList.get(i); hd.resetCnt(); mHanDeviceLinkedList.set(i, hd); } updateHanDeviceTable(); }
public void buttonAcOutletOffHandler(View target) { if (mSerialIoManager != null) { HanDevice hd = mHanDeviceLinkedList.get(2); hd.setWaitOnOff(false); mHanDeviceLinkedList.set(2, hd); sendPacket(RawData.CMBS_EV_DSR_HAN_MSG_RECV_AC_OUTLET_OFF); } }
private void updateHanDeviceTable() { removeHanDeviceTable(); if (mSerialDevice != null && mHanDeviceLinkedList.size() > 0) { for (int i = 0; i < mHanDeviceLinkedList.size(); i++) { HanDevice hd = mHanDeviceLinkedList.get(i); TableRow row = new TableRow(this); TextView tv1 = new TextView(this); tv1.setText("#" + hd.getDeviceId()); TextView tv2 = new TextView(this); if (hd.getUnitType() == UnitType.SMOKE_SENSOR) { tv2.setText("Smoke (0x" + Integer.toHexString(UnitType.SMOKE_SENSOR.getUnitType()) + ")"); } else if (hd.getUnitType() == UnitType.MOTION_SENSOR) { tv2.setText( "Motion (0x" + Integer.toHexString(UnitType.MOTION_SENSOR.getUnitType()) + ")"); } else if (hd.getUnitType() == UnitType.AC_OUTLET) { tv2.setText( "AC Outlet (0x" + Integer.toHexString(UnitType.AC_OUTLET.getUnitType()) + ")"); } TextView tvKeepAlive = new TextView(this); tvKeepAlive.setText(Integer.toString(hd.getKeepAliveCnt())); TextView tvAlert = new TextView(this); tvAlert.setText(Integer.toString(hd.getAlertCnt())); TextView tvTamper = new TextView(this); tvTamper.setText(Integer.toString(hd.getTamperCnt())); row.addView(tv1); row.addView(tv2); row.addView(tvKeepAlive); row.addView(tvAlert); row.addView(tvTamper); mScrollViewHanDeviceTableLayout.addView(row); } mTextViewHanConnectedDeviceAns.setText(Integer.toString(mHanDeviceLinkedList.size())); } }
private void updateReceivedData(byte[] data) { // final String message = "Read " + data.length + " bytes: " + HexDump.dumpHexString(data); // Debug.d(TAG, message); // mDumpTextView.append(message); // mScrollView.smoothScrollTo(0, mDumpTextView.getBottom()); if (Arrays.equals(data, RawData.CMBS_CMD_HELLO_RPLY)) mState = State.CMBS_CMD_HELLO_RPLY; else if (Arrays.equals(data, RawData.CMBS_CMD_HELLO_RPLY2)) mState = State.CMBS_CMD_HELLO_RPLY; else if (Arrays.equals(data, RawData.CMBS_EV_DSR_SYS_START_RES)) mState = State.CMBS_EV_DSR_SYS_START_RES; else if (Arrays.equals(data, RawData.CMBS_EV_DSR_HAN_MNGR_INIT_RES)) mState = State.CMBS_EV_DSR_HAN_MNGR_INIT_RES; else if (Arrays.equals(data, RawData.CMBS_EV_DSR_HAN_MNGR_START_RES)) mState = State.CMBS_EV_DSR_HAN_MNGR_START_RES; else if (Arrays.equals(data, RawData.CMBS_EV_DSR_PARAM_AREA_SET_RES)) mState = State.CMBS_EV_DSR_PARAM_AREA_SET_RES; else if (Arrays.equals(data, RawData.CMBS_EV_DSR_HAN_MSG_RECV_REGISTER_RES)) mState = State.CMBS_EV_DSR_HAN_MSG_RECV_REGISTER_RES; else if (Arrays.equals(data, RawData.CMBS_EV_DSR_HAN_MSG_RECV_SMOKE_TAMPER)) { Debug.d(TAG, "Smoke TAMPER!!!"); HanDevice hd = mHanDeviceLinkedList.get(0); hd.incTamperCnt(); mHanDeviceLinkedList.set(0, hd); mState = State.IDLE; boolean enableSms = mPerf.getBoolean("enable_sms", false); if (enableSms == true) sendSMS("Smoke Tamper"); } else if (Arrays.equals(data, RawData.CMBS_EV_DSR_HAN_MSG_RECV_SMOKE_ALERT)) { Debug.d(TAG, "Smoke ALERT!!!"); HanDevice hd = mHanDeviceLinkedList.get(0); hd.incAlertCnt(); mHanDeviceLinkedList.set(0, hd); mState = State.IDLE; boolean enableSms = mPerf.getBoolean("enable_sms", false); if (enableSms == true) sendSMS("Smoke Alert"); } else if (Arrays.equals(data, RawData.CMBS_EV_DSR_HAN_MSG_RECV_MOTION_TAMPER)) { Debug.d(TAG, "Motion TAMPER!!!"); HanDevice hd = mHanDeviceLinkedList.get(1); hd.incTamperCnt(); mHanDeviceLinkedList.set(1, hd); mState = State.IDLE; boolean enableSms = mPerf.getBoolean("enable_sms", false); if (enableSms == true) sendSMS("Motion Tamper"); } else if (Arrays.equals(data, RawData.CMBS_EV_DSR_HAN_MSG_RECV_AC_OUTLET_KEEP_ALIVE)) { Debug.d(TAG, "AC Outlet KEEP ALIVE!!!"); HanDevice hd = mHanDeviceLinkedList.get(2); hd.incKeepAliveCnt(); mHanDeviceLinkedList.set(2, hd); mState = State.IDLE; } else if (Arrays.equals(data, RawData.CMBS_EV_DSR_HAN_MSG_RECV_AC_OUTLET_ON_OFF_ACK)) { HanDevice hd = mHanDeviceLinkedList.get(2); Debug.d( TAG, "AC Outlet ON/OFF ACK!!! original=" + hd.getOnOff() + " new=" + hd.getWaitOnOff()); hd.setOnOff(hd.getWaitOnOff()); mHanDeviceLinkedList.set(2, hd); updateLedStatus(); mState = State.IDLE; } else mState = State.IDLE; StateMachine(); updateHanDeviceTable(); }