Add a gigabit Ethernet capability - #284
Merged
Merged
Conversation
The X7 wires its three user ports for gigabit and the rest for 100 megabit. No peripheral needs the speed today, but one may, and a port that has it should be able to say so. Ports state what they speak, so a gigabit port lists this and Ethernet both, and a device needing Ethernet without caring about the speed goes on requiring Ethernet alone. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Adds a new guest port capability enum value to represent gigabit Ethernet support on ports, extending the protocol model so future peripherals can require (and ports can advertise) 1 Gbit/s Ethernet explicitly while keeping existing ETHERNET compatibility unchanged.
Changes:
- Added
GUEST_PORT_CAPABILITY_ETHERNET_1G = 7toGuestPortCapabilityinmessage_formats.proto.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
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.
Adds
GUEST_PORT_CAPABILITY_ETHERNET_1G = 7.The X7 wires its three user ports for gigabit Ethernet and the remaining three for 100 megabit. Nothing in the catalogue needs gigabit today, but a future peripheral may, and a port that has it should be able to say so.
How it fits the model
Capabilities are independent statements about a port, and compatibility is a plain subset test. This adds nothing to that: a gigabit port speaks 100 megabit as well, so it lists Ethernet and gigabit both, and the two entries are simply two true things about it — no implication a consumer has to know about, and no ordering in the model.
The practical consequence is that nothing changes for anything that exists. All twenty Ethernet peripherals go on requiring
ETHERNETand go on fitting every port that has it, at either speed. A peripheral that genuinely needs the bandwidth would requireETHERNET_1Gand resolve to the three ports that offer it.Ports are given the same treatment in BluEye-Robotics/libguestport#386, which also carries a correction: GP4 has 100 megabit Ethernet, which the port table had recorded as none.
🤖 Generated with Claude Code