I am trying to implement DTM with "AA page code already present on page", using the same s_code.js URL as for the present page code. I specify Object name = "s2".
As soon as I uncheck the "AA code present" option, everything works well.
Is 's2' the name of the object being used in your on-page implementation? If not, then this won't work.
When you check the "Adobe Analytics page code is already present" checkbox, DTM will not a) load s_code (which means it won't create any new s objects), or b) call s.t() for the page view. Thus, if you've specified 's2' as the object name, but your current on-page implementation uses 's' (or some other object name), then DTM is trying to call s2.tl() which refers to an invalid object, and therefore fails to work.