If you’re not able to arm but have a working MAVLink connection then I suggest having a look at the 'Arming Checks` section of the Safety page. Likely there’s a check there that’s enabled and failing.
That could be a check that doesn’t actually matter to your operation (e.g. GPS lock if you don’t have a GPS, in which case you should disable that check), or it could be something set up incorrectly (e.g. Board Voltage or Battery Level if the power sense module isn’t correctly configured in the Power page), or something else.
If it’s not an arming check issue, please specify
if the same vehicle setup works with another topside setup, which operating system and QGC were used (if they’re different)
Always frustrating to not know why something is working when it wasn’t previously, although perhaps in this case it just needed a reboot or something to reset some internal state (not sure whether that was something you’d tried in initial testing).