diff --git a/src/tests/hnb-test.c b/src/tests/hnb-test.c
index 480b3ef..90b2f38 100644
--- a/src/tests/hnb-test.c
+++ b/src/tests/hnb-test.c
@@ -57,7 +57,38 @@
 
 int hnb_test_ue_register_tx(struct hnb_test *hnb_test)
 {
-	return 0;
+	struct msgb *msg;
+	int rc, imsi_len;
+
+	char imsi_buf[16];
+	char *imsi_str = "262019876543210";
+
+	UERegisterRequest_t request_out;
+	UERegisterRequestIEs_t request;
+	memset(&request, 0, sizeof(request));
+
+	request.uE_Identity.present = UE_Identity_PR_iMSI;
+
+	imsi_len = encode_iu_imsi(imsi_buf, sizeof(imsi_buf), imsi_str);
+	request.uE_Identity.choice.iMSI.buf = imsi_buf;
+	request.uE_Identity.choice.iMSI.size = imsi_len;
+
+	request.registration_Cause = Registration_Cause_normal;
+	request.uE_Capabilities.access_stratum_release_indicator = Access_stratum_release_indicator_rel_6;
+	request.uE_Capabilities.csg_capability = CSG_Capability_not_csg_capable;
+
+	memset(&request_out, 0, sizeof(request_out));
+	rc = hnbap_encode_ueregisterrequesties(&request_out, &request);
+
+	msg = hnbap_generate_initiating_message(ProcedureCode_id_UERegister,
+						Criticality_reject,
+						&asn_DEF_UERegisterRequest,
+						&request_out);
+
+
+	msgb_ppid(msg) = IUH_PPI_HNBAP;
+
+	return osmo_wqueue_enqueue(&hnb_test->wqueue, msg);
 }
 
 int hnb_test_rx_hnb_register_acc(struct hnb_test *hnb, ANY_t *in)
