anchor.diff:  %%	lager:info("Time : ~p", [Time]),
   %%	lager:info("Temp1 : ~p C", [Temp1/2]),
   %%	lager:info("Rest : ~p", [Rest]),
  -	Result = {rf_address, RF_address, {temp, Temp/2}, {value, Value}, {date, Date}, {time, Time},
  -							 [{state_1, [{error, value(error,Error)}, {answer,value(answer,Answer)},{state,State}]}, 
  -							 [state_1, [{battery, value(battery, Battery)}, {linkstatus, value(linkstatus,Linkstatus)}, {panel, value(panel,Panel)}, {gateway, value(gateway,Gateway)}, {dst, value(dst,Dst)}]]]},	
  -	%%decode_l(binary:part(Rest, (Length - 11), byte_size(Rest) - (Length - 11)), [Result|Acc]).
  +	Result = {rf_address, RF_address, [{temp, Temp/2}, {value, Value}, {date, Date}, {time, Time},
  +							 {error, value(error,Error)}, {answer,value(answer,Answer)},{state,State}, 
  +							 {battery, value(battery, Battery)}, {linkstatus, value(linkstatus,Linkstatus)}, {panel, value(panel,Panel)}, {gateway, value(gateway,Gateway)}, {dst, value(dst,Dst)}]},	
  +	lager:info("2. Length of the rest : ~p", [byte_size(Rest) ]),
  +	decode_l(Rest, [Result|Acc]);
  +decode_l(<<6,
  +		   RF_address:?RF_ADDRESS, 
  +		   Unknown:1/binary, 
  +		   Status_1:1/binary, 
  +		   Status_2:1/binary, 
  +		   Rest/binary>>, Acc) ->
  +	<<U4:1, U3:1,U2:1, Valid:1, Error:1, Answer:1, State:1, U1:1>> = Status_1, 
  +	<<Battery:1, Linkstatus:1, Panel:1, Gateway:1, Dst:1, U:1, Mode_1:1, Mode_0:1>> = Status_2,
  +	Result = {rf_address, RF_address, [
  +							 {error, value(error,Error)}, {answer,value(answer,Answer)},{state,State}, 
  +							 {battery, value(battery, Battery)}, {linkstatus, value(linkstatus,Linkstatus)}, 
  +							 {panel, value(panel,Panel)}, {gateway, value(gateway,Gateway)}, {dst, value(dst,Dst)}]},
   	decode_l(Rest, [Result|Acc]).
   
   
  
positive.code: 
  decode_c_message_2_test() ->	
  	M =  <<"C:094252,0glCUgECGP9LRVEwNTI1MTAzKiEsCQcYAzAM/wBESExtWJxY9kUgRSBFIEUgRSBFIEUgRSBFIERITG1YnFj2RSBFIEUgRSBFIEUgRSBFIEUgREhMbVicWPZFIEUgRSBFIEUgRSBFIEUgRSBESExtWJxY9kUgRSBFIEUgRSBFIEUgRSBFIERITG1YnFj2RSBFIEUgRSBFIEUgRSBFIEUgREhMbVicWPZFIEUgRSBFIEUgRSBFIEUgRSBESExtWJxY9kUgRSBFIEUgRSBFIEUgRSBFIA==\r\nC:0b2391,0gsjkQECGP9LRVEwNTU4NjU1KiEsCQcYAzAM/wBESExtWJxY9kUgRSBFIEUgRSBFIEUgRSBFIERITG1YnFj2RSBFIEUgRSBFIEUgRSBFIEUgREhMbVicWPZFIEUgRSBFIEUgRSBFIEUgRSBESExtWJxY9kUgRSBFIEUgRSBFIEUgRSBFIERITG1YnFj2RSBFIEUgRSBFIEUgRSBFIEUgREhMbVicWPZFIEUgRSBFIEUgRSBFIEUgRSBESExtWJxY9kUgRSBFIEUgRSBFIEUgRSBFIA==\r\nC:078f6d,zgePbQMCEABLRVEwMDY0NTM5KiE9CURITG1YnFj2RSBFIEUgRSBFIEUgRSBFIEUgREhMbVicWPZFIEUgRSBFIEUgRSBFIEUgRSBESExtWJxY9kUgRSBFIEUgRSBFIEUgRSBFIERITG1YnFj2RSBFIEUgRSBFIEUgRSBFIEUgREhMbVicWPZFIEUgRSBFIEUgRSBFIEUgRSBESExtWJxY9kUgRSBFIEUgRSBFIEUgRSBFIERITG1YnFj2RSBFIEUgRSBFIEUgRSBFIEUgBxgw\r\n">>,
  	decode(M).
  
  decode_date_test() ->
  
negative.code: 	{rf_address, RF_address, [{device_type, Device_type}, {room_id, Room_id}, {serial, Serial}, {com_temp, Com_temp}, {eco_temp, Eco_temp},
  	{max_set_point, Max_set_point_temp}, {min_set_point_temp, Min_set_point_temp},{temp_offset, Temp_offset}, {Window_open_temp, Window_open_temp},
  	{window_open_duration, Window_open_duration}, {boost_duration_value, Boost_duration_value}, {day_of_week_and_time, Day_of_week_and_time}, {max_value, Max_value},
  	{value_offset, Value_offset}]};
  
  decode_c_m1(<<RF_address:?RF_ADDRESS, 
  			  Device_type:?BYTE, 
  			  Room_id:?BYTE, 
  			  Firmware:?BYTE,
  			  Unknown:?BYTE,
  			  Serial:10/binary, 
  			  Rest/binary>>) ->
  	lager:info("RF_address : ~p", [RF_address]),
  	lager:info("Device_type : ~p", [Device_type]),
  	lager:info("Room_id : ~p", [Room_id]),
  	lager:info("Serial ~p", [Serial]),
  	{rf_address, RF_address, [{device_type, Device_type}, {room_id, Room_id}, {serial, Serial}]}.
  
  %% --------------------------------------------------------------------
  %%% Internal functions
  %% --------------------------------------------------------------------
  