Switch to IPv4 zeroconf, add test framework with discovery test, fix serial enumeration

This commit is contained in:
Ian Gulliver
2026-04-07 06:58:39 +09:00
parent b8c0e6be66
commit e60479bad8
14 changed files with 308 additions and 33 deletions

View File

@@ -6,13 +6,10 @@ std::string_view firmware_name = "picomap";
static constexpr uint16_t PICOMAP_DISCOVERY_PORT = 28777;
static constexpr std::array<uint8_t, 16> picomap_discovery_ip = {
0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x70, 0x69, 0x63, 0x6f, 0x6d, 0x61, 0x70, 0x00,
};
static constexpr std::array<uint8_t, 4> picomap_discovery_ip = {239, 0, 112, 109};
static constexpr std::array<uint8_t, 6> picomap_discovery_mac = {
0x33, 0x33, 0x6d, 0x61, 0x70, 0x00,
0x01, 0x00, 0x5e, 0x00, 0x70, 0x6d,
};
static constexpr handler_entry handlers[] = {
@@ -27,10 +24,10 @@ int main() {
w6300::set_socket_dest_mac(sn, picomap_discovery_mac);
w6300::ip_address addr = {};
std::copy(picomap_discovery_ip.begin(), picomap_discovery_ip.end(), addr.ip.begin());
addr.len = 16;
addr.len = 4;
w6300::set_socket_dest_ip(sn, addr);
w6300::set_socket_dest_port(sn, w6300::port_num{PICOMAP_DISCOVERY_PORT});
w6300::open_socket(sn, w6300::protocol::udp6, w6300::port_num{PICOMAP_DISCOVERY_PORT},
w6300::open_socket(sn, w6300::protocol::udp, w6300::port_num{PICOMAP_DISCOVERY_PORT},
w6300::sock_flag::multi_enable);
w6300::socket_id sockets[] = {sn};