Skip to content

Comments

Add support for UART to the NET chip#145

Merged
bifurcation merged 10 commits intomainfrom
net-uart
Sep 12, 2025
Merged

Add support for UART to the NET chip#145
bifurcation merged 10 commits intomainfrom
net-uart

Conversation

@bifurcation
Copy link
Collaborator

Fixes #140

To validate performance, I added a Ping and Pong packet types to the NET firmware, and logic to automatically respond to a Ping with a Pong. It works reliably with the modified NET firmware flashed, though it's a bit finicky as to when in the lifecycle of the NET run you send the Ping. I haven't gotten deep enough in the NET firmware to understand what's going on, but it's reliable enough that it seems like the basic UART logic works.

There is a non-trivial conceptual shift here, in that App::handle is now async. This works fine in the ui-stm32 crate, but is causing some trouble in the ui-tauri crate (problems with holding locks on global state across await boundaries). As a result, the UART functionality is not currently implemented in ui-tauri.

@bifurcation bifurcation requested a review from fluffy as a code owner September 12, 2025 02:29
@bifurcation bifurcation merged commit 90d78e5 into main Sep 12, 2025
3 checks passed
@bifurcation
Copy link
Collaborator Author

It turns out we don't really need the async in the transmit direction. If the blocking transmit turns out to be an issue, we can investigate async later.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add support for UART connection to the NET chip

1 participant