Skip to content

Conversation

justanetworkgeek
Copy link

@justanetworkgeek justanetworkgeek commented Sep 29, 2025

Locally merged two branches by accident so this became one but essentially this PR:

  • Adds more handling options for C program stack dumps (controller and telnet)
  • Adds bc to dockerfile for libxenon so it doesn't have to be installed each time for a kernel compile if dockerized toolchain is used
  • changes the default hostname set from the LWIP driver to MACADDRESS-xenon to be unique for each console. This should help with DHCP and local DNS resolution. Specifically addressing flaky DHCP problems.
  • Changes the MAC address reported by the LWIP driver to have colon separators. Display purposes only.

usb_do_poll();

// Read UART char or telnet
switch(getch()){
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

getch() is blocking as defined in the UART functions, so the get_controller_data part of the loop wouldn't be hit after the first attempt. Should probably check if kbhit() first.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for catching I will fix that!

@justanetworkgeek
Copy link
Author

Further testing

  • DHCP works stably now on my network if I use various switches but didn't it before. Hostname always gets properly detected and rebound to existing DHCP leases. Previously only worked sometimes OR if console was plugged directly into router.
  • telnet_console works to acknowledge a C program stack dump as do UART and controller
  • verified MAC address colon separators appear fine when the function is called from libxenon

@InvoxiPlayGames this is all I had planned to contribute in this PR for your information. Please merge if tested on your side and satisfactory.

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.

2 participants