Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update deck pin allocation table and compatibility matrix #165

Merged
merged 5 commits into from
Mar 1, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
70 changes: 36 additions & 34 deletions src/documentation/system/platform/cf2-expansiondecks.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,23 +130,23 @@ bridges or 0 Ohm resistors and are thus alternative connections. The
idea is to make it possible to re-route a connection if you want to use
two decks where the connections collide.

| | UART1 | UART1 | I2C | I2C | STM32 IO | STM32 IO | STM32 IO | STM32 IO | UART2 | UART2 | SPI | SPI | SPI | nRF51 IO | nRF51 IO | |
| Name | RX1 | TX1 | SDA | SCL | IO1 | IO2 | IO3 | IO4 | TX2 | RX2 | SCK | MOSI | MISO | NIO1 | NIO2 | PWR |
|---------------------------------------------------|-------|-------|-------|-------|----------|--------------|----------|----------|-------|-------|-------|-------|-------|----------|----------|------|
| **{% poplink led-ring-deck %}** | | | | | | PWM | PWM | | | | | | | | | VCOM |
| **{% poplink qi-1-2-wireless-charging-deck %}** | | | | | | | | | | | | | | CHG | | N/A |
| **{% poplink sd-card-deck %}** | | | | | *(CS)* | *(CS)* | *(CS)* | CS | | | SCK | MOSI | MISO | | | VCC |
| **{% poplink loco-positioning-deck %}** | IRQ | RST | | | CS | *(IRQ)* | *(RST)* | | | | SCK | MOSI | MISO | | | VCOM |
| **{% poplink bigquad-deck %}** |*(RX1)*|*(TX1)*|*(SDA)*|*(SCL)*| | PWM | PWM | *(IO)* | PWM | PWM |*(ADC)*|*(ADC)*| *(IO)*| | | N/A |
| **{% poplink buzzer-deck %}** | | | | | | | | | PWM | PWM | | | | | | N/A |
| **{% poplink z-ranger-deck %}, Z-ranger deck V1** | | | SDA | SCL | |*(VL53_IO)* | | | | | | | | | | VCC |
| **{% poplink flow-deck %}, Flow deck V1** | | | SDA | SCL | |*(RST/MOT/IO)*| CS | | | | SCK | MOSI | MISO | | | VCC |
| **{% poplink multi-ranger-deck%}** | | | SDA | SCL | | | | | | | | | | | | VCOM |
| **{% poplink motion-capture-marker-deck %}** | | | | | |*(BTN/IO)* |*(BTN/IO)*| | | | | | | | | N/A |
| **{% poplink lighthouse-deck %}** | RX1 | TX1 |*(SDA)*|*(SCL)*| | | | | | | | | | | | N/A |
| **{% poplink active-marker-deck %}** | | | SDA | SCL | | | | | | | | | | | | N/A |
| **{% poplink ai-deck %}** |*(RX1)*|*(TX1)*| SDA | SCL | BOOT | | | RST |*(TX2)*|*(RX2)*| | | | | | VCOM |
|---------------------------------------------------|-------|-------|-------|-------|----------|--------------|----------|----------|-------|-------|-------|-------|-------|----------|----------|------|
| | UART1 | UART1 | I2C | I2C | STM32 IO | STM32 IO | STM32 IO | STM32 IO | UART2 | UART2 | SPI | SPI | SPI | nRF51 IO | nRF51 IO | |
| Name | RX1 | TX1 | SDA | SCL | IO1 | IO2 | IO3 | IO4 | TX2 | RX2 | SCK | MOSI | MISO | NIO1 | NIO2 | PWR |
|---------------------------------------------------|--------|-------|-------|-------|----------|--------------|----------|------------|-------|-------|-------|-------|-------|----------|----------|------|
| **{% poplink led-ring-deck %}** | | | | | | PWM | PWM | | | | | | | | | VCOM |
| **{% poplink qi-1-2-wireless-charging-deck %}** | | | | | | | | | | | | | | CHG | | N/A |
| **{% poplink sd-card-deck %}** |*(MISO)*|*(SCK)*| | | *(CS)* | *(CS)* | *(CS)* | CS/*(MOSI)*| | | SCK | MOSI | MISO | | | VCC |
| **{% poplink loco-positioning-deck %}** | IRQ | RST | | | CS | *(IRQ)* | *(RST)* | | | | SCK | MOSI | MISO | | | VCOM |
| **{% poplink bigquad-deck %}** |*(RX1)* |*(TX1)*|*(SDA)*|*(SCL)*| | PWM | PWM | *(IO)* | PWM | PWM |*(ADC)*|*(ADC)*| *(IO)*| | | N/A |
| **{% poplink buzzer-deck %}** | | | | | | | | | PWM | PWM | | | | | | N/A |
| **{% poplink z-ranger-deck %}, Z-ranger deck V1** | | | SDA | SCL | |*(VL53_IO)* | | | | | | | | | | VCC |
| **{% poplink flow-deck %}, Flow deck V1** | | | SDA | SCL | |*(RST/MOT/IO)*| CS | |*(RST)*|*(MOT)*| SCK | MOSI | MISO | | | VCC |
| **{% poplink multi-ranger-deck%}** | | | SDA | SCL | | | | | | | | | | | | VCOM |
| **{% poplink motion-capture-marker-deck %}** | | | | | |*(BTN/IO)* |*(BTN/IO)*| | | | | | | | | N/A |
| **{% poplink lighthouse-deck %}** | RX1 | TX1 |*(SDA)*|*(SCL)*| | | | | | | | | | | | N/A |
| **{% poplink active-marker-deck %}** | | | SDA | SCL | | | | | | | | | | | | N/A |
| **{% poplink ai-deck %}** | RX1 | TX1 | SDA | SCL | BOOT | | | RST | TX2 | RX2 | | | | | | VCOM |
|---------------------------------------------------|--------|-------|-------|-------|----------|--------------|----------|------------|-------|-------|-------|-------|-------|----------|----------|------|

Compatibility matrixes
----------------------
Expand Down Expand Up @@ -183,27 +183,29 @@ are normally physically blocking each other are marked as not
compatible.


| | {% poplink led-ring-deck %} | {% poplink qi-1-2-wireless-charging-deck %} | {% poplink sd-card-deck %} | {% poplink loco-positioning-deck %} | {% poplink bigquad-deck %} | {% poplink buzzer-deck %} | bcESP | {% poplink z-ranger-deck %}, Z-ranger V1 | {% poplink flow-deck %}, Flow deck V1 | {% poplink multi-ranger-deck%} | {% poplink motion-capture-marker-deck %} | {% poplink lighthouse-deck %} | {% poplink active-marker-deck %} | {% poplink ai-deck %} |
|----------------------------------------------------|----------|------------|----------|------------------|----------|--------|-------|----------|---------|--------------|-------------------|--------------|---------------|---------|
| **{% poplink led-ring-deck %}** | - | | yes | yes | | yes | yes | | | yes | yes | yes | yes | yes |
| **{% poplink qi-1-2-wireless-charging-deck %}** | | - | yes | yes | yes | yes | yes | | | yes | yes | yes | yes | yes |
| **{% poplink sd-card-deck %}** | yes | yes | - | yes *1 | yes | yes | yes | yes | yes *1 | yes | yes | yes | yes | *4 |
| **{% poplink loco-positioning-deck %}** | yes | yes | yes *1 | - | yes | yes | yes | yes | yes | yes | yes | *2 | yes | no*5 |
| **{% poplink bigquad-deck %}** | | yes | yes | yes | - | | | yes | | yes | yes | *2 | yes | yes |
| **{% poplink buzzer-deck %}** | yes | yes | yes | yes | | - | | yes | yes | yes | yes | yes | yes | yes |
| **{% poplink z-ranger-deck %}, Z-ranger V1** | | | yes | yes | yes | yes | yes | - | | yes | yes | yes | yes | yes |
| **{% poplink flow-deck %}, Flow deck V1** | | | yes *1 | yes | | yes | yes | | - | yes | yes | yes | yes | yes |
| **{% poplink multi-ranger-deck%}** | yes | yes | yes | yes | yes | yes | yes | yes | yes | - | yes | yes | yes | yes |
| **{% poplink motion-capture-marker-deck %}** | yes | yes | yes | yes | yes | yes | yes | yes | yes | yes | - | yes | | yes |
| **{% poplink lighthouse-deck %}** | yes | yes | yes | *2 | *2 | yes | yes | yes | yes | yes | yes | - | | *3 |
| **{% poplink active-marker-deck %}** | yes | yes | yes | yes | yes | yes | yes | yes | yes | yes | | | - | yes |
| **{% poplink ai-deck %}** | yes | yes | *4 | no*5 | yes | yes | yes | yes | yes | yes | yes | *3 | yes | - |
|----------------------------------------------------|----------|------------|----------|------------------|----------|--------|-------|----------|---------|--------------|-------------------|--------------|---------------|---------|

| | {% poplink led-ring-deck %} | {% poplink qi-1-2-wireless-charging-deck %} | {% poplink sd-card-deck %} | {% poplink loco-positioning-deck %} | {% poplink bigquad-deck %} | {% poplink buzzer-deck %} | {% poplink z-ranger-deck %}, Z-ranger V1 | {% poplink flow-deck %}, Flow deck V1 | {% poplink multi-ranger-deck%} | {% poplink motion-capture-marker-deck %} | {% poplink lighthouse-deck %} | {% poplink active-marker-deck %} | {% poplink ai-deck %} |
|----------------------------------------------------|----------|------------|----------|------------------|----------|--------|----------|---------|--------------|-------------------|--------------|---------------|---------|
| **{% poplink led-ring-deck %}** | - | | yes | yes | | yes | | | yes | yes | yes | yes | yes |
| **{% poplink qi-1-2-wireless-charging-deck %}** | | - | yes | yes | yes | yes | | | yes | yes | yes | yes | yes |
| **{% poplink sd-card-deck %}** | yes | yes | - | yes *1 | yes | yes | yes | yes *1 | yes | yes | yes | yes | *4 |
| **{% poplink loco-positioning-deck %}** | yes | yes | yes *1 | - | yes | yes | yes | yes | yes | yes | *2 | yes | *5 |
| **{% poplink bigquad-deck %}** | | yes | yes | yes | - | | yes | | yes | yes | *2 | yes | *6 |
| **{% poplink buzzer-deck %}** | yes | yes | yes | yes | | - | yes | yes | yes | yes | yes | yes | *6 |
| **{% poplink z-ranger-deck %}, Z-ranger V1** | | | yes | yes | yes | yes | - | | yes | yes | yes | yes | yes |
| **{% poplink flow-deck %}, Flow deck V1** | | | yes *1 | yes | | yes | | - | yes | yes | yes | yes | yes |
| **{% poplink multi-ranger-deck%}** | yes | yes | yes | yes | yes | yes | yes | yes | - | yes | yes | yes | yes |
| **{% poplink motion-capture-marker-deck %}** | yes | yes | yes | yes | yes | yes | yes | yes | yes | - | yes | | yes |
| **{% poplink lighthouse-deck %}** | yes | yes | yes | *2 | *2 | yes | yes | yes | yes | yes | - | | *3 |
| **{% poplink active-marker-deck %}** | yes | yes | yes | yes | yes | yes | yes | yes | yes | | | - | yes |
| **{% poplink ai-deck %}** | yes | yes | *4 | *5 | *6 | *6 | yes | yes | yes | yes | *3 | yes | - |
|----------------------------------------------------|----------|------------|----------|------------------|----------|--------|----------|---------|--------------|-------------------|--------------|---------------|---------|

<!-- | led-ring | qi charg | sd-card | loco-positioning | bigquad | buzzer | z-ranger | flow | multi-ranger | mocap marker deck | lighthouse | active marker | ai-deck -->
**Notes:**

1. SPI sharing might limit the logging speed of the uSD-card deck.
2. Could be patched using soldering bridges or can be supported in the future, SW update
3. The GAP8 module is connected to UART1, so if that is enabled there will be conflicts
4. The Micro-SD deck and AI deck both use IO4, the Micro-SD deck needs to be patched to use another IO for Chip Select
5. With a patch or workaround it is possible
6. CPX uses UART2 to communicate with the ESP32 by default, if that is enabled there will be conflicts.
Loading