diff --git a/src/sccp_codec.erl b/src/sccp_codec.erl
index 9a604d8..f5854e1 100644
--- a/src/sccp_codec.erl
+++ b/src/sccp_codec.erl
@@ -44,7 +44,7 @@
 % Parse incoming SCCP message, one function for every message type
 parse_sccp_msgt(?SCCP_MSGT_CR, DataBin) ->
 	% first get the fixed part
-	<<_:8, SrcLocalRef:24, ProtoClass:8, RemainVar/binary >> = DataBin,
+	<<_:8, SrcLocalRef:24/big, ProtoClass:8, RemainVar/binary >> = DataBin,
 	% variable length fixed part
 	<<PtrVar:8, PtrOpt:8, _/binary>> = RemainVar,
 	CalledPartyLen = binary:at(RemainVar, PtrVar),
@@ -57,42 +57,42 @@
 	[{src_local_ref, SrcLocalRef},{protocol_class, ProtoClass},{called_party_addr, CalledParty}|OptList];
 parse_sccp_msgt(?SCCP_MSGT_CC, DataBin) ->
 	% first get the fixed part
-	<<_:8, DstLocalRef:24, SrcLocalRef:24, ProtoClass:8, Remain/binary >> = DataBin,
+	<<_:8, DstLocalRef:24/big, SrcLocalRef:24/big, ProtoClass:8, Remain/binary >> = DataBin,
 	% optional part
 	OptList = parse_sccp_opts(Remain, []),
 	% build parsed list of message
 	[{dst_local_ref, DstLocalRef},{src_local_ref, SrcLocalRef},{protocol_class, ProtoClass}|OptList];
 parse_sccp_msgt(?SCCP_MSGT_CREF, DataBin) ->
 	% first get the fixed part
-	<<_:8, DstLocalRef:24, RefusalCause:8, Remain/binary >> = DataBin,
+	<<_:8, DstLocalRef:24/big, RefusalCause:8, Remain/binary >> = DataBin,
 	% optional part
 	OptList = parse_sccp_opts(Remain, []),
 	% build parsed list of message
 	[{dst_local_ref, DstLocalRef},{refusal_cause, RefusalCause}|OptList];
 parse_sccp_msgt(?SCCP_MSGT_RLSD, DataBin) ->
-	<<_:8, DstLocalRef:24, SrcLocalRef:24, ReleaseCause:8, Remain/binary >> = DataBin,
+	<<_:8, DstLocalRef:24/big, SrcLocalRef:24/big, ReleaseCause:8, Remain/binary >> = DataBin,
 	% optional part
 	OptList = parse_sccp_opts(Remain, []),
 	% build parsed list of message
 	[{dst_local_ref, DstLocalRef},{src_local_ref, SrcLocalRef},{release_cause, ReleaseCause}|OptList];
 parse_sccp_msgt(?SCCP_MSGT_RLC, DataBin) ->
-	<<_:8, DstLocalRef:24, SrcLocalRef:24>> = DataBin,
+	<<_:8, DstLocalRef:24/big, SrcLocalRef:24/big>> = DataBin,
 	% build parsed list of message
 	[{dst_local_ref, DstLocalRef},{src_local_ref, SrcLocalRef}];
 parse_sccp_msgt(?SCCP_MSGT_DT1, DataBin) ->
-	<<_:8, DstLocalRef:24, SegmReass:8, DataPtr:8, Remain/binary >> = DataBin,
+	<<_:8, DstLocalRef:24/big, SegmReass:8, DataPtr:8, Remain/binary >> = DataBin,
 	DataLen = binary:at(Remain, DataPtr-1),
 	UserData = binary:part(Remain, DataPtr-1+1, DataLen),
 	% build parsed list of message
 	[{dst_local_ref, DstLocalRef},{segm_reass, SegmReass},{user_data, UserData}];
 parse_sccp_msgt(?SCCP_MSGT_DT2, DataBin) ->
-	<<_:8, DstLocalRef:24, SeqSegm:16, DataPtr:8, Remain/binary >> = DataBin,
+	<<_:8, DstLocalRef:24/big, SeqSegm:16, DataPtr:8, Remain/binary >> = DataBin,
 	DataLen = binary:at(Remain, DataPtr-1),
 	UserData = binary:part(Remain, DataPtr-1+1, DataLen),
 	% build parsed list of message
 	[{dst_local_ref, DstLocalRef},{seq_segm, SeqSegm},{user_data, UserData}];
 parse_sccp_msgt(?SCCP_MSGT_AK, DataBin) ->
-	<<_:8, DstLocalRef:24, RxSeqnr:8, Credit:8>> = DataBin,
+	<<_:8, DstLocalRef:24/big, RxSeqnr:8, Credit:8>> = DataBin,
 	[{dst_local_ref, DstLocalRef},{rx_seq_nr, RxSeqnr},{credit, Credit}];
 parse_sccp_msgt(?SCCP_MSGT_UDT, DataBin) ->
 	<<_:8, ProtoClass:8, CalledPartyPtr:8, CallingPartyPtr:8, DataPtr:8, Remain/binary >> = DataBin,
@@ -108,24 +108,24 @@
 parse_sccp_msgt(?SCCP_MSGT_UDTS, DataBin) ->
 	parse_sccp_msgt(?SCCP_MSGT_UDT, DataBin);
 parse_sccp_msgt(?SCCP_MSGT_ED, DataBin) ->
-	<<_:8, DstLocalRef:24, DataPtr:8, Remain/binary>> = DataBin,
+	<<_:8, DstLocalRef:24/big, DataPtr:8, Remain/binary>> = DataBin,
 	DataLen = binary:at(Remain, DataPtr-1),
 	UserData = binary:part(Remain, DataPtr-1+1, DataLen),
 	[{dst_local_ref, DstLocalRef}, {user_data, UserData}];
 parse_sccp_msgt(?SCCP_MSGT_EA, DataBin) ->
-	<<_:8, DstLocalRef:24>> = DataBin,
+	<<_:8, DstLocalRef:24/big>> = DataBin,
 	[{dst_local_ref, DstLocalRef}];
 parse_sccp_msgt(?SCCP_MSGT_RSR, DataBin) ->
-	<<_:8, DstLocalRef:24, SrcLocalRef:24, ResetCause:8>> = DataBin,
+	<<_:8, DstLocalRef:24/big, SrcLocalRef:24/big, ResetCause:8>> = DataBin,
 	[{dst_local_ref, DstLocalRef},{src_local_ref, SrcLocalRef},{reset_cause, ResetCause}];
 parse_sccp_msgt(?SCCP_MSGT_RSC, DataBin) ->
-	<<_:8, DstLocalRef:24, SrcLocalRef:24>> = DataBin,
+	<<_:8, DstLocalRef:24/big, SrcLocalRef:24/big>> = DataBin,
 	[{dst_local_ref, DstLocalRef},{src_local_ref, SrcLocalRef}];
 parse_sccp_msgt(?SCCP_MSGT_ERR, DataBin) ->
-	<<_:8, DstLocalRef:24, ErrCause:8>> = DataBin,
+	<<_:8, DstLocalRef:24/big, ErrCause:8>> = DataBin,
 	[{dst_local_ref, DstLocalRef},{error_cause, ErrCause}];
 parse_sccp_msgt(?SCCP_MSGT_IT, DataBin) ->
-	<<_:8, DstLocalRef:24, SrcLocalRef:24, ProtoClass:8, SegmSeq:16, Credit:8>> = DataBin,
+	<<_:8, DstLocalRef:24/big, SrcLocalRef:24/big, ProtoClass:8, SegmSeq:16, Credit:8>> = DataBin,
 	[{dst_local_ref, DstLocalRef},{src_local_ref, SrcLocalRef},
          {protocol_class, ProtoClass},{seq_segm, SegmSeq},{credit, Credit}].
 % FIXME: XUDT/XUDTS, LUDT/LUDTS
@@ -157,45 +157,45 @@
 	SrcLocalRef = proplists:get_value(src_local_ref, Params),
 	ProtoClass = proplists:get_value(protocol_class, Params),
 	OptBin = encode_sccp_opts(Params, []),
-	<<?SCCP_MSGT_CR:8, SrcLocalRef:24, ProtoClass:8, OptBin/binary>>;
+	<<?SCCP_MSGT_CR:8, SrcLocalRef:24/big, ProtoClass:8, OptBin/binary>>;
 encode_sccp_msgt(?SCCP_MSGT_CC, Params) ->
 	SrcLocalRef = proplists:get_value(src_local_ref, Params),
 	DstLocalRef = proplists:get_value(dst_local_ref, Params),
 	ProtoClass = proplists:get_value(protocol_class, Params),
 	OptBin = encode_sccp_opts(Params, []),
-	<<?SCCP_MSGT_CC:8, DstLocalRef:24, SrcLocalRef:24, ProtoClass:8, OptBin/binary>>;
+	<<?SCCP_MSGT_CC:8, DstLocalRef:24/big, SrcLocalRef:24/big, ProtoClass:8, OptBin/binary>>;
 encode_sccp_msgt(?SCCP_MSGT_CREF, Params) ->
 	DstLocalRef = proplists:get_value(dst_local_ref, Params),
 	RefusalCause = proplists:get_value(refusal_cause, Params),
 	OptBin = encode_sccp_opts(Params, []),
-	<<?SCCP_MSGT_CREF:8, DstLocalRef:24, RefusalCause:8, OptBin/binary>>;
+	<<?SCCP_MSGT_CREF:8, DstLocalRef:24/big, RefusalCause:8, OptBin/binary>>;
 encode_sccp_msgt(?SCCP_MSGT_RLSD, Params) ->
 	SrcLocalRef = proplists:get_value(src_local_ref, Params),
 	DstLocalRef = proplists:get_value(dst_local_ref, Params),
 	ReleaseCause = proplists:get_value(release_cause, Params),
 	OptBin = encode_sccp_opts(Params, []),
-	<<?SCCP_MSGT_RLSD:8, DstLocalRef:24, SrcLocalRef:24, ReleaseCause:8, OptBin/binary>>;
+	<<?SCCP_MSGT_RLSD:8, DstLocalRef:24/big, SrcLocalRef:24/big, ReleaseCause:8, OptBin/binary>>;
 encode_sccp_msgt(?SCCP_MSGT_RLC, Params) ->
 	SrcLocalRef = proplists:get_value(src_local_ref, Params),
 	DstLocalRef = proplists:get_value(dst_local_ref, Params),
-	<<?SCCP_MSGT_RLC:8, DstLocalRef:24, SrcLocalRef:24>>;
+	<<?SCCP_MSGT_RLC:8, DstLocalRef:24/big, SrcLocalRef:24/big>>;
 encode_sccp_msgt(?SCCP_MSGT_DT1, Params) ->
 	DstLocalRef = proplists:get_value(dst_local_ref, Params),
 	SegmReass = proplists:get_value(segm_reass, Params),
 	UserData = proplists:get_value(user_data, Params),
 	UserDataLen = byte_size(UserData),
-	<<?SCCP_MSGT_DT1:8, DstLocalRef:24, SegmReass:8, 1:8, UserDataLen:8, UserData/binary>>;
+	<<?SCCP_MSGT_DT1:8, DstLocalRef:24/big, SegmReass:8, 1:8, UserDataLen:8, UserData/binary>>;
 encode_sccp_msgt(?SCCP_MSGT_DT2, Params) ->
 	DstLocalRef = proplists:get_value(dst_local_ref, Params),
 	SeqSegm = proplists:get_value(seq_segm, Params),
 	UserData = proplists:get_value(user_data, Params),
 	UserDataLen = byte_size(UserData),
-	<<?SCCP_MSGT_DT2:8, DstLocalRef:24, SeqSegm:16, 1:8, UserDataLen:8, UserData/binary>>;
+	<<?SCCP_MSGT_DT2:8, DstLocalRef:24/big, SeqSegm:16, 1:8, UserDataLen:8, UserData/binary>>;
 encode_sccp_msgt(?SCCP_MSGT_AK, Params) ->
 	DstLocalRef = proplists:get_value(dst_local_ref, Params),
 	RxSeqnr = proplists:get_value(rx_seqnr, Params),
 	Credit = proplists:get_value(credit, Params),
-	<<?SCCP_MSGT_AK:8, DstLocalRef:24, RxSeqnr:8, Credit:8>>;
+	<<?SCCP_MSGT_AK:8, DstLocalRef:24/big, RxSeqnr:8, Credit:8>>;
 encode_sccp_msgt(?SCCP_MSGT_UDT, Params) ->
 	ProtoClass = proplists:get_value(protocol_class, Params),
 	CalledParty = proplists:get_value(called_party_addr, Params),
@@ -219,30 +219,30 @@
 	UserData = proplists:get_value(user_data, Params),
 	UserDataLen = byte_size(UserData),
 	DataPtr = 1,
-	<<?SCCP_MSGT_ED:8, DstLocalRef:24, DataPtr:8, UserDataLen:8, UserData/binary>>;
+	<<?SCCP_MSGT_ED:8, DstLocalRef:24/big, DataPtr:8, UserDataLen:8, UserData/binary>>;
 encode_sccp_msgt(?SCCP_MSGT_EA, Params) ->
 	DstLocalRef = proplists:get_value(dst_local_ref, Params),
-	<<?SCCP_MSGT_EA:8, DstLocalRef:24>>;
+	<<?SCCP_MSGT_EA:8, DstLocalRef:24/big>>;
 encode_sccp_msgt(?SCCP_MSGT_RSR, Params) ->
 	DstLocalRef = proplists:get_value(dst_local_ref, Params),
 	SrcLocalRef = proplists:get_value(src_local_ref, Params),
 	ResetCause = proplists:get_value(reset_cause, Params),
-	<<?SCCP_MSGT_RSR:8, DstLocalRef:24, SrcLocalRef:24, ResetCause:8>>;
+	<<?SCCP_MSGT_RSR:8, DstLocalRef:24/big, SrcLocalRef:24/big, ResetCause:8>>;
 encode_sccp_msgt(?SCCP_MSGT_RSC, Params) ->
 	DstLocalRef = proplists:get_value(dst_local_ref, Params),
 	SrcLocalRef = proplists:get_value(src_local_ref, Params),
-	<<?SCCP_MSGT_RSC:8, DstLocalRef:24, SrcLocalRef:24>>;
+	<<?SCCP_MSGT_RSC:8, DstLocalRef:24/big, SrcLocalRef:24/big>>;
 encode_sccp_msgt(?SCCP_MSGT_ERR, Params) ->
 	DstLocalRef = proplists:get_value(dst_local_ref, Params),
 	ErrCause = proplists:get_value(error_cause, Params),
-	<<?SCCP_MSGT_ERR:8, DstLocalRef:24, ErrCause:8>>;
+	<<?SCCP_MSGT_ERR:8, DstLocalRef:24/big, ErrCause:8>>;
 encode_sccp_msgt(?SCCP_MSGT_IT, Params) ->
 	DstLocalRef = proplists:get_value(dst_local_ref, Params),
 	SrcLocalRef = proplists:get_value(src_local_ref, Params),
 	ProtoClass = proplists:get_value(protocol_class, Params),
 	SegmSeq = proplists:get_value(seq_segm, Params),
 	Credit = proplists:get_value(credit, Params),
-	<<?SCCP_MSGT_IT:8, DstLocalRef:24, SrcLocalRef:24, ProtoClass:8, SegmSeq:16, Credit:8>>.
+	<<?SCCP_MSGT_IT:8, DstLocalRef:24/big, SrcLocalRef:24/big, ProtoClass:8, SegmSeq:16, Credit:8>>.
 % FIXME: XUDT/XUDTS, LUDT/LUDTS
 
 
