We were on flight following in Arizona a few months ago with a destination on file. When transiting Bravo we were assigned a heading and altitude. After several minutes we were told to "resume own navigation", so we pointed our Bo towards home and went back to our previous altitude. Shortly thereafter ATC called up to ask why we changed from our assigned altitude. When we said we were advised to "resume own navigation", we were told that when assigned an altitude, we need to maintain that altitude until specifically told otherwise.
Is this right?
First, "flight following", by itself, is just traffic advisories and safety alerts. ATC does not have authority to assign headings, altitudes, routes, or speeds. No separation from other aircraft is provided. While you are in Class B airspace you are receiving Class B services which does include separation from other aircraft, both IFR and VFR. Where ATC is responsible for separation it has authority to achieve the required separation through assignment of headings, altitudes, etc.
From the Pilot/Controller Glossary:
RESUME OWN NAVIGATION− Used by ATC to
advise a pilot to resume his/her own navigational
responsibility. It is issued after completion of a radar
vector or when radar contact is lost while the aircraft
is being radar vectored.
(See RADAR CONTACT LOST.)
(See RADAR SERVICE TERMINATED.)
That's the only place the phrase appears in the AIM. It is not explicit in that definition that it applies only to lateral guidance, it is implicit because "own navigation" is used only in conjunction with lateral guidance.
In none of the phraseology examples in the ATC order is "resume own navigation" used alone. When vectors have fulfilled their purpose the prescribed phrase is; "(Position with respect to course/fix along route), RESUME OWN NAVIGATION".
When exiting a TRSA the prescribed phrases are; "LEAVING THE (name) TRSA, RESUME OWN NAVIGATION, REMAIN THIS FREQUENCY FOR TRAFFIC ADVISORIES", and, "LEAVING THE (name) TRSA, RADAR SERVICE TERMINATED, SQUAWK ONE TWO ZERO ZERO".
When exiting Class B airspace the prescribed phrases are; "LEAVING (name) BRAVO AIRSPACE, RESUME OWN NAVIGATION, REMAIN THIS FREQUENCY FOR TRAFFIC ADVISORIES", and, "LEAVING (name) BRAVO AIRSPACE, RESUME OWN NAVIGATION, RADAR SERVICE TERMINATED, SQUAWK ONE TWO ZERO ZERO."
In your case you were in Class B airspace and assigned a heading and altitude. When the heading was no longer needed but the altitude still was the controller told you to "resume own navigation". IME, the phrase "proceed on course" works well for this purpose. I've never had anyone question it, never had anyone conclude it erased any assigned altitude or altitude restriction. The problem with it however is that it is not standard phraseology. It's not in the P/CG, it appears nowhere in the AIM. It appears in the ATC order only with regard to the DC SFRA:
9−2−10. WASHINGTON, DC, SPECIAL
FLIGHT RULES AREA (DC SFRA)/ATC
SECURITY SERVICES
a. When the assigned code is observed, advise the
aircraft to proceed on course/as requested but to
remain outside of Class B, C, and/or D airspace as
appropriate.
PHRASEOLOGY−
(ACID) TRANSPONDER OBSERVED PROCEED ON
COURSE/AS REQUESTED; REMAIN OUTSIDE (class)
AIRSPACE.
Note that "proceed on course" is used there without any definition or explanation. It's pretty clearly self-explanatory.