I do not have much experience about 3901. I use px4flow before and that was quite sometime ago so I try to recall some details.
To auto take off the drone needs to get sort of position lock first, either from a GPS or optitrack, or from a flow device. So if you can not take off that usually means the position lock is not available yet at that moment. That can be of many different reasons. But most commonly a flow device need to meet some external conditions to lock so if one of them fail it will just not working.
Regarding px4flow one of the common reasons is not enough flow quality. Usually when on the ground the flow can not reach enough quality to lock due to it requires some distance to the ground to get focused images, and when on ground the lens of flow is just too close to the floor. So the solution is to mount longer landing legs to the drone so the flow have proper distance to the floor as it needs.
Not sure it is the same reason on 3901 but I guess could be something similar like this. Check the locking conditions of 3901 and distance sensors and make sure they working properly before issuing the takeoff command.