What sort of input does the F9K wheel tick connections accept? From the hookup guide:
Wheel Tick and Direction Pins For advanced users that are interested in taking advantage of your vehicle’s sensor readings, you can connect the following pins. Caution is advised however as this requires you to open up up the hood of your car and hack into the its system. D-: The reference GND pin (D-) when connecting the direction pin. D+: The direction pin is labeled as (D+) tells the ZED-F9K what direction the vehicle is moving (forward/reverse). W-: The reference GND pin (W-) when connecting the wheel tick pin. W+: The wheel tick pin (W+) tells the ZED-F9K the distance a vehicle’s wheel has traveled. Depending on the odometer type that you connect to, the ZED-F9K can also receive speed data from the vehicle.
Can I simply hook up a sensor that outputs pulses at a frequency proportional to speed? Do I send a I2C message with the number of counts? Serial?
The tick inputs are 3.3V and u-blox recommends schmitt triggers to clean up the signals, as well as ESD and over-voltage protection. If you’re attaching the F9K to a car you’ll definitely want to protect the inputs from whatever noise the car may output.
The GNSS Library does not support this directly, there is no setEsfMeas() function or similar, but it would be possible to do it with a custom command. Have a look at examples 20 and 21. You would need to get the message format exactly right; consult the F9 LAP Interface Description for more details.
Converting CAN bus data into this format so it can be pushed to the ZED would be a nice project. You’d essentially be replicating what the C102-F9R does: “The device has a configurable high-speed CAN (ISO 11898-2) interface. The on-board MCU converts the configured CAN messages into UBX-ESF-MEAS messages which are sent to the receiver via I2C.”.