Skip to content

Tags: PhotonVision/photonvision

Tags

Dev

Toggle Dev's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge branch 'main' into 2027

v2026.3.4

Toggle v2026.3.4's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Set raw exposure before setting auto exposure (#2429)

On a Luma P1, autoexposure on first boot was getting overridden with the manual exposure setting. This was traced back to #1814, where the order of setting auto exposure and raw exposure was flipped. This flips it back.

v2026.3.3

Toggle v2026.3.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
bump rubik image (#2424)

v2026.7

Toggle v2026.7's commit message
lint

v2026.3.2

Toggle v2026.3.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Remove NT reconnect loop entirely (#2398)

## Description

Back in
#467 (comment)
and
https://discord.com/channels/725836368059826228/725846784131203222/974498049609056266
we added code to poke our NT client every 5 seconds to "clicking the
save button in the settings window makes Photon show up again over
networktables". Total hack, but it seemed to work. We didn't at the time
dig any deeper in Wireshark or debug-level NT logs.

<img width="1373" height="679" alt="image"
src="https://github.com/user-attachments/assets/8cb2102e-0bae-4bfd-b9ac-55d31f8421b6"
/>

Now, it's 2026. 4 years on from the OG bug. And this code seems linked
to these issues

-
https://www.chiefdelphi.com/t/photonvision-coprocessor-not-sending-data-can-t-change-networking/516356/5
-
https://www.chiefdelphi.com/t/photonvision-network-tables-known-issue/515966

Craig collected these log files as well:


[craig-nt-never-connects.zip](https://github.com/user-attachments/files/26001809/craig-nt-never-connects.zip)

The code path that handles TCP re-connection was also changed entirely
since we first added this workaround. Regardless this hack was not
removed as part of the NT3 to NT4 upgrade:
- pre-NT4, reconnection was handled by `TCPConnector::connect_parallel`
which delegates to `TCPConnector`. This uses raw socket APIs
- post-NT4, reconnect is handled by `ParallelTcpConnector`. This uses
libuv exclusively

@crschardt did some really great debugging with a rio and radio in the
loop with a luma p1. In this test setup, removing this code improves
stability markedly. I'd still like to get this more on robot time, as
well as try to understand from Peter why we might have needed this code
in the first place.

## Changes

- Remove periodic stop/restart of NetworkTables client every 5 seconds
if `NetworkTablesInstance::isConnected` returns false.

## Meta

Merge checklist:
- [ ] Pull Request title is [short, imperative
summary](https://cbea.ms/git-commit/) of proposed changes
- [ ] The description documents the _what_ and _why_, including events
that led to this PR
- [ ] If this PR changes behavior or adds a feature, user documentation
is updated
- [ ] If this PR touches photon-serde, all messages have been
regenerated and hashes have not changed unexpectedly
- [ ] If this PR touches configuration, this is backwards compatible
with all settings going back to the previous seasons's last release
(seasons end after champs ends)
- [ ] If this PR touches pipeline settings or anything related to data
exchange, the frontend typing is updated
- [ ] If this PR addresses a bug, a regression test for it is added
- [ ] If this PR adds a dependency, the license has been checked for
compatibility and steps taken to follow it

---------

Co-authored-by: Craig Schardt <crschardt@fastem.com>

v2026.3.1

Toggle v2026.3.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Bump image version to 2026.1.3 (#2381)

[Release notes for
2026.1.3](https://github.com/PhotonVision/photon-image-modifier/releases/tag/v2026.1.3)
- Provisional orange pi 6 plus image builder by @guineawheek in
PhotonVision/photon-image-modifier#126
- Install usbtop to images by @samfreund in
PhotonVision/photon-image-modifier#129
- Shrunk our Rubik Pi 3 image by @crschardt in
PhotonVision/photon-image-modifier#128

This PR includes a downsized Rubik Pi image and usbtop shipped with the
image for debugging. It also adds the opi6 image (note no OD support
yet; platform is detected as a generic arm64 target).

v2026.2.2

Toggle v2026.2.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release processed Focus mat to not leak, cache, and fix cvmat refcoun…

…ting (#2356)

v2026.2.1

Toggle v2026.2.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Add calibration info tooltip (#2350)

v2026.1.1

Toggle v2026.1.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Set max target limit to 50 (#2320)

## Description

<!-- What changed? Why? (the code + comments should speak for itself on
the "how") -->

<!-- Fun screenshots or a cool video or something are super helpful as
well. If this touches platform-specific behavior, this is where test
evidence should be collected. -->

<!-- Any issues this pull request closes or pull requests this
supersedes should be linked with `Closes #issuenumber`. -->

closes #2318
closes #2319 

For the 2027 game, teams might want to detect more than 10 results.
Therefore, we're increasing the limit.

We also ran into an issue with our sim, where a user can create too many
objects and cause an overflow. We implement that same limit of 50
targets here.

## Meta

Merge checklist:
- [x] Pull Request title is [short, imperative
summary](https://cbea.ms/git-commit/) of proposed changes
- [x] The description documents the _what_ and _why_
- [ ] If this PR changes behavior or adds a feature, user documentation
is updated
- [ ] If this PR touches photon-serde, all messages have been
regenerated and hashes have not changed unexpectedly
- [ ] If this PR touches configuration, this is backwards compatible
with settings back to v2025.3.2
- [ ] If this PR touches pipeline settings or anything related to data
exchange, the frontend typing is updated
- [ ] If this PR addresses a bug, a regression test for it is added

v2026.1.1-rc-4

Toggle v2026.1.1-rc-4's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Propagate changes after modifying OD model (#2299)

## Description

<!-- What changed? Why? (the code + comments should speak for itself on
the "how") -->

<!-- Fun screenshots or a cool video or something are super helpful as
well. If this touches platform-specific behavior, this is where test
evidence should be collected. -->

<!-- Any issues this pull request closes or pull requests this
supersedes should be linked with `Closes #issuenumber`. -->

This PR adjusts how model modification is handled. Any updates to
metadata, or deletion is handled in the frontend after sending data to
the backend. Any creation of models occurs in the backend, and we push
an update to the frontend.

This PR also fixes a typo in PhotonUtils which meant we hit the wrong
endpoint when an IP was passed into the status check.

## Meta

Merge checklist:
- [x] Pull Request title is [short, imperative
summary](https://cbea.ms/git-commit/) of proposed changes
- [x] The description documents the _what_ and _why_
- [ ] If this PR changes behavior or adds a feature, user documentation
is updated
- [ ] If this PR touches photon-serde, all messages have been
regenerated and hashes have not changed unexpectedly
- [ ] If this PR touches configuration, this is backwards compatible
with settings back to v2025.3.2
- [ ] If this PR touches pipeline settings or anything related to data
exchange, the frontend typing is updated
- [ ] If this PR addresses a bug, a regression test for it is added