Conversation
The board page did not say how the case labels relate to iNav ports, or which port the serial receiver uses by default, which is what users ask for when setting a NEXUS X or XR up for a fixed wing or multirotor. Added, all taken from src/main/target/NEXUSX: - board identity, MCU, port and output counts, default features - a table of the built-in sensors with their bus, chip select and interrupt pins, the LEDs and the ADC inputs - a serial port table giving the UART for each case label, so "A" is UART4, "B" is UART6 and "C" is UART3 - the port functions after a reset: MSP on USB and UART1, serial RX with CRSF on UART5, and a note that the pad marked "SBUS" is UART1 RX and not a receiver input by default - the timer groups behind the nine outputs, and the motor mode the target sets on the "ESC" pad - the three I2C buses, including that I2C2 on port "C" only starts when UART3 has no function Details the target definition does not establish, such as the pin order inside the A, B and C connectors and the EXT-V voltage limit, are listed in a closing section instead of being guessed at. Ref: iNavFlight#11326
Raffi1202
marked this pull request as ready for review
September 11, 2026 15:37
Contributor
|
ⓘ Qodo reviews are paused because the subscription is no longer active. Ask your workspace admin to reactivate the subscription to resume reviews. Manage billing |
Code Review by Qodo🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)
Great, no issues found!Qodo reviewed your code and found no material issues that require reviewTip of the day💡 Did you know, you can switch off images and animations for a plain-text comment |
PR Summary by QodoDocument NEXUSX ports, outputs, and I2C buses
AI Description
Diagram
High-Level Assessment
Files changed (1)
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Fixes #11326. Painless360 was setting up a NEXUS-X, had found the output timer maps, but could not find how the case ports "A", "B" and "C" relate to iNav's UARTs, or which port carries the serial receiver by default (he guessed UART5). MrD-RC asked for a page under docs/boards because the case labels only make sense for helicopters. The page
docs/boards/NEXUSX.md(moved from the target README in a8b92b2) lists the pins per case label but says nothing about default port functions, the receiver provider, timer grouping or the I2C2/UART3 exclusion.Cause
docs/boards/NEXUSX.md:17-40on maintenance-10.x contains only the pin tables. The answers sit in the target:src/main/target/NEXUSX/target.h:94-118(UART pins,DEFAULT_RX_TYPE,SERIALRX_CRSF,SERIALRX_UART= USART5),config.c:41(TIM1 forced to motors),src/main/fc/fc_init.c:443-446(I2C2 only started when UART3 has no function) andsrc/main/io/serial.c:123-151(MSP on VCP and UART1 after reset).Change
Extends
docs/boards/NEXUSX.md(+119, -0). Adds a board identity table, a sensor/bus/pin table, a serial port table with case labels ("A" = UART4, "B" = UART6, "C" = UART3, internal ELRS = UART5), the port functions after a reset, the timer groups behind the nine outputs with the "ESC" pad forced to motor mode, and the three I2C buses with the UART3/I2C2 exclusion. A closing section lists what the target source does not establish (connector pin order, EXT-V limit, and whether UART1 releases the AUX/SBUS pads:src/main/drivers/pwm_mapping.c:90-141checks UART2 to UART8 only).Test
Not run on hardware. Every statement was checked against the files named under Cause on maintenance-10.x, plus
src/main/rx/sbus.c:259for the SBUS inversion default. No CI run: the build workflow does not trigger for this path (ci.ymlpull_request.paths); zero check runs on 08dbedd.Flash / RAM
Not measured yet. The upstream firmware CI has not been released for this PR, so no size report exists.
Docs
docs/boards/NEXUSX.mdis the changed file;src/main/target/NEXUSX/README.mdalready points to it.