Runs a pigpio socket command.

        sl:= command socket and lock.
        cmd:= the command to be executed.
        p1:= command parameter 1 (if applicable).
         p2:=  command parameter 2 (if applicable).

def _pigpio_aio_command(self, cmd,  p1, p2,):
        """
        Runs a pigpio socket command.

        sl:= command socket and lock.
        cmd:= the command to be executed.
        p1:= command parameter 1 (if applicable).
         p2:=  command parameter 2 (if applicable).
        """
        with (yield from self._lock):
            data = struct.pack('IIII', cmd, p1, p2, 0)
            self._loop.sock_sendall(self.s, data)
            response = yield from self._loop.sock_recv(self.s, 16)
            _, res = struct.unpack('12sI', response)
            return res