I also show code 17 as a camshaft position sensor circuit problem. The ECM uses signals from the cam and crank sensors to adjust spark timing. Your problem could be either the cam position sensor itself, the wiring to it, or the magnet in the cam gear that the sensor picks up it signal from.