Connecting and configuring sensors
This guide covers connecting sensors to a BODAQS logger and configuring the logger to read the sensor correctly.
The inputs on a BODAQS logger are general purpose - this means flexibility, but it also means some simple configuration is necessary when you first set up the logger, or when you want to attach additional sensors.
What ‘Configuring’ Means
Section titled “What ‘Configuring’ Means”Configuring a sensor means telling the logger:
- what type of sensor it is;
- where it is connected, such as
AIN0,I2C1address54, orUART0; - what the sensor is measuring, (‘signal semantics’) so downstream analysis tools know what to do with its output
- how to translate the raw sensor output into real-world measurements (calibration information)
- for some sensors, additional settings particular to the type of sensor.
Currently BODAQS loggers support the following sensor types:
| Sensor type | Physical connection | Typical use |
|---|---|---|
Analog Potentiometer | Analog input | Linear potentiometers for suspension travel. |
AS5600 Angle (I2C) | I2C | Measurement of suspension linkage rotation for calculating rear wheel movement |
AS5048B Angle (I2C) | I2C | Linkage rotation, higher-resolution single-turn rotary angle measurement. |
DAN-F10N GPS (UART) | UART | On-logger GPS position, speed, and heading. |
AS5600 String Pot (I2C) | I2C | Multi-turn AS5600-based string potentiometer, digitally read. |
AS5600 String Pot (Analog) | Analog input | AS5600-based string potentiometer, read via analog. |
Configuration information lives in a file on the SD card inside your logger. Normally you change it by connecting to the logger via WiFi.
As well as sensors, BODAQS loggers have an optional handlebar switch with an LED that can be used to start and stop logging and provide visual confirmation that logging is running. The switch does not require configuration: it just plugs in.\
Analog Sensors
Section titled “Analog Sensors”Analog sensors use three logical wires:
| Sensor wire | Connects to | Notes |
|---|---|---|
+, VCC, excitation | Logger sensor power | Use the logger’s sensor supply, labelled ‘+3V0’ on A8 loggers and ‘+3V3’ on Prototype F loggers. |
-, GND, 0V | Logger ground | Use the logger’s Ground, labelled ‘GND’. |
signal, out, wiper | One analog input | Analog inputs are labelled ‘A0’ or ‘AIN0’, ‘A1’ or ‘AIN1’ etc. |
See Sensor Overview to locate these pins on the logger. See Wiring and Connector Tips for practical wiring advice.
Analog Potentiometer
Section titled “Analog Potentiometer”Use Analog Potentiometer configuration for ordinary three-wire linear potentiometers, often used
as fork and shock displacement sensors. Connect each analog potentiometer per the table above. Multiple potentiometers can connect to the same logger + and - pins, but each one must have its own analog input.
Analog potentiometer configuration
Section titled “Analog potentiometer configuration”Connect to the logger configuration web interface and navigate to the Sensors page, as described in the User Guide
Add a new sensor of type Analog Potentiometer. Give it a helpful name, for example front_shock or rear_shock.
Click ‘Edit’ to edit the sensor configuration.
Set configuration options for the sensor:
- Set
Analog inputto the AIN where the signal wire is connected. - Set
Output modetoLINEAR. EnableInclude raw column. - Measure the actual travel of the potentiometer. This is usually a few mm longer than the nominal travel. Set
Sensor full travel (mm)to the measured value. potentiometer. - Set
Installed rangeto the maximum travel of the thing you are measuring (usually a fork or shock). Note that ‘installed range’ does not directly affect the measurements made by the logger, but is needed if you want to use the logger’sSag Helper. - Set the usage metadata. The
primary quantityfor analog pots is always ‘disp’ (they measure displacement). Setendtofrontorrear.Primary domainshould usually besuspension, even for the front wheel (BODAQS considers all wheel travel to be vertical travel, so front suspension travel and wheel travel aren’t the same). - Leave the calibration data unchanged. Calibration is done through the logger and these values are set automatically.
Save the sensor when you are finished.
Analog potentiometer calibration and testing
Section titled “Analog potentiometer calibration and testing”There are two different calibration processes for an analog potentiometer: range calibration and zeroing. Both processes are completed on the logger. Instructions for calibration are here
Note that the order you read the end points matters for range calibration. The first reading must be the ‘zero travel’ end of the range. In most setups, this will be with the potentiometer fully extended. The second reading must be the ‘full travel’ end, usually with the potentiometer fully compressed. This matters because the logger uses the information to infer whether sensor output increases or decreases with travel.
Zeroing sensors on the bike is not strictly necessary since the software can guess zero from the minimum travel seen. However, I recommend zeroing. It’s super reliable and takes less than 30 seconds. Make sure the suspension is at full extension when zeroing: forks especially don’t always rest at fll extension.
Open the Sag Helper and switch to percentage mode. Sit on the bike and confirm that the sag percentages look about right.
AS5600 String Pot (Analog)
Section titled “AS5600 String Pot (Analog)”This sensor configuration is intended for use with the BODAQS string potentiometer design, a multi-turn string pot using an AS5600 magnetic encoder. At the time of writing the design is still in testing and has not been published.
AS5600 chips can be read either as I2C devices or as analog devices. This section covers configuration as an analog device.
Wiring is generally the same as for other analog devices, but with some additional caveats:
- The general rule that
+and-can be reversed for analog devices does not apply here. An AS5600 is fundamentally a digital device, even if it can emulate an analog one. - The AS5600’s GPO pin must be connected to
+when in analog mode. -The AS5600’s DIR pin must be connected to either+or ’-’ (not left floating). In analog mode it’s generally easiest to tie it to+.
String potentiometer configuration (analog)
Section titled “String potentiometer configuration (analog)”Connect to the logger configuration web interface and navigate to the Sensors page, as described in the User Guide Add a new sensor of type AS5600 string pot (analog). Give it a helpful name, for example front_shock or rear_shock. Click ‘Edit’ to edit the sensor configuration.
Set configuration options for the sensor:
- Set
Analog inputto the AIN where the signal wire is connected. - Set
Output modetoLINEAR. EnableInclude raw column. - Measure the actual travel of the potentiometer. Set
Sensor full travel (mm)to the measured value. - Set
Installed rangeto the maximum travel of the thing you are measuring (usually a fork or shock). Note that ‘installed range’ does not directly affect the measurements made by the logger, but is needed if you want to use the logger’sSag Helper. - Set the usage metadata. The
primary quantityfor string pots is always ‘disp’ (they measure displacement). Setendtofrontorrear.Primary domainshould usually besuspension, even for the front wheel (BODAQS considers all wheel travel to be vertical travel, so front suspension travel and wheel travel aren’t the same). - Leave the calibration data unchanged. Calibration is done through the logger and these values are set automatically.
- Leave the ‘wrapping’ data unchanged.
Save the sensor when you are finished.
String potentiometer calibration and testing (analog)
Section titled “String potentiometer calibration and testing (analog)”Use the same calibration and testing procedure as for an analog potentiometer.
I2C Sensors
Section titled “I2C Sensors”I2C sensors use four wires:
| Sensor wire | Connects to |
|---|---|
VCC | Logger 3.3 V |
GND | Logger Ground |
SDA | Logger SDA for the chosen bus |
SCL | Logger SCL for the chosen bus |
BODAQS loggers have two independent I2C buses, numbered 0 and 1. Each bus can have multiple I2C devices connected to it. Every device on the same I2C bus needs a unique address.
See Sensor Overview to locate these pins on the logger. See Wiring and Connector Tips for practical wiring advice.
AS5600 Angle Sensor
Section titled “AS5600 Angle Sensor”This sensor configuration is intended for use with AS5600 magnetic encoders used to measure an angle of less than one full turn. A common application is measuring the rotation of a rear suspension linkage in order to calculate wheel travel.
Wiring is generally the same as for other I2C devices. The AS5600’s DIR pin must be connected to either + or ’-’ (not left floating).
AS5600 angle sensor configuration
Section titled “AS5600 angle sensor configuration”Connect to the logger configuration web interface and navigate to the Sensors page, as described in the User Guide Add a new sensor of type AS5600 angle (I2C). Give it a helpful name, for example front_shock or rear_shock. Click ‘Edit’ to edit the sensor configuration.
Set configuration options for the sensor:
- Set
I2C bus. Normally for AS5600 sensors this will be 1 to avoid address conflict with the logger’s fuel gauge on I2C0. LeaveI2C addressunchanged. - Set
Output modetoLINEAR. EnableInclude raw column. - Set
Installed rangeto the maximum rotational travel of the thing you are measuring (usually a linkage). Note that ‘installed range’ does not directly affect the measurements made by the logger, but is needed if you want to use the logger’sSag Helper. - Set the usage metadata. The
primary quantityfor rotary sensors is always ‘ang_disp’ (they measure angular displacement). Setendtofrontorrear.Primary domainshould usually besuspension. - Leave the calibration data unchanged. Calibration is done through the logger and these values are set automatically.
- Generally leave the ‘other’ data unchanged at its default values.
Save the sensor when you are finished.
AS5600 angle sensor calibration and testing
Section titled “AS5600 angle sensor calibration and testing”AS5600 angle sensors require zeroing. The process is completed on the logger. Instructions for zeroing are here
Open the Sag Helper and switch to percentage mode. Sit on the bike and confirm that the sag percentages look about right.
AS5048B Angle Sensor
Section titled “AS5048B Angle Sensor”This sensor configuration is intended for use with AS5048B magnetic encoders used to measure an angle of less than one full turn. A common application is measuring the rotation of a rear suspension linkage in order to calculate wheel travel.
In addition to wiring 3V3, GND, SCL and SDA to their matching inputs on the logger:
- The AS5048’s 3V3 and 5V pins must be connected together
- The A1 and A2 pins must each be connected either to 3V3 or GND, with the combination chosen determining the device’s I2C address.
AS5048B angle sensor configuration
Section titled “AS5048B angle sensor configuration”Connect to the logger configuration web interface and navigate to the Sensors page, as described in the User Guide Add a new sensor of type AS5048B angle (I2C). Give it a helpful name, for example front_shock or rear_shock. Click ‘Edit’ to edit the sensor configuration.
Set configuration options for the sensor:
- Set
I2C busandI2C address. Choose the bus you are going to connect the sensor to. Choose the address based on how you have wired pins A1 and A2 on the sensor. - Set
Output modetoLINEAR. EnableInclude raw column. - Set
Installed rangeto the maximum rotational travel of the thing you are measuring (usually a linkage). Note that ‘installed range’ does not directly affect the measurements made by the logger, but is needed if you want to use the logger’sSag Helper. - Set the usage metadata. The
primary quantityfor rotary sensors is always ‘ang_disp’ (they measure angular displacement). Setendtofrontorrear.Primary domainshould usually besuspension. - Leave the calibration data unchanged. Calibration is done through the logger and these values are set automatically.
- Generally leave the ‘other’ data unchanged at its default values.
Save the sensor when you are finished.
AS5048B angle sensor calibration and testing
Section titled “AS5048B angle sensor calibration and testing”Use the same calibration and testing procedure as for an AS5600 angle sensor.
AS5600 String Pot (I2C)
Section titled “AS5600 String Pot (I2C)”This sensor configuration is intended for use with the BODAQS string potentiometer design, a multi-turn string pot using an AS5600 magnetic encoder. At the time of writing the design is still in testing and has not been published.
AS5600 chips can be read either as I2C devices or as analog devices. This section covers configuration as an I2C device.
Wiring is generally the same as for other I2C devices. The AS5600’s DIR pin must be connected to either + or ’-’ (not left floating).
String potentiometer configuration (I2C)
Section titled “String potentiometer configuration (I2C)”Connect to the logger configuration web interface and navigate to the Sensors page, as described in the User Guide Add a new sensor of type AS5600 string pot (I2C). Give it a helpful name, for example front_shock or rear_shock. Click ‘Edit’ to edit the sensor configuration.
Set configuration options for the sensor:
- Set
I2C bus. Normally for AS5600 sensors this will be 1 to avoid address conflict with the logger’s fuel gauge on I2C0. LeaveI2C addressunchanged. - Set
Output modetoLINEAR. EnableInclude raw column. - Measure the actual travel of the potentiometer. Set
Sensor full travel (mm)to the measured value. - Set
Installed rangeto the maximum travel of the thing you are measuring (usually a fork or shock). Note that ‘installed range’ does not directly affect the measurements made by the logger, but is needed if you want to use the logger’sSag Helper. - Set the usage metadata. The
primary quantityfor string pots is always ‘disp’ (they measure displacement). Setendtofrontorrear.Primary domainshould usually besuspension, even for the front wheel (BODAQS considers all wheel travel to be vertical travel, so front suspension travel and wheel travel aren’t the same). - Leave the calibration and wrapping data unchanged. Calibration is done through the logger and these values are set automatically.
- Leave the ‘async_rate_hz’ data unchanged.
Save the sensor when you are finished.
String potentiometer calibration and testing (I2C)
Section titled “String potentiometer calibration and testing (I2C)”Use the same calibration and testing procedure as for an analog potentiometer.
UART sensors
Section titled “UART sensors”UART sensors use four logical wires:
| Logger wire | Connects to sensor | Notes |
|---|---|---|
3.3V | VCC | |
GND | GND | |
TX | RX | UART transmit and receive cross over. |
RX | TX | UART transmit and receive cross over. |
DAN-F10N GPS (UART)
Section titled “DAN-F10N GPS (UART)”Use the DAN-F10N GPS (UART) sensor type for an external u-blox based GPS module connected to
the logger UART.
Connect:
| GPS pin | Logger connection |
|---|---|
VCC | 3.3 V |
GND | Ground |
TX | Logger RX |
RX | Logger TX |
DAN-F10N GPS configuration
Section titled “DAN-F10N GPS configuration”Connect to the logger configuration web interface and navigate to the Sensors page, as described in the User Guide Add a new sensor of type DAN-F10N GPS (UART). Give it a helpful name, like ‘GPS’. Click ‘Edit’ to edit the sensor configuration.
Set configuration options for the sensor:
- Leave the
UART_portset to 0. BODAQS loggers only have one UART connection. - Leave the
baudrate at 38400. - Set
update_rate_hz. This is the rate at which the GPS will update. 10hz (10 samples per second) is the maximum supported by the DAN-F10N GPS module. - Leave the remaining settings unchanged.
Save the sensor when you are finished.
DAN-F10N GPS testing
Section titled “DAN-F10N GPS testing”The GPS module does not require any calibration. After a GPS sensor is configured (and the logger restarted) tts status appears on the OLED idle screen:
GPSmeans the logger has a usable fix......means the receiver is present and acquiring.NOGPSmeans the receiver is absent, in error, muted, or not producing usable data.
While the web interface or upload mode is active, GPS acquisition will be deferred. After configuration, turn Wi-Fi off or restart the logger and give the receiver a clear sky view before judging fix performance.