diff --git a/android/handsfree.c b/android/handsfree.c
index 76f5653..4020ed5 100644
--- a/android/handsfree.c
+++ b/android/handsfree.c
uint8_t buf[IPC_MTU];
struct hal_ev_handsfree_unknown_at *ev = (void *) buf;
- if (dev->state != HAL_EV_HANDSFREE_CONN_STATE_SLC_CONNECTED) {
- hfp_gw_send_result(dev->gw, HFP_RESULT_ERROR);
- hfp_gw_disconnect(dev->gw);
- return;
- }
-
bdaddr2android(&dev->bdaddr, ev->bdaddr);
/* copy while string including terminating NULL */
static void register_post_slc_at(struct hf_device *dev)
{
+ hfp_gw_set_command_handler(dev->gw, at_cmd_unknown, dev, NULL);
+
if (dev->hsp) {
hfp_gw_register(dev->gw, at_cmd_ckpd, "+CKPD", dev, NULL);
hfp_gw_register(dev->gw, at_cmd_vgs, "+VGS", dev, NULL);
g_io_channel_set_close_on_unref(chan, FALSE);
hfp_gw_set_close_on_unref(dev->gw, true);
- hfp_gw_set_command_handler(dev->gw, at_cmd_unknown, dev, NULL);
hfp_gw_set_disconnect_handler(dev->gw, disconnect_watch, dev, NULL);
if (dev->hsp) {