etwmc/Personal-HomeKit-HAP

Segmentation fault

rawmean opened this issue · 9 comments

The PHK server crashes immediately after trying to add the bridge to the iPhone app. Specifically after responding to the Alert that says this accessory is not certified. This problem started after I switched to iOS 9 (beta 4).

etwmc commented

Have you pulled the newest code and update to the newest iOS beta? Because using the beta 5 build, it didn't crash on my OpenWRT router.

Yes, I'm running the newest code. I get the set fault on both beta 4 and beta 5 (iOS 9). I run the code on a raspberry pi 2. It works fine when iOS 8.4 connects to it.

etwmc commented

Can you upload your Configuration.h? I have tested for a day, but I didn't get segmentation fault yet.

ok, I cloned a celan version of master branch and it doesn't seg-fault anymore, but the callback function for intensity change is not called.
To test this, you can use this free iOS app: https://itunes.apple.com/us/app/insteon+/id919270334?mt=8
Note that when you change the intensity of the lamp the callback function is never called.

Thanks for writing this software and for your help. This is amazing piece of work!

etwmc commented

I have checked using the home kit catalog by Apple, since homed will be the actual program send the request. (Sorry for the delay. Got lots of stuff to do in this month)
the callback function does not call when you change the power state of the light, because it's not defined. (until the last commit)
But I was getting the callback when I try to change the light intensity

But if you still have problem, do you mind post your Accessory.cpp? That would be the major part of the code that determine whether the callback is called (by whether you configure the callback function properly).

@etwmc hello, I got this issue today, the latest iOS 9.3.1 seems to have trouble while trying to link, the console log says like this:


Return len 132 for socket 6
Message: POST /pair-setup HTTP/1.1
Host: House\032Light._hap._tcp.local
Content-Length: 6
Content-Type: application/pairing+tlv8


handlePairSeup, 392: State_M1_SRPStartRequest
handlePairSeup, 641, responseBuffer = HTTP/1.1 200 OK
Content-Type: application/pairing+tlv8
Content-Length: 412

��jJ�\V�Q���,����>|q�)��0݅��М�����|n/؅8�ٻ�K�yV���J$��wﷷo\>�LA�wҩ���
                                                                  #�IvSJ  t�7Z, responseLen = 492
Pair Setup Transfered length 492
handlePairSeup, 426: State_M3_SRPVerifyRequest
Password Correct
handlePairSeup, 641, responseBuffer = HTTP/1.1 200 OK
Content-Type: application/pairing+tlv8
Content-Length: 69

@����G� �>
          �h�?iÛ
Ւ?E����Ґ, responseLen = 148
Pair Setup Transfered length 148
handlePairSeup, 476: State_M5_ExchangeRequest
Length: 210
Segmentation fault

And then it quits itself, it doesnt manage to link

any suggestion on what part of the code start lookin?

etwmc commented

How about just run it with debugger, then do a backtrace?

I was trying yesterday but my device is a little space sensitive, can I get you a beer as in paypal beer :p for your help?