In brief, my Samsung S7 originally from Bell didn’t have the VoLTE option needed now that Rogers/Fido is decommissioning 3G down. The solution was to change the CSC code from Bell to Rogers.
As background, I was getting messages/texts from Fido that I was on 3G, but 4 times agents on the phone and in person said my phone was fine and to ignore the messages. However, I got hit with a $75 fee + $3 monthly fee for being on 3G.
After that, the agent said that without VoLTE my phone won’t likely work starting August, since the phone may be compatible, but the software is missing the VoLTE option.
I tried other firmwares but nothing gave the VoLTE option needed.
I googled everywhere and saw others with the issue, but no one had a solution.
In the end, I changed the CSC code from Bell to Rogers, and after it reinstalled / rebooted, I got the VoLTE option.
Hope that helps someone!