---
title: "W55RP20 Netbios example"
url: "https://maker.wiznet.io/Aimee0/projects/w55rp20-netbios-example/"
markdown_url: "https://maker.wiznet.io/Aimee0/projects/w55rp20-netbios-example/md"
type: "WCC: WIZnet Created Content"
author: "Aimee"
author_url: "https://maker.wiznet.io/Aimee0/"
original_author: "Aimee"
published: "2024-11-26"
language: "en"
hardware: ["WIZnet W55RP20-EVB-Pico"]
likes: 0
views: 1615
comments: 0
source: "WIZnet Makers (https://maker.wiznet.io/)"
---

# W55RP20 Netbios example

> This is an example of a Netbios name service protocol implementation.

Original author: Aimee

## Components

- **WIZnet W55RP20-EVB-Pico** x 1 ([docs](https://wiznet.io/products/powered-by-raspberry-pi/w55rp20-evb-pico))

## Documents and links

- [W55RP20 netbios example](https://github.com/WIZnet-ioNIC/WIZnet-PICO-C/tree/main/examples/netbios) (code)

## Article

github link : <https://github.com/WIZnet-ioNIC/WIZnet-PICO-C/tree/main/examples/netbios>

### Netbios?

NetBIOS is a software interface and associated protocol that facilitates communication between computers on a network. Originally designed for LAN environments, it provides features like file sharing, name resolution, and session management. NetBIOS is primarily used in Windows networking and operates over TCP/IP through an implementation called NetBIOS over TCP/IP.

### How to test Netbios example

**Setup board configuration**

Setup board to W55RP20_EVB_PICO in CMakeLists.txt in WIZnet-PICO-C/ directory.

```plaintext
# Set board
#set(BOARD_NAME WIZnet_Ethernet_HAT)
#set(BOARD_NAME W5100S_EVB_PICO)
#set(BOARD_NAME W5500_EVB_PICO)
set(BOARD_NAME W55RP20_EVB_PICO)
#set(BOARD_NAME W5100S_EVB_PICO2)
#set(BOARD_NAME W5500_EVB_PICO2)
```

**Setup network settings**

Setup network configuration such as IP in 'w5x00_netbios.c' which is the Netbios example in 'WIZnet-PICO--C/examples/netbios/' directory.

```plaintext
/* Network */
static wiz_NetInfo g_net_info =
    {
        .mac = {0x00, 0x08, 0xDC, 0x12, 0x34, 0x56}, // MAC address
        .ip = {192, 168, 11, 2},                     // IP address
        .sn = {255, 255, 255, 0},                    // Subnet Mask
        .gw = {192, 168, 11, 1},                     // Gateway
        .dns = {8, 8, 8, 8},                         // DNS server
        .dhcp = NETINFO_STATIC                       // DHCP enable/disable
};
```

```plaintext
#define NETBIOS_BOARD_NAME     "W55RP20"             /*Define the NetBIOS name*/
#define NETBIOS_PORT           137                  /*The default port for the NetBIOS name service*/
```

**Build & Run**

If the Netbios example works normally, you can see network information.

![](https://maker.wiznet.io/upload/ckeditor5/665356002%5F1732629309%2Epng)

Send search netbios command in PC.

```plaintext
# Linux
nmblookup -U 192.168.11.2 W55RP20
```

If search command's name and name on Raspberry Pi Pico, W5100S-EVB-Pico, W5500-EVB-Pico, W55RP20-EVB-Pico, W5100S-EVB-Pico2 or W5500-EVB-Pico2 is correct, you can see the receive name on terminal.

![](https://maker.wiznet.io/upload/ckeditor5/665356002%5F1732629324%2Epng)

![](https://maker.wiznet.io/upload/ckeditor5/665356002%5F1732629328%2Epng)

You can see NBNS packet in wireshark log.

![](https://maker.wiznet.io/upload/ckeditor5/665356002%5F1732629340%2Epng)

---

Source: https://maker.wiznet.io/Aimee0/projects/w55rp20-netbios-example/
