added compass functionality