diff --git a/src/gsm/rsl.c b/src/gsm/rsl.c
index 706fb54..a7fa81d 100644
--- a/src/gsm/rsl.c
+++ b/src/gsm/rsl.c
@@ -159,6 +159,7 @@
 
 	switch (type) {
 	case RSL_CHAN_Lm_ACCHs:
+	case RSL_CHAN_OSMO_VAMOS_Lm_ACCHs:
 		subch &= 0x01;
 		break;
 	case RSL_CHAN_SDCCH4_ACCH:
@@ -195,6 +196,7 @@
 	case RSL_CHAN_OSMO_PDCH:
 	case RSL_CHAN_OSMO_CBCH4:
 	case RSL_CHAN_OSMO_CBCH8:
+	case RSL_CHAN_OSMO_VAMOS_Bm_ACCHs:
 		*type = chan_nr & RSL_CHAN_NR_MASK;
 		*subch = 0;
 		break;
@@ -208,6 +210,9 @@
 		} else if ((chan_nr & 0xc0) == RSL_CHAN_SDCCH8_ACCH) {
 			*type = RSL_CHAN_SDCCH8_ACCH;
 			*subch = (chan_nr >> 3) & 0x7;
+		} else if ((chan_nr & 0xf0) == RSL_CHAN_OSMO_VAMOS_Lm_ACCHs) {
+			*type = RSL_CHAN_OSMO_VAMOS_Lm_ACCHs;
+			*subch = (chan_nr >> 3) & 0x1;
 		} else
 			return -EINVAL;
 	}
@@ -246,6 +251,10 @@
 		snprintf(buf, buf_len, "CBCH(SDCCH/4) on TS%d", ts);
 	else if (cbits == ABIS_RSL_CHAN_NR_CBITS_OSMO_CBCH8)
 		snprintf(buf, buf_len, "CBCH(SDCCH/8) on TS%d", ts);
+	else if (cbits == ABIS_RSL_CHAN_NR_CBITS_OSMO_VAMOS_Bm_ACCHs)
+		snprintf(buf, buf_len, "VAMOS TCH/F on TS%d", ts);
+	else if ((cbits & 0x1e) == ABIS_RSL_CHAN_NR_CBITS_OSMO_VAMOS_Lm_ACCHs(0))
+		snprintf(buf, buf_len, "VAMOS TCH/H(%u) on TS%d", cbits & 0x01, ts);
 	else
 		snprintf(buf, buf_len, "UNKNOWN on TS%d", ts);
 
diff --git a/src/gsmtap_util.c b/src/gsmtap_util.c
index 336e1d0..9ae06d6 100644
--- a/src/gsmtap_util.c
+++ b/src/gsmtap_util.c
@@ -63,12 +63,14 @@
 
 	switch (rsl_chantype) {
 	case RSL_CHAN_Bm_ACCHs:
+	case RSL_CHAN_OSMO_VAMOS_Bm_ACCHs:
 		if (user_plane)
 			ret = GSMTAP_CHANNEL_VOICE_F;
 		else
 			ret = GSMTAP_CHANNEL_FACCH_F;
 		break;
 	case RSL_CHAN_Lm_ACCHs:
+	case RSL_CHAN_OSMO_VAMOS_Lm_ACCHs:
 		if (user_plane)
 			ret = GSMTAP_CHANNEL_VOICE_H;
 		else
