Setpoint_attitude/attitude not allowing offboard in Python

I’m moving to attitude setpoints (/mavros/setpoint_attitude/attitude) from velocity setpoints (/mavros/setpoint_raw/local) and now I cannot enable offboard mode on the vehicle. Offboard has worked fine using the velocity setpoints.

This is the code I am using to publish attitude setpoints and thrust setpoints:

    #Move message
    attPub = rospy.Publisher("/mavros/setpoint_attitude/attitude", PoseStamped, queue_size = 1)
    attHead = Header()
    attMsg = PoseStamped()
    attPose = Pose()
    attPoint = Point()
    attQuat = Quaternion()
    attHead.seq = loopnum
    attHead.stamp.secs = time.time()

    attQuat.w = 1
    attQuat.x = 0
    attQuat.y = 0
    attQuat.z = 0

    attPoint.x = self.dronePosX
    attPoint.y = self.dronePosY
    attPoint.z = self.dronePosZ

    #Set attitude and rate
    attPose.orientation = attQuat
    attPose.position = attPoint

    attMsg.header = attHead
    attMsg.pose = attPose

    #Publish message

    thrPub = rospy.Publisher("/mavros/setpoint_attitude/thrust", Thrust, queue_size = 1)
    thrMsg = Thrust()

    thrMsg.header = attHead
    thrMsg.thrust = 0.5


    loopnum += 1

The vehicle isn’t getting any mavlink messages when I use these commands, so of course it won’t go into offboard. Am I missing something or formatting something wrong causing MAVROS not to send messages to the flight controller?

Moved (back) to using setpoint_raw/attitude.

These links may prove helpful for anybody else:

It’s working this time, even though it didn’t last time. The inner machinations of PX4 are an enigma, but it works.