ソースを参照

아이콘 정리, 에어컨 제어 속도 개선, 환경설정 정리, 난방 보일러 수정, 원격검침 수정,

jslee(madeinlab) 3 年 前
コミット
7a328f567d
22 ファイル変更463 行追加460 行削除
  1. BIN
      WallPadAPI/jar/WallPadAPI.jar
  2. BIN
      WallPadAPI/jar/WallPadAPIforSVC.jar
  3. 3 23
      WallPadAPI/src/main/java/com/artncore/commons/DataClasses.java
  4. 20 7
      WallPadAddService/src/main/java/kr/co/icontrols/wallpadaddservice/MainActivity.java
  5. 1 1
      WallPadConfig/src/main/AndroidManifest.xml
  6. 4 1
      WallPadConfig/src/main/java/kr/co/icontrols/wallpadconfig/MainActivity.java
  7. 87 58
      WallPadConfig/src/main/java/kr/co/icontrols/wallpadconfig/screen/ConfigSettingMainScreen.java
  8. BIN
      WallPadDevService/libs/WallPadAPIforSVC.jar
  9. 11 2
      WallPadDevService/src/main/java/com/artncore/wallpaddevservice/driver/HeatingV2_Controller.java
  10. 256 291
      WallPadDevService/src/main/java/com/artncore/wallpaddevservice/driver/Knx_SystemAircon_Controller.java
  11. 12 12
      WallPadEnergyCtrl/src/main/java/kr/co/icontrols/wallpadenergyctrl/screen/VIPIcEnergyMgrScreen.java
  12. BIN
      WallPadHomeCtrl/libs/WallPadAPI.jar
  13. BIN
      WallPadHomeCtrl/libs/WallPadSupport.jar
  14. 9 36
      WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/MainActivity.java
  15. 24 0
      WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/data/HeatingBoilerData.java
  16. 4 4
      WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/screen/screen_multi/HeatingV2PopupBoilerTestScreen.java
  17. 1 1
      WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/screen/screen_multi/HeatingV2PopupTestScreen.java
  18. 2 2
      WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/screen/screen_multi/KnxSystemAirconMainTestScreen.java
  19. 1 1
      WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/screen/screen_multi/KnxSystemAirconPopupTestScreen.java
  20. 15 8
      WallPadMain/src/main/java/kr/co/icontrols/wallpadmain/util/IconManager.java
  21. BIN
      WallPadMultiControlService/libs/WallPadAPI.jar
  22. 13 13
      WallPadMultiControlService/src/main/java/kr/co/icontrols/wallpadmulticontrolservice/DataSenderService.java

BIN
WallPadAPI/jar/WallPadAPI.jar


BIN
WallPadAPI/jar/WallPadAPIforSVC.jar


+ 3 - 23
WallPadAPI/src/main/java/com/artncore/commons/DataClasses.java

@@ -5951,33 +5951,13 @@ public class DataClasses {
         public static class AllRoomData
         {
             public byte RoomCount;
-            public EachRoomData [] Room;
+            public AirData [] Room;
 
             public AllRoomData(byte nRoomCount)
             {
                 RoomCount = nRoomCount;
-                Room = new EachRoomData[RoomCount];
-                for(byte i=0 ; i<RoomCount ; i++) Room[i] = new EachRoomData();
-            }
-
-            public class EachRoomData
-            {
-                /** 운전모드 {@link MODE} 값에 따름 */
-                public byte Mode;
-                /** 풍량 {@link VOLUME} 값에 따름 */
-                public byte Volume;
-                /** onoff {@link MODE} 값에 따름 */
-                public byte OnOff;
-                /** 설정온도 ( 0.5도 혹은 1도 단위) */
-                public double SetTemp;
-
-                public EachRoomData()
-                {
-                    Mode = MODE.Auto;
-                    Volume = VOLUME.Auto;
-                    OnOff = ONOFF.NoInfo;
-                    SetTemp = 0;
-                }
+                Room = new AirData[RoomCount];
+                for(byte i=0 ; i<RoomCount ; i++) Room[i] = new AirData();
             }
 
             /** 디버깅 메시지 출력 */

+ 20 - 7
WallPadAddService/src/main/java/kr/co/icontrols/wallpadaddservice/MainActivity.java

@@ -286,6 +286,9 @@ public class MainActivity extends WpadActivity {
 
         WallpadDeviceSet wallpadDeviceSet = new WallpadDeviceSet(mContext);
         int noiseUse = wallpadDeviceSet.Get_NoiseSensor_Use();
+        int nNoticeEnable = wallpadDeviceSet.GetDeviceSetted("공지사항");   // 공지사항
+        int nEframeEnable = wallpadDeviceSet.GetDeviceSetted("전자액자");   // 전자액자
+        int nMemoEnable = wallpadDeviceSet.GetDeviceSetted("메모");   // 전자액자
         int cctvUse = wallpadDeviceSet.GetDeviceSetted("CCTV");
         int parkingUse = wallpadDeviceSet.GetDeviceSetted("주차확인");
         int carGuestUse = wallpadDeviceSet.GetDeviceSetted("방문객차량등록");
@@ -307,14 +310,24 @@ public class MainActivity extends WpadActivity {
 
         if (bNonInternetUse) {
             // 인터넷 미지원
-            mChildList.add(API_Menu.SubMenuAddService.Notice);
-            mChildList.add(API_Menu.SubMenuAddService.Memo);
+            if (nNoticeEnable == WallpadDeviceSet.DEV_DATA_ENABLE) {
+                mChildList.add(API_Menu.SubMenuAddService.Notice);
+            }
+            if (nMemoEnable == WallpadDeviceSet.DEV_DATA_ENABLE) {
+                mChildList.add(API_Menu.SubMenuAddService.Memo);
+            }
         } else {
             // 인터넷 지원
-            mChildList.add(API_Menu.SubMenuAddService.Notice);
+            if (nNoticeEnable == WallpadDeviceSet.DEV_DATA_ENABLE) {
+                mChildList.add(API_Menu.SubMenuAddService.Notice);
+            }
             mChildList.add(API_Menu.SubMenuAddService.Weather);
-            mChildList.add(API_Menu.SubMenuAddService.Memo);
-            mChildList.add(API_Menu.SubMenuAddService.AutoPicture);
+            if (nMemoEnable == WallpadDeviceSet.DEV_DATA_ENABLE) {
+                mChildList.add(API_Menu.SubMenuAddService.Memo);
+            }
+            if (nEframeEnable == WallpadDeviceSet.DEV_DATA_ENABLE) {
+                mChildList.add(API_Menu.SubMenuAddService.AutoPicture);
+            }
             mChildList.add(API_Menu.SubMenuAddService.Schedule);
 
             if (cctvUse == WallpadDeviceSet.DEV_DATA_ENABLE) {
@@ -324,8 +337,8 @@ public class MainActivity extends WpadActivity {
             if (parkingUse == WallpadDeviceSet.DEV_DATA_ENABLE) {
                 mChildList.add(API_Menu.SubMenuAddService.Parking);
             }
-
-            mChildList.add(API_Menu.SubMenuAddService.ParkingList);
+            //차량 출입 내역 제거
+            //mChildList.add(API_Menu.SubMenuAddService.ParkingList);
 
             if (noiseUse == 1) {
                 mChildList.add(API_Menu.SubMenuAddService.InterlayerNoiseHistory);

+ 1 - 1
WallPadConfig/src/main/AndroidManifest.xml

@@ -1,7 +1,7 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="kr.co.icontrols.wallpadconfig"
     android:versionCode="01"
-    android:versionName="2021.08.09.01">
+    android:versionName="2022.01.18.01">
 
     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
     <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

+ 4 - 1
WallPadConfig/src/main/java/kr/co/icontrols/wallpadconfig/MainActivity.java

@@ -350,7 +350,10 @@ public class MainActivity extends WpadActivity
         Log.w(TAG, "[Create] DcamSetting = " + DcamSetting);
         if ((DcamSetting == WallpadDeviceSet.DOORTYPE_SMARTKEY) || (DcamSetting == WallpadDeviceSet.DOORTYPE_SMARTKEY_EXTERNAL) || (DcamSetting == WallpadDeviceSet.DOORTYPE_IOT_SMART) ) {
             if (naKeyType[1] == WallpadDeviceSet.BLESMARTKEY_BAND) mChildList.add(API_Menu.SubMenuConfig.SmartBand);
-            else mChildList.add(API_Menu.SubMenuConfig.SmartKey);
+            else {
+                //mChildList.add(API_Menu.SubMenuConfig.SmartKey);
+                Log.w(TAG, "[Create] Smart IoT Doorcam suppots only Smartband(BLE)!!");
+            }
         }
         else if (DcamSetting == WallpadDeviceSet.DOORTYPE_RFCAM) {
             mChildList.add(API_Menu.SubMenuConfig.RfCard);

+ 87 - 58
WallPadConfig/src/main/java/kr/co/icontrols/wallpadconfig/screen/ConfigSettingMainScreen.java

@@ -283,6 +283,13 @@ public class ConfigSettingMainScreen extends WpadScreen {
 	public int m_ToTalPage = 0;
 	private int nDistributionPanelType = Version.DISTRIBUTION_MODEL.NON_USE;
 	private boolean bBathSensorUse = false;
+	private boolean bRoomNameEditV2Usage = false;
+
+	private boolean isSubWallPad = false;               //subwallPad 사용 여부 (TRUE : 사용 , FASLE : 사용안함)
+	boolean internetUse = false;
+	boolean mNewDanjiServer =  false;
+	int nLightType = WallpadDeviceSet.REMOTECTRL_BASIC_LIGHT;
+	boolean easyModeUse = false;
 
 	private void initInfo() {
 		try {
@@ -297,10 +304,17 @@ public class ConfigSettingMainScreen extends WpadScreen {
 			int noiseUse = wpddevset.Get_NoiseSensor_Use();
 			nDistributionPanelType = wpddevset.Get_DistributionPannelType_Info();
 			bBathSensorUse = wpddevset.Get_BathSensorUse();
-			Log.i(TAG, "[initInfo] bBathSensorUse [" + bBathSensorUse + "]");
+			bRoomNameEditV2Usage = wpddevset.Get_RoomNameEditUse();
+			isSubWallPad = wpddevset.GetSubWpdUse();   // 월패드 종류 (TRUE: Sub / FALSE: Main)
+			internetUse = wpddevset.Get_NonInternetSupportUse();
+			mNewDanjiServer =  wpddevset.GetNewDanjiServer();
+			nLightType = wpddevset.Get_RemoteCtrl_LightType();
+			easyModeUse = wpddevset.Get_EasyModeUX_Support();
+
 			//String[] getData = null;
 			//getData = wpddevset.GetSettingData("site_code");
 			wpddevset.closeDB();
+			Log.i(TAG, "[initInfo] bBathSensorUse [" + bBathSensorUse + "], bRoomNameEditV2Usage [" + bRoomNameEditV2Usage + "]");
 
 			/*String SiteCode = "";
 			if(getData.length == 2)
@@ -348,12 +362,18 @@ public class ConfigSettingMainScreen extends WpadScreen {
 			SettingData.add(data);
 			setting_manual_str += "SLEEP_TIME:" + SettingData.size() + "/";
 
-			data = new SetKind( TYPE_CHECKBOX , ConfingSettingMainID.button.ALARM_SOUND_CHECKBOX_USE , ConfingSettingMainID.button.ALARM_SOUND_CHECKBOX_NOTUSE , TXT_ALARM_SOUND );
-			SettingData.add(data);
-			setting_manual_str += "NOTI_SOUND:" + SettingData.size() + "/";
-			data = new SetKind(TYPE_CHECKBOX , ConfingSettingMainID.button.CAR_SOUND_CHECKBOX_USE , ConfingSettingMainID.button.CAR_SOUND_CHECKBOX_NOTUSE , TXT_CAR_SOUND);
-			SettingData.add(data);
-			setting_manual_str += "CAR_ARRIVAL_SND:" + SettingData.size() + "/";
+			if(!isSubWallPad)
+			{
+				data = new SetKind( TYPE_CHECKBOX , ConfingSettingMainID.button.ALARM_SOUND_CHECKBOX_USE , ConfingSettingMainID.button.ALARM_SOUND_CHECKBOX_NOTUSE , TXT_ALARM_SOUND );
+				SettingData.add(data);
+				setting_manual_str += "NOTI_SOUND:" + SettingData.size() + "/";
+
+				data = new SetKind(TYPE_CHECKBOX , ConfingSettingMainID.button.CAR_SOUND_CHECKBOX_USE , ConfingSettingMainID.button.CAR_SOUND_CHECKBOX_NOTUSE , TXT_CAR_SOUND);
+				SettingData.add(data);
+				setting_manual_str += "CAR_ARRIVAL_SND:" + SettingData.size() + "/";
+			}
+
+
 
 			if (MainActivity.bRemoteCallUse) {
 				data = new SetKind(TYPE_CHECKBOX, ConfingSettingMainID.button.CALL_SOUND_CHECKBOX_USE, ConfingSettingMainID.button.CALL_SOUND_CHECKBOX_NOTUSE, TXT_CALL_SOUND);
@@ -394,59 +414,71 @@ public class ConfigSettingMainScreen extends WpadScreen {
 					setting_manual_str += "NOISE_USE:" + SettingData.size() + "/";
 				}
 
-				data = new SetKind( TYPE_BUTTON , ConfingSettingMainID.button.AS_CALL , 0 , TXT_AS_CALL );
-				SettingData.add(data);
-				setting_manual_str += "AS_REGI:" + SettingData.size() + "/";
+				if(!isSubWallPad)
+				{
+					//data = new SetKind( TYPE_BUTTON , ConfingSettingMainID.button.AS_CALL , 0 , TXT_AS_CALL );
+					//SettingData.add(data);
+				}
+				//setting_manual_str += "AS_REGI:" + SettingData.size() + "/";
 
-				if (Version.getModelType() != Version.MODEL_TYPE.IHN_750) {
+				if (Version.getModelType() != Version.MODEL_TYPE.IHN_750 && !bRoomNameEditV2Usage && !isSubWallPad) {
 					data = new SetKind( TYPE_BUTTON , ConfingSettingMainID.button.NAME_SET , 0 , TXT_ROOM_NAME );
 					SettingData.add(data);
 					setting_manual_str += "ROOMNAME_SET:" + SettingData.size() + "/";
 				}
 
-				WallpadDeviceSet wds = new WallpadDeviceSet(getContext());
-				boolean internetUse = wds.Get_NonInternetSupportUse();
-				boolean mNewDanjiServer =  wds.GetNewDanjiServer();
-				wds.closeDB();
-
-				if (!internetUse) {
-					data = new SetKind(TYPE_CHECKBOX , ConfingSettingMainID.button.REMOTE_CONTROL_CHECKBOX_USE , ConfingSettingMainID.button.REMOTE_CONTROL_CHECKBOX_NOTUSE , TXT_RMOTE_CONTROL );
-					SettingData.add(data);
-					setting_manual_str += "REMOTE_CTR:" + SettingData.size() + "/";
+				if (!internetUse && !isSubWallPad) {
+					//data = new SetKind(TYPE_CHECKBOX , ConfingSettingMainID.button.REMOTE_CONTROL_CHECKBOX_USE , ConfingSettingMainID.button.REMOTE_CONTROL_CHECKBOX_NOTUSE , TXT_RMOTE_CONTROL );
+					//SettingData.add(data);
+					//setting_manual_str += "REMOTE_CTR:" + SettingData.size() + "/";
 
 					if (mNewDanjiServer) {
-						data = new SetKind( TYPE_BUTTON_WEBPWD , ConfingSettingMainID.button.WEB_CTR_PWD , 0 , TXT_WEB_CTR_PWD );
-						SettingData.add(data);
-						setting_manual_str += "WEB_CTR_PWD:" + SettingData.size() + "/";
+						//data = new SetKind( TYPE_BUTTON_WEBPWD , ConfingSettingMainID.button.WEB_CTR_PWD , 0 , TXT_WEB_CTR_PWD );
+						//SettingData.add(data);
+						//setting_manual_str += "WEB_CTR_PWD:" + SettingData.size() + "/";
 					}
 				}
 			}
+			else
+			{
+				if(!isSubWallPad)
+				{
+					//data = new SetKind( TYPE_BUTTON , ConfingSettingMainID.button.AS_CALL , 0 , TXT_AS_CALL );
+					//SettingData.add(data);
+					//setting_manual_str += "AS_REGI:" + SettingData.size() + "/";
+				}
 
+				if (!internetUse && !isSubWallPad) {
+					//data = new SetKind(TYPE_CHECKBOX, ConfingSettingMainID.button.REMOTE_CONTROL_CHECKBOX_USE, ConfingSettingMainID.button.REMOTE_CONTROL_CHECKBOX_NOTUSE, TXT_RMOTE_CONTROL);
+					//SettingData.add(data);
+					//setting_manual_str += "REMOTE_CTR:" + SettingData.size() + "/";
+
+					//data = new SetKind(TYPE_BUTTON_WEBPWD, ConfingSettingMainID.button.WEB_CTR_PWD, 0, TXT_WEB_CTR_PWD);
+					//SettingData.add(data);
+					//setting_manual_str += "WEB_CTR_PWD:" + SettingData.size() + "/";
+				}
+			}
 			if ((Version.getModelType() == Version.MODEL_TYPE.IHN_D101 || Version.getModelType() == Version.MODEL_TYPE.IHN_D101_I || Version.getModelType() == Version.MODEL_TYPE.IHN_D101_I_LX2
 					|| Version.getModelType() == Version.MODEL_TYPE.IHN_D101K || Version.getModelType() == Version.MODEL_TYPE.IHN_D101K_I
 					|| Version.getModelType() == Version.MODEL_TYPE.IHN_D101_I_OCF)
 					&& (nDistributionPanelType == Version.DISTRIBUTION_MODEL.SMART_DIST))
 			{
-				WallpadDeviceSet wds = new WallpadDeviceSet(getContext());
-				boolean internetUse = wds.Get_NonInternetSupportUse();
-				int nLightType = WallpadDeviceSet.REMOTECTRL_BASIC_LIGHT;
-				nLightType = wds.Get_RemoteCtrl_LightType();
-				wds.closeDB();
 
-				if (!internetUse) {
-					data = new SetKind(TYPE_CHECKBOX , ConfingSettingMainID.button.REMOTE_CONTROL_CHECKBOX_USE , ConfingSettingMainID.button.REMOTE_CONTROL_CHECKBOX_NOTUSE , TXT_RMOTE_CONTROL);
-					SettingData.add(data);
-					setting_manual_str += "REMOTE_CTR:" + SettingData.size() + "/";
 
-					data = new SetKind(TYPE_BUTTON_WEBPWD , ConfingSettingMainID.button.WEB_CTR_PWD , 0 , TXT_WEB_CTR_PWD);
-					SettingData.add(data);
-					setting_manual_str += "WEB_CTR_PWD:" + SettingData.size() + "/";
+				if (!internetUse) {
+//					data = new SetKind(TYPE_CHECKBOX , ConfingSettingMainID.button.REMOTE_CONTROL_CHECKBOX_USE , ConfingSettingMainID.button.REMOTE_CONTROL_CHECKBOX_NOTUSE , TXT_RMOTE_CONTROL);
+//					SettingData.add(data);
+//					setting_manual_str += "REMOTE_CTR:" + SettingData.size() + "/";
+//
+//					data = new SetKind(TYPE_BUTTON_WEBPWD , ConfingSettingMainID.button.WEB_CTR_PWD , 0 , TXT_WEB_CTR_PWD);
+//					SettingData.add(data);
+//					setting_manual_str += "WEB_CTR_PWD:" + SettingData.size() + "/";
 
 					if (nLightType == WallpadDeviceSet.REMOTECTRL_USER_SELECT) {
 						// 스마트조명 지원여부가 사용자선택인 경우
-						data = new SetKind(TYPE_CHECKBOX_SMARTLIGHT , ConfingSettingMainID.button.REMOTE_CONTROL_LIGHT_CHECKBOX_SMART, ConfingSettingMainID.button.REMOTE_CONTROL_LIGHT_CHECKBOX_NORMAL, TXT_RMOTE_SMARTLIGHT_CONTROL);
-						SettingData.add(data);
-						setting_manual_str += "REMOTE_CTR_SMARTLIGHT:" + SettingData.size() + "/";
+						//data = new SetKind(TYPE_CHECKBOX_SMARTLIGHT , ConfingSettingMainID.button.REMOTE_CONTROL_LIGHT_CHECKBOX_SMART, ConfingSettingMainID.button.REMOTE_CONTROL_LIGHT_CHECKBOX_NORMAL, TXT_RMOTE_SMARTLIGHT_CONTROL);
+						//SettingData.add(data);
+						//setting_manual_str += "REMOTE_CTR_SMARTLIGHT:" + SettingData.size() + "/";
 					}
 				}
 
@@ -456,10 +488,6 @@ public class ConfigSettingMainScreen extends WpadScreen {
 				setting_manual_str += "SMARTLIGHT_APP:" + SettingData.size() + "/";
 			}
 
-			WallpadDeviceSet wds = new WallpadDeviceSet(getContext());
-			boolean easyModeUse = wds.Get_EasyModeUX_Support();
-			wds.closeDB();
-
 			if (easyModeUse) {
 				data = new SetKind(TYPE_CHECKBOX, ConfingSettingMainID.button.EASYMODE_CHECKBOX_USE, ConfingSettingMainID.button.EASYMODE_CHECKBOX_NOTUSE, TXT_EASYMODE);
 				SettingData.add(data);
@@ -876,17 +904,17 @@ public class ConfigSettingMainScreen extends WpadScreen {
 			}
 
 			//page 버튼 disable
-			if (page == m_ToTalPage) {
-				Btn_NextPage.setButtonEventOffEnable(R.drawable.add_notice_btn_down_disable);
-				Btn_PrevPage.setButtonEventOffDisable();
-			}
-			else if (page == 1) {
-				Btn_PrevPage.setButtonEventOffEnable(R.drawable.add_notice_btn_up_disable);
-				Btn_NextPage.setButtonEventOffDisable();
-			}
-			else if (page > 1 && page < m_ToTalPage) {
-				Btn_PrevPage.setButtonEventOffDisable();
-				Btn_NextPage.setButtonEventOffDisable();
+			if (SettingData.size() > 6) {
+				if (page == m_ToTalPage) {
+					Btn_NextPage.setButtonEventOffEnable(R.drawable.add_notice_btn_down_disable);
+					Btn_PrevPage.setButtonEventOffDisable();
+				} else if (page == 1) {
+					Btn_PrevPage.setButtonEventOffEnable(R.drawable.add_notice_btn_up_disable);
+					Btn_NextPage.setButtonEventOffDisable();
+				} else if (page > 1 && page < m_ToTalPage) {
+					Btn_PrevPage.setButtonEventOffDisable();
+					Btn_NextPage.setButtonEventOffDisable();
+				}
 			}
 		} catch (RuntimeException re) {
             LogUtil.errorLogInfo("", TAG, re);
@@ -1183,11 +1211,12 @@ public class ConfigSettingMainScreen extends WpadScreen {
 					LogUtil.errorLogInfo("", TAG,ex);
 				}
 
-				SetKind data = new SetKind(TYPE_BUTTON , ConfingSettingMainID.button.AS_CALL , 0 , TXT_AS_CALL );
-				SettingData.add(data);
-				setting_manual_str += "AS_REGI:" + SettingData.size() + "/";
+//				SetKind data = new SetKind(TYPE_BUTTON , ConfingSettingMainID.button.AS_CALL , 0 , TXT_AS_CALL );
+//				SettingData.add(data);
+//				setting_manual_str += "AS_REGI:" + SettingData.size() + "/";
 
-				if (Version.getModelType() != Version.MODEL_TYPE.IHN_750 ) {
+				SetKind data;
+				if (Version.getModelType() != Version.MODEL_TYPE.IHN_750 && bRoomNameEditV2Usage && !isSubWallPad) {
 					data = new SetKind( TYPE_BUTTON , ConfingSettingMainID.button.NAME_SET , 0 , TXT_ROOM_NAME );
 					SettingData.add(data);
 					setting_manual_str += "ROOMNAME_SET:" + SettingData.size() + "/";
@@ -1760,7 +1789,7 @@ public class ConfigSettingMainScreen extends WpadScreen {
 			wd.SetWallPadMasterVolume(mVolumeLevel);
 			wd.closeDB();
 
-			Sound().PlayMent(SND.bell.FRONT);
+			//Sound().PlayMent(SND.bell.FRONT);
 
 			//Log.i(TAG, "Change : " + smartKeyRfDoorAPI.SetSensorConfig((byte)mVolumeLevel, (byte)(mVolumeLevel*2) ) );
 			//Log.i(TAG, "Setting : " + smartKeyRfDoorAPI.SetSensorConfig((byte)0xFF, (byte)0xFF) );

BIN
WallPadDevService/libs/WallPadAPIforSVC.jar


+ 11 - 2
WallPadDevService/src/main/java/com/artncore/wallpaddevservice/driver/HeatingV2_Controller.java

@@ -2977,7 +2977,9 @@ public class HeatingV2_Controller extends DeviceManager {
         	Log.i(TAG, "[UpdateVariables - room] - change true #3");
         	bChanged = true;
         }
-        if(DriverRoomData.NowTemp != roomData.NowTemp)
+        //if(DriverRoomData.NowTemp != roomData.NowTemp)
+        // 0.1도만 차이나면 BR 전송. 너무 BR이 잦아서 조정함. 두 값의 차이가 0.3도 이상일때만 전송.
+        if(Math.abs(DriverRoomData.NowTemp - roomData.NowTemp)>=0.3)
         {
         	Log.i(TAG, "[UpdateVariables - room] - change true #4");
         	bChanged = true;
@@ -3109,7 +3111,14 @@ public class HeatingV2_Controller extends DeviceManager {
                 bChanged = true;
                 bRoomChangedCheck = true;
             }
-            if(mDriver.Device.Room[i].NowTemp != allRoomData.Room[i].NowTemp)
+            //if(mDriver.Device.Room[i].NowTemp != allRoomData.Room[i].NowTemp)
+            //{
+            //    mDriver.Device.Room[i].NowTemp = allRoomData.Room[i].NowTemp;
+            //    bChanged = true;
+            //    bRoomChangedCheck = true;
+            //}
+            // 0.1도만 차이나면 BR 전송. 너무 BR이 잦아서 조정함. 두 값의 차이가 0.3도 이상일때만 전송.
+            if(Math.abs(mDriver.Device.Room[i].NowTemp - allRoomData.Room[i].NowTemp)>=0.3)
             {
                 mDriver.Device.Room[i].NowTemp = allRoomData.Room[i].NowTemp;
                 bChanged = true;

ファイルの差分が大きいため隠しています
+ 256 - 291
WallPadDevService/src/main/java/com/artncore/wallpaddevservice/driver/Knx_SystemAircon_Controller.java


+ 12 - 12
WallPadEnergyCtrl/src/main/java/kr/co/icontrols/wallpadenergyctrl/screen/VIPIcEnergyMgrScreen.java

@@ -2933,28 +2933,28 @@ public class VIPIcEnergyMgrScreen extends WpadScreen {
                     if (getLayout() != null) getLayout().addView(drawRect[1]);
                     if (getLayout() != null) getLayout().addView(drawRect[2]);
 
-                    //태양광
+                    //연료전지
                     if (getLayout() != null) getLayout().removeView(Fuel_HomeUse);
-                    if (getLayout() != null) getLayout().removeView(drawRect[7]);
-                    if (getLayout() != null) getLayout().removeView(drawRect[8]);
+                    if (getLayout() != null) getLayout().removeView(drawRect[9]);
+                    if (getLayout() != null) getLayout().removeView(drawRect[10]);
 
                     Fuel_HomeUse = new WpadTextView(getContext(), false, getPos.Get(ID.IcEnergyMgrID.text_energy_num_3.GAS_HOMEUSE).width, getPos.Get(ID.IcEnergyMgrID.text_energy_num_3.GAS_HOMEUSE).height, Gravity.LEFT, Color.parseColor("#7cac64"), ContentsFontSize, false, ID.IcEnergyMgrID.text_energy_num_3.GAS_HOMEUSE);
                     ViewRegistration(getLayout(), Fuel_HomeUse, getPos.Get(ID.IcEnergyMgrID.text_energy_num_3.GAS_HOMEUSE).x, getPos.Get(ID.IcEnergyMgrID.text_energy_num_3.GAS_HOMEUSE).y);
 
-                    if (getLayout() != null) getLayout().addView(drawRect[7]);
-                    if (getLayout() != null) getLayout().addView(drawRect[8]);
+                    if (getLayout() != null) getLayout().addView(drawRect[9]);
+                    if (getLayout() != null) getLayout().addView(drawRect[10]);
 
 
-                    //연료전지
+                    //태양광
                     if (getLayout() != null) getLayout().removeView(Photovoltaics_HomeUse);
-                    if (getLayout() != null) getLayout().removeView(drawRect[9]);
-                    if (getLayout() != null) getLayout().removeView(drawRect[10]);
+                    if (getLayout() != null) getLayout().removeView(drawRect[7]);
+                    if (getLayout() != null) getLayout().removeView(drawRect[8]);
 
                     Photovoltaics_HomeUse = new WpadTextView(getContext(), false, getPos.Get(ID.IcEnergyMgrID.text_energy_num_3.WATER_HOMEUSE).width, getPos.Get(ID.IcEnergyMgrID.text_energy_num_3.WATER_HOMEUSE).height, Gravity.LEFT, Color.parseColor("#c885a4"), ContentsFontSize, false, ID.IcEnergyMgrID.text_energy_num_3.WATER_HOMEUSE);
                     ViewRegistration(getLayout(), Photovoltaics_HomeUse, getPos.Get(ID.IcEnergyMgrID.text_energy_num_3.WATER_HOMEUSE).x, getPos.Get(ID.IcEnergyMgrID.text_energy_num_3.WATER_HOMEUSE).y);
 
-                    if (getLayout() != null) getLayout().addView(drawRect[9]);
-                    if (getLayout() != null) getLayout().addView(drawRect[10]);
+                    if (getLayout() != null) getLayout().addView(drawRect[7]);
+                    if (getLayout() != null) getLayout().addView(drawRect[8]);
                 }
                 TempEnergyCount = EnergyCount;
             }
@@ -2997,11 +2997,11 @@ public class VIPIcEnergyMgrScreen extends WpadScreen {
 
             Photovoltaics_HomeUse.setText(monthTableClass[1].Use);
             //goal = (double) (Double.valueOf(monthTableClass[1].Use) * 1.5);
-            drawRect[7].ReDraw(CalcGraphWidth(monthTableClass[1].Use, goal + ""), mNumberOfEnergy);
+            drawRect[9].ReDraw(CalcGraphWidth(monthTableClass[1].Use, goal + ""), mNumberOfEnergy);
 
             Fuel_HomeUse.setText(monthTableClass[2].Use);
             //goal = (double) (Double.valueOf(monthTableClass[2].Use) * 1.2);
-            drawRect[9].ReDraw(CalcGraphWidth(monthTableClass[2].Use, goal + ""), mNumberOfEnergy);
+            drawRect[7].ReDraw(CalcGraphWidth(monthTableClass[2].Use, goal + ""), mNumberOfEnergy);
 
             //if (RealtimeMeterUse == false) {
                 // 실시간 검침 사용하지 않음

BIN
WallPadHomeCtrl/libs/WallPadAPI.jar


BIN
WallPadHomeCtrl/libs/WallPadSupport.jar


+ 9 - 36
WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/MainActivity.java

@@ -509,7 +509,7 @@ public class MainActivity extends WpadActivity {
 		menueListDataClass = null;
 
         if (menueListDataClass == null) {
-			Log.e(TAG, "[onCreate] menueListDataClass == null, Load Default List");
+			Log.d(TAG, "[onCreate] menueListDataClass == null, Load Default List");
 			menueListDataClass = loadDefaultMenuList();
 		}
 		else {
@@ -585,39 +585,11 @@ public class MainActivity extends WpadActivity {
 			Log.i(TAG, "[onCreate] GATEWAY OTHER @@@@@@@@@@@@@@@@@@@@");
 		}
 
-		/*if( (SmartDistUse == 1) && (KnxDistUse == false) ) // 스마트분전반 O / KNX 분전반 X
-		{
-			SdbAPI sdbAPI = Get_SdbController();
-			if(sdbAPI == null) return -1;
-			ret = sdbAPI.Refresh(SdbAPI.DEVICE_INDEX.ENERGY_CONT, define.DEVICE_ALL_OR_NOTHING);
-			if(ret < 0) return -2;
-
-			if(sdbAPI.data.EnergyController.Data.BatchOffStatus == Sdb_DataClasses.BATCHOFF_STATUS.SET) return 0;
-			else return 1;
-		}
-		else if( (SmartDistUse == 0) && (KnxDistUse == true) ) // 스마트분전반 X / KNX 분전반 O
-		{
-			KnxAPI knxAPI = Get_KnxController();
-			if(knxAPI == null) return -1;
-			ret = knxAPI.Refresh(KnxAPI.DEVICE_INDEX.MASTER_CONT, define.DEVICE_ALL_OR_NOTHING);
-			if(ret < 0) return -2;
-
-			if(knxAPI.data.MasterController.Data.BatchOffStatus == KNX_DataClasses.BATCHOFF_STATUS.SET) return 0;
-			else return 1;
-		}
-		else // 그밖의 경우, 스마트분전반을 기본으로 로딩.
-		{
-			SdbAPI sdbAPI = Get_SdbController();
-			if(sdbAPI == null) return -1;
-			ret = sdbAPI.Refresh(SdbAPI.DEVICE_INDEX.ENERGY_CONT, define.DEVICE_ALL_OR_NOTHING);
-			if(ret < 0) return -2;
-
-			if(sdbAPI.data.EnergyController.Data.BatchOffStatus == Sdb_DataClasses.BATCHOFF_STATUS.SET) return 0;
-			else return 1;
-		}*/
-
 		// 거주자 안전확인 서비스 사용여부 확인하고, 화면 WallPadSupport Lib.에 관련 설정을 한다.
-		getResidentSafetyCheckSetting();
+		// 성북동 주택은 생략
+		if (Version.getModelType() != Version.MODEL_TYPE.IHN_D101_I_LX2) {
+			getResidentSafetyCheckSetting();
+		}
 
 		Log.i(TAG, "[onCreate] End onCreate -------------------------------------------------");
 	}
@@ -637,7 +609,8 @@ public class MainActivity extends WpadActivity {
 					if (wpapi != null) {
 						//Log.d(TAG, "Handler go");
 						if (wpapi.Check_Connect()) {
-							if (nDistributionPanelType == Version.DISTRIBUTION_MODEL.KNX_DIST) {
+							//성북동 주택의 환기는 일반환기로 적용
+							if (nDistributionPanelType == Version.DISTRIBUTION_MODEL.KNX_DIST && Version.getModelType() != Version.MODEL_TYPE.IHN_D101_I_LX2) {
 								mKnxVentilAPI = wpapi.Get_KnxVentiController();
 								// KNX 환기
 								if (mKnxVentilAPI != null) {
@@ -651,7 +624,7 @@ public class MainActivity extends WpadActivity {
 
 								mVentilAPI = wpapi.Get_VentiController();
 								if (mVentilAPI != null) {
-									Log.e(TAG, "[mWallPadApiCheckHandler] mVentilAPI is not null!!");
+									Log.d(TAG, "[mWallPadApiCheckHandler] mVentilAPI is not null!!");
 									updateVentilatorData(false);
 								}
 								else {
@@ -663,7 +636,7 @@ public class MainActivity extends WpadActivity {
 								// 일반 환기
 								mVentilAPI = wpapi.Get_VentiController();
 								if (mVentilAPI != null) {
-									Log.e(TAG, "[mWallPadApiCheckHandler] mVentilAPI is not null!!");
+									Log.d(TAG, "[mWallPadApiCheckHandler] mVentilAPI is not null!!");
 									updateVentilatorData(false);
 								}
 								else {

+ 24 - 0
WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/data/HeatingBoilerData.java

@@ -6,13 +6,21 @@ import android.os.Parcelable;
 public class HeatingBoilerData implements Parcelable {
     private boolean boiler_frost_protect;
     private int boiler_heatwater_temp;
+    private int boiler_heatwater_min_temp;
+    private int boiler_heatwater_max_temp;
     private int boiler_hotwater_temp;
+    private int boiler_hotwater_min_temp;
+    private int boiler_hotwater_max_temp;
     private int boiler_error_code;
 
     protected HeatingBoilerData(Parcel in) {
         boiler_frost_protect = in.readByte() != 0;
         boiler_heatwater_temp = in.readInt();
+        boiler_heatwater_min_temp = in.readInt();
+        boiler_heatwater_max_temp = in.readInt();
         boiler_hotwater_temp = in.readInt();
+        boiler_hotwater_min_temp = in.readInt();
+        boiler_hotwater_max_temp = in.readInt();
         boiler_error_code = in.readInt();
     }
 
@@ -34,9 +42,21 @@ public class HeatingBoilerData implements Parcelable {
     public int getBoiler_heatwater_temp() {
         return boiler_heatwater_temp;
     }
+    public int getBoiler_heatwater_min_temp() {
+        return boiler_heatwater_min_temp;
+    }
+    public int getBoiler_heatwater_max_temp() {
+        return boiler_heatwater_max_temp;
+    }
     public int getBoiler_hotwater_temp() {
         return boiler_hotwater_temp;
     }
+    public int getBoiler_hotwater_min_temp() {
+        return boiler_hotwater_min_temp;
+    }
+    public int getBoiler_hotwater_max_temp() {
+        return boiler_hotwater_max_temp;
+    }
     public int getBoiler_error_code() {
         return boiler_error_code;
     }
@@ -57,7 +77,11 @@ public class HeatingBoilerData implements Parcelable {
     public void writeToParcel(Parcel dest, int flags) {
         dest.writeByte((byte) (boiler_frost_protect ? 1 : 0));
         dest.writeInt(boiler_heatwater_temp);
+        dest.writeInt(boiler_heatwater_min_temp);
+        dest.writeInt(boiler_heatwater_max_temp);
         dest.writeInt(boiler_hotwater_temp);
+        dest.writeInt(boiler_heatwater_min_temp);
+        dest.writeInt(boiler_heatwater_max_temp);
         dest.writeInt(boiler_error_code);
     }
 }

+ 4 - 4
WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/screen/screen_multi/HeatingV2PopupBoilerTestScreen.java

@@ -113,14 +113,14 @@ public class HeatingV2PopupBoilerTestScreen extends WpadScreen
             mData.heatingV2.Boiler = new HeatingV2.BoilerData();
 
             // 난방수
-            mData.heatingV2.Boiler.HeatingWater.MinSetTemp = 40;
-            mData.heatingV2.Boiler.HeatingWater.MaxSetTemp = 80;
+            mData.heatingV2.Boiler.HeatingWater.MinSetTemp = (byte)heatingBoilerData.getBoiler_heatwater_min_temp();
+            mData.heatingV2.Boiler.HeatingWater.MaxSetTemp = (byte)heatingBoilerData.getBoiler_heatwater_max_temp();
             mData.heatingV2.Boiler.HeatingWater.SetTemp = (byte)heatingBoilerData.getBoiler_heatwater_temp();
             mData.heatingV2.Boiler.HeatingWater.bSetTempUnit5 = false;
 
             // 온수
-            mData.heatingV2.Boiler.HotWater.MinSetTemp = 40;
-            mData.heatingV2.Boiler.HotWater.MaxSetTemp = 60;
+            mData.heatingV2.Boiler.HotWater.MinSetTemp = (byte)heatingBoilerData.getBoiler_hotwater_min_temp();
+            mData.heatingV2.Boiler.HotWater.MaxSetTemp = (byte)heatingBoilerData.getBoiler_hotwater_max_temp();
             mData.heatingV2.Boiler.HotWater.SetTemp = (byte)heatingBoilerData.getBoiler_hotwater_temp();
             mData.heatingV2.Boiler.HotWater.bSetTempUnit5 = false;
 

+ 1 - 1
WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/screen/screen_multi/HeatingV2PopupTestScreen.java

@@ -1436,7 +1436,7 @@ public class HeatingV2PopupTestScreen extends WpadScreen {
         mData.TempSetDelayedEnable = true;
 
         // 4. 핸들러에 메시지 전송
-        mDeviceTempSetHandler.sendEmptyMessageDelayed(DEVICE_CMD_TEMP_CHANGE, 700);
+        mDeviceTempSetHandler.sendEmptyMessageDelayed(DEVICE_CMD_TEMP_CHANGE, 500);
 
         return true;
     }

+ 2 - 2
WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/screen/screen_multi/KnxSystemAirconMainTestScreen.java

@@ -496,7 +496,7 @@ public class KnxSystemAirconMainTestScreen extends WpadScreen {
                         if(resultData.getType().equals("controlResponse")&&resultData.getResult().equals("ok")) {
                             //제어 명령을 내리고 제대로 응답이 오면 상태를 다시 조회해서 UI 갱신하도록 한다.
                             Sound().Play(SND.effect.TOUCH_LATCHED);
-                            startRefreshTimer(2600);
+                            startRefreshTimer(1000);
                         }
                         else if(resultData.getType().equals("updateResponse")) {
                             //상태 조회 응답이 오면, data를 갱신한다.
@@ -773,7 +773,7 @@ public class KnxSystemAirconMainTestScreen extends WpadScreen {
      */
     @Override
     protected void onPopupResult(Intent intent) {
-        startRefreshTimer(1500);
+        startRefreshTimer(1000);
     }
 
     // =================================================================================================

+ 1 - 1
WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/screen/screen_multi/KnxSystemAirconPopupTestScreen.java

@@ -388,7 +388,7 @@ public class KnxSystemAirconPopupTestScreen extends WpadScreen {
         }
 
         try {
-            Thread.sleep(2000);
+            Thread.sleep(1000);
         } catch (InterruptedException e) {
             e.printStackTrace();
         }

+ 15 - 8
WallPadMain/src/main/java/kr/co/icontrols/wallpadmain/util/IconManager.java

@@ -49,6 +49,9 @@ public class IconManager {
     int nDistributionPanelType = Version.DISTRIBUTION_MODEL.NON_USE;   // 분전반
 
     // 부가기능
+    int nNoticeEnable = WallpadDeviceSet.DEV_DATA_DISABLE;   // 공지사항
+    int nEframeEnable = WallpadDeviceSet.DEV_DATA_DISABLE;   // 전자액자
+    int nMemoEnable = WallpadDeviceSet.DEV_DATA_DISABLE;   // 전자액자
     int nParkingLocationEnable = WallpadDeviceSet.DEV_DATA_DISABLE;   // 주차위치
     int nCCTVMonitoringEnable = WallpadDeviceSet.DEV_DATA_DISABLE;   // CCTV 모니터링
     int nElecVehicleChargingEnable = WallpadDeviceSet.DEV_DATA_DISABLE;   // 전기차 충전
@@ -185,6 +188,9 @@ public class IconManager {
             nDistributionPanelType = mWallpadDeviceSet.Get_DistributionPannelType_Info();   // 분전반 종류
 
             // 부가기능
+            nNoticeEnable = mWallpadDeviceSet.GetDeviceSetted("공지사항");   // 공지사항
+            nEframeEnable = mWallpadDeviceSet.GetDeviceSetted("전자액자");   // 전자액자
+            nMemoEnable = mWallpadDeviceSet.GetDeviceSetted("메모");   // 전자액자
             nParkingLocationEnable = mWallpadDeviceSet.GetDeviceSetted("주차확인");   // 주차위치
             nCCTVMonitoringEnable = mWallpadDeviceSet.GetDeviceSetted("CCTV");   // CCTV
             nElecVehicleChargingEnable = mWallpadDeviceSet.GetDeviceSetted("전기차충전");   // 전기차 충전
@@ -443,10 +449,10 @@ public class IconManager {
             /*
             부가 App
              */
-
-            //mIconInfoTable.addIconInfo(ID.ICONS.MENUS.ADD_NOTICE.getID(), ID.ICONS.MENUS.ADD_NOTICE.getNameKR(), ID.LINKEDSCREEN.SubMenuAddService.Notice,
-            //        R.drawable.icon_add_notice_normal, R.drawable.icon_add_notice_pressed, R.drawable.icon_add_notice_pressed, R.drawable.icon_add_notice_pressed);
-
+            if (nNoticeEnable == WallpadDeviceSet.DEV_DATA_ENABLE) {
+                mIconInfoTable.addIconInfo(ID.ICONS.MENUS.ADD_NOTICE.getID(), ID.ICONS.MENUS.ADD_NOTICE.getNameKR(), ID.LINKEDSCREEN.SubMenuAddService.Notice,
+                        R.drawable.icon_add_notice_normal, R.drawable.icon_add_notice_pressed, R.drawable.icon_add_notice_pressed, R.drawable.icon_add_notice_pressed);
+            }
             if (!bNonInternetSupportEnable) {
                 // 날씨
                 mIconInfoTable.addIconInfo(ID.ICONS.MENUS.ADD_WEATHER.getID(), ID.ICONS.MENUS.ADD_WEATHER.getNameKR(), ID.LINKEDSCREEN.SubMenuAddService.Weather,
@@ -454,11 +460,12 @@ public class IconManager {
             }
 
             // 메모
-            //mIconInfoTable.addIconInfo(ID.ICONS.MENUS.ADD_MEMO.getID(), ID.ICONS.MENUS.ADD_MEMO.getNameKR(), ID.LINKEDSCREEN.SubMenuAddService.Memo,
-            //        R.drawable.icon_add_memo_normal, R.drawable.icon_add_memo_pressed, R.drawable.icon_add_memo_pressed, R.drawable.icon_add_memo_pressed);
-
+            if (nMemoEnable == WallpadDeviceSet.DEV_DATA_ENABLE) {
+                mIconInfoTable.addIconInfo(ID.ICONS.MENUS.ADD_MEMO.getID(), ID.ICONS.MENUS.ADD_MEMO.getNameKR(), ID.LINKEDSCREEN.SubMenuAddService.Memo,
+                        R.drawable.icon_add_memo_normal, R.drawable.icon_add_memo_pressed, R.drawable.icon_add_memo_pressed, R.drawable.icon_add_memo_pressed);
+            }
             // 전자액자
-            if (!bNonInternetSupportEnable) {
+            if (nEframeEnable == WallpadDeviceSet.DEV_DATA_ENABLE) {
                 mIconInfoTable.addIconInfo(ID.ICONS.MENUS.ADD_E_FRAME.getID(), ID.ICONS.MENUS.ADD_E_FRAME.getNameKR(), ID.LINKEDSCREEN.SubMenuAddService.AutoPicture,
                         R.drawable.icon_add_eframe_normal, R.drawable.icon_add_eframe_pressed, R.drawable.icon_add_eframe_pressed, R.drawable.icon_add_eframe_pressed);
             }

BIN
WallPadMultiControlService/libs/WallPadAPI.jar


+ 13 - 13
WallPadMultiControlService/src/main/java/kr/co/icontrols/wallpadmulticontrolservice/DataSenderService.java

@@ -90,7 +90,7 @@ public class DataSenderService extends Service {
         private final static int BASE = 9999;
 
         public final static String BR_LIVING_LIGHT = BR_ACTION_BASE + "LIVING_LIGHT_HDC" + "(" + BASE + ")";
-        public final static String BR_ENERGY_METER = BR_ACTION_BASE + "ENERGY_METER_HDC" + "(" + BASE + ")";
+        //public final static String BR_ENERGY_METER = BR_ACTION_BASE + "ENERGY_METER_HDC" + "(" + BASE + ")";
         public final static String BR_BATCH_LIGHT = BR_ACTION_BASE + "BATCH_LIGHT_HDC" + "(" + BASE + ")";
         public final static String BR_GAS = BR_ACTION_BASE + "GAS_HDC" + "(" + BASE + ")";
         public final static String BR_VENTIL = BR_ACTION_BASE + "VENTIL_HDC" + "(" + BASE + ")";
@@ -207,7 +207,7 @@ public class DataSenderService extends Service {
     }
 
     // 현산향 에너지미터 ( 각방 조명 , 콘센트 )
-    private EnergyMeterAPI mEnergyMeterAPI = null;
+    //private EnergyMeterAPI mEnergyMeterAPI = null;
 
     // 조그 월패드
     private Sdb_LivingRoomLightAPI mSdb_LivingRoomLightAPI; // 거실 조명
@@ -1544,7 +1544,11 @@ public class DataSenderService extends Service {
             jsonObject.accumulate("support_boiler", mHeatingV2API.data.Device.info.Support.Boiler);
             if (mHeatingV2API.data.Device.info.Support.Boiler == true) {
                 jsonObject.accumulate("boiler_heatwater_temp", mHeatingV2API.data.Boiler.HeatingWater.SetTemp);
+                jsonObject.accumulate("boiler_heatwater_min_temp", mHeatingV2API.data.Boiler.HeatingWater.MinSetTemp);
+                jsonObject.accumulate("boiler_heatwater_max_temp", mHeatingV2API.data.Boiler.HeatingWater.MaxSetTemp);
                 jsonObject.accumulate("boiler_hotwater_temp", mHeatingV2API.data.Boiler.HotWater.SetTemp);
+                jsonObject.accumulate("boiler_hotwater_min_temp", mHeatingV2API.data.Boiler.HotWater.MinSetTemp);
+                jsonObject.accumulate("boiler_hotwater_max_temp", mHeatingV2API.data.Boiler.HotWater.MaxSetTemp);
                 jsonObject.accumulate("boiler_frost_protect", mHeatingV2API.data.Boiler.bFrostProtectMode);
                 jsonObject.accumulate("boiler_error_code", mHeatingV2API.data.Boiler.ErrorCode);
             }
@@ -2617,22 +2621,22 @@ public class DataSenderService extends Service {
                 }
             }
             else if (strActionName.equals(BrID.BR_HEATING)) {
-                //				Log.d(TAG, "*********************   BR DataSenderService BR_HEATING   ********************");
+                				Log.d(TAG, "*********************   BR DataSenderService BR_HEATING   ********************");
                 checkChangedHeating();
             } else if (strActionName.equals(BrID.BR_AIRCON)) {
-                //				Log.d(TAG, "*********************   BR DataSenderService BR_AIRCON   ********************");
+                				Log.d(TAG, "*********************   BR DataSenderService BR_AIRCON   ********************");
                 checkChangedAircon();
             } else if (strActionName.equals(BrID.BR_SDB_EVENT)) {
-                //				Log.d(TAG, "*********************   DataSenderService BR_SDB_EVENT   ********************");
+                				Log.d(TAG, "*********************   DataSenderService BR_SDB_EVENT   ********************");
                 checkChangedSdb(false);
             } else if (strActionName.equals(BrID.BR_KNX_EVENT)) {
-                //				Log.d(TAG, "*********************   DataSenderService BR_KNX_EVENT   ********************");
+                				Log.d(TAG, "*********************   DataSenderService BR_KNX_EVENT   ********************");
                 deviceApiLoadLight();
             } else if (strActionName.equals(BrID.BR_SDB_LIVING_EVENT)) {
                 //				Log.d(TAG, "*********************   DataSenderService.BR_SDB_LIVING_EVENT   ******************** -> bDeviceInitComplete [" + bDeviceInitComplete + "]");
                 //checkChangedSdbLivingLight();
             } else if (strActionName.equals(BrID.BR_VENTIL)) {
-                //				Log.d(TAG, "*********************   BR DataSenderService.BR_VENTIL   ********************");
+                				Log.d(TAG, "*********************   BR DataSenderService.BR_VENTIL   ********************");
                 checkChangedVentilation();
             } else if (strActionName.equals(define.NOTIFY_ACNAME)) {
                 int kind = intent.getIntExtra(define.NOTIBR_KIND, 0);
@@ -2759,7 +2763,7 @@ public class DataSenderService extends Service {
                     || Version.getModelType() == Version.MODEL_TYPE.IHN_1010GL
                     || Version.getModelType() == Version.MODEL_TYPE.IHN_1010GL_I) {
                 mIntentFilter.addAction(BrID.BR_LIVING_LIGHT);
-                mIntentFilter.addAction(BrID.BR_ENERGY_METER);
+                //mIntentFilter.addAction(BrID.BR_ENERGY_METER);
             }
             mIntentFilter.addAction(BrID.BR_GAS);
             mIntentFilter.addAction(BrID.BR_VENTIL);
@@ -2780,11 +2784,7 @@ public class DataSenderService extends Service {
     private void registerDeviceBR() {
         try {
             Log.d(TAG, "[registerSubcriptionDeviceBR] ========== START ==========");
-            if (Version.getModelType() == Version.MODEL_TYPE.IHN_1020GL
-                    || Version.getModelType() == Version.MODEL_TYPE.IHN_1010GL
-                    || Version.getModelType() == Version.MODEL_TYPE.IHN_1010GL_I) {
-                if (mEnergyMeterAPI != null) mEnergyMeterAPI.regChangedBR(BrID.BR_ENERGY_METER);
-            } else if (Version.getModelType() == Version.MODEL_TYPE.IHN_D101 || Version.getModelType() == Version.MODEL_TYPE.IHN_D101_I || Version.getModelType() == Version.MODEL_TYPE.IHN_D101_I_LX2
+            if (Version.getModelType() == Version.MODEL_TYPE.IHN_D101 || Version.getModelType() == Version.MODEL_TYPE.IHN_D101_I || Version.getModelType() == Version.MODEL_TYPE.IHN_D101_I_LX2
                     || Version.getModelType() == Version.MODEL_TYPE.IHN_D101K || Version.getModelType() == Version.MODEL_TYPE.IHN_D101K_I) {
                 if (nDPType == Version.DISTRIBUTION_MODEL.SMART_DIST) {
                     // 스마트 분전반

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません