I have never used bones in this way.

What about separating the task in two:

Can you rotate the head with keys?
Something like this:
temp1.pan += key_r;