Here's how I did mine, but I can only vouch for the exhaust if you're using a C300 hub.
Keep in mind it's a closed-loop system that will "adapt" as long as you're within ±10°.
If you're just a few degrees off and you get a code, something else is wrong.