A method of operating an internal combustion engine, comprising: a cylinder head; a poppet valve having a seat formed in the cylinder head; a cam shaft on which a cam is mounted; a rocker arm assembly comprising a rocker arm, a latch pin, and a cam follower configured to engage the cam as the cam shaft rotates, wherein the latch pin is moveable between first and second positions; a solenoid mounted in a configuration that causes one of its electrical response characteristics to vary significantly in relation to the latch pin's position as it translates between the first and second positions; a sensor positioned and operative to measure a current or voltage in a circuit comprising the solenoid; and a processor programmed to analyze data from the sensor to obtain diagnostic information relating to the state of the rocker arm assembly; wherein one of the first and second latch pin positions provides a configuration in which the rocker arm assembly is operative to actuate the poppet valve in response to rotation of the cam shaft to produce a first valve lift profile; and the other of the first and second latch pin positions provides a configuration in which the rocker arm assembly is operative to actuate the poppet valve in response to rotation of the cam shaft to produce a second valve lift profile, which is distinct from the first valve lift profile, or the poppet valve is deactivated; characterized in that the method comprises: gathering data relating to a current or voltage in the circuit comprising the solenoid; using the processor to analyze the data to obtain diagnostic information relating to the state of the rocker arm assembly; and reporting the diagnostic information; wherein the method further comprises: pulsing the circuit with a pulse insufficient in voltage or duration to actuate the latch pin, wherein the data relates to a current or voltage induced by the pulse; or attempting to actuate the latch pin by driving the circuit comprising the solenoid, wherein the data relates to a current or voltage induced by the driving of the circuit. a cylinder head; a poppet valve having a seat formed in the cylinder head; a cam shaft on which a cam is mounted; a rocker arm assembly comprising a rocker arm, a latch pin, and a cam follower configured to engage the cam as the cam shaft rotates, wherein the latch pin is moveable between first and second positions; a solenoid mounted in a configuration that causes one of its electrical response characteristics to vary significantly in relation to the latch pin's position as it translates between the first and second positions; a sensor positioned and operative to measure a current or voltage in a circuit comprising the solenoid; and a processor programmed to analyze data from the sensor to obtain diagnostic information relating to the state of the rocker arm assembly; wherein one of the first and second latch pin positions provides a configuration in which the rocker arm assembly is operative to actuate the poppet valve in response to rotation of the cam shaft to produce a first valve lift profile; and the other of the first and second latch pin positions provides a configuration in which the rocker arm assembly is operative to actuate the poppet valve in response to rotation of the cam shaft to produce a second valve lift profile, which is distinct from the first valve lift profile, or the poppet valve is deactivated; characterized in that the method comprises: gathering data relating to a current or voltage in the circuit comprising the solenoid; using the processor to analyze the data to obtain diagnostic information relating to the state of the rocker arm assembly; and reporting the diagnostic information; wherein the method further comprises: pulsing the circuit with a pulse insufficient in voltage or duration to actuate the latch pin, wherein the data relates to a current or voltage induced by the pulse; or attempting to actuate the latch pin by driving the circuit comprising the solenoid, wherein the data relates to a current or voltage induced by the driving of the circuit. gathering data relating to a current or voltage in the circuit comprising the solenoid; using the processor to analyze the data to obtain diagnostic information relating to the state of the rocker arm assembly; and reporting the diagnostic information; wherein the method further comprises: pulsing the circuit with a pulse insufficient in voltage or duration to actuate the latch pin, wherein the data relates to a current or voltage induced by the pulse; or attempting to actuate the latch pin by driving the circuit comprising the solenoid, wherein the data relates to a current or voltage induced by the driving of the circuit. pulsing the circuit with a pulse insufficient in voltage or duration to actuate the latch pin, wherein the data relates to a current or voltage induced by the pulse; or attempting to actuate the latch pin by driving the circuit comprising the solenoid, wherein the data relates to a current or voltage induced by the driving of the circuit.