---
title: "how to make W55RP20-S2E-1.1.4 source code generated boot.uf2 and app_linker.uf2 files working"
url: "https://maker.wiznet.io/forum/15720"
markdown_url: "https://maker.wiznet.io/forum/15720/md"
type: "Forum topic"
category: "Serial-to-Ethernet & ConfigTool"
author: "UrviShah"
created: "2025-05-06T14:28:34+09:00"
last_activity: "2025-06-03T20:04:45+09:00"
language: "en"
views: 11
replies: 12
source: "WIZnet Makers forum (https://maker.wiznet.io/forum/)"
---

# how to make W55RP20-S2E-1.1.4 source code generated boot.uf2 and app_linker.uf2 files working

## Question

Asked by UrviShah on 2025-05-06 in Serial-to-Ethernet & ConfigTool.

Hi Everyone,

I am using w55RP20-EVB-PICO for S2E application. I downloaded ''W55RP20-S2E_Bin_Files_V114'' containing Boot.uf2 and App_linker.uf2 and at the same time I also downloaded source code for same i.e. ''W55RP20-S2E-1.1.4.zip'' folder from wiznet's github.

When I directly copy downloaded Boot.uf2 and then App_Linker.uf2 in W55RP20, it is working. But when I tried to build/compile source code and then copy both uf2 files generated from compilation, it is not working.

Kindly guide me for how make compiled uf2 files working with device?

## Replies

### Reply 1 by Aimee0, 2025-05-07

Please configure the build environment according to the **"Development environment configuration"** section in the ReadMe.

- pico-sdk version: 2.0.0

- ARM GCC Toolchain: 13.2.Rel1

Additionally, please follow the instructions in **Section 9.2 "Building on MS Windows"** of the following document to set up the build environment:
<https://datasheets.raspberrypi.com/pico/getting-started-with-pico.pdf>

After building, you can run the program using the `Boot/Boot.uf2` and `App/App_linker.uf2` files.

### Reply 2 by UrviShah, 2025-05-07 (in reply to reply 1)

I have followed all steps as mentioned in "**Build and Operation Guide for W55RP20-S2E (Serial to Ethernet)**" i.e. given link: <https://maker.wiznet.io/mason/projects/build-and-operation-guide-for-w55rp20-s2e-serial-to-ethernet/>

Make note that I am not editing any of code part. I am following the correct sequence for loading the firmware - first Boot.uf2 and then App_linker.uf2.

What is the meaning of building bootloader and application components? Right now I am building complete **W55RP20-S2E project. **Even after successful compilation and generation of Boot.uf2 and App_linker.uf2, I am unable to run device (i.e. not getting ping/ search, etc.)

### Reply 3 by Aimee0, 2025-05-08 (in reply to reply 1)

What is the meaning of building bootloader and application components?

-> The W55RP20-S2E project consists of boot code and application code to enable firmware updates via Ethernet, even after the module has been installed in the field without requiring JTAG or USB connections. You can check the flash memory map where the firmware is loaded through the link below.

<https://github.com/WIZnet-ioNIC/W55RP20-S2E/blob/main/port/boot/platform_handler/inc/flashHandler.h>

After loading Boot.uf2 and App_linker.uf2, you can verify that the system is working by checking the debug messages through the Pico board’s GPIO0 (UART_TX) and GPIO1 (UART_RX), as shown in the figure below. (Baudrate: 921600)

```plaintext
[INFO] main : Hello Bootloader
[INFO] load_boot_DevConfig_from_storage : MAC = FFFFFFFFFFFF
[INFO] device_bank_check : fw_data = 0x20042000
jump addr = 0x10020000
[INFO] <0> load_DevConfig_from_storage [C0] : MAC = FFFFFFFFFFFF
[INFO] <0> DATA0_UART_Configuration [C0] : serial_option->flow_control = 0
[INFO] <0> DATA0_UART_Configuration [C0] : data_bits = 8, stop_bits = 1, parity = 0
[INFO] <0> DATA0_UART_Configuration [C0] : baud = 115200
[INFO] <0> check_mac_address [C0] : INPUT MAC ?
```

### Reply 4 by UrviShah, 2025-05-12

Thank you **Aimee0** for reply.

I tried to debug as you suggested and what messages I received, given below:

[INFO] main : Hello Bootloader
assertion "!enabled || irq_has_handler(IO_IRQ_BANK0)" failed: file "C:/Users/abc/.pico-sdk/sdk/2.1.1/src/rp2_common/hardware_gpio/gpio.c", line 189, function: gpio_set_irq_enabled

How to solve this error as I have not modified any of source code downloaded from the github zip folder.

### Reply 5 by Aimee0, 2025-05-13 (in reply to reply 4)

If you download the project as a ZIP file from GitHub, the directories for submodules inside the `libraries` folder will be empty. You must manually download and add the required submodules. It is recommended to use **Pico SDK version v2.0.0**.

Alternatively, to download the project including submodules, clone the Ethernet examples using the following Git command.

```plaintext
/* Change directory */
// change to the directory to clone
cd [user path]

// e.g.
cd D:/WIZnet-PICO

/* Clone */
git clone --recurse-submodules https://github.com/WIZnet-ioNIC/W55RP20-S2E.git
```

### Reply 6 by UrviShah, 2025-05-13

Hi,

I downloaded i.e. cloned using this command only:

`git clone --recurse-submodules `[`https://github.com/WIZnet-ioNIC/W55RP20-S2E.git`](https://github.com/WIZnet-ioNIC/W55RP20-S2E.git)

I again verify that my pico sdk version is 2.0.0

With all these setup its giving me errors.

### Reply 7 by Aimee0, 2025-05-13 (in reply to reply 6)

Could you kindly confirm if this is the same error as before?

[INFO] main : Hello Bootloader
assertion "!enabled || irq_has_handler(IO_IRQ_BANK0)" failed: file "C:/Users/abc/.pico-sdk/sdk/2.1.1/src/rp2_common/hardware_gpio/gpio.c", line 189, function: gpio_set_irq_enabled

It looks like this error is related to using Pico SDK version 2.1.1.

Could you kindly try setting the environment variable using the following command and rebuilding the project?

```plaintext
export PICO_SDK_PATH=./libraries/pico-sdk
```

If the same error still occurs, we would appreciate it if you could clean the build directory completely and try building again.

If the issue is not resolved, could you please send the full error log and details about your build environment to **aimee@wiznet.io**?

### Reply 8 by UrviShah, 2025-05-20

[INFO] main : Hello Bootloader
assertion "!enabled || (raw_irq_mask[get_core_num()] & (1u&lt;&lt;gpio)) || callbacks[get_core_num()]" failed: file "D:/abc/Projects_Backup/Wiznet/W55RP20/W55RP20-S2E/libraries/pico-sdk/src/rp2_common/hardware_gpio/gpio.c", line 190, function: gpio_set_irq_enabled

I modified my settings.json file and included below lines:
"cmake.configureEnvironment": {
"PICO_SDK_PATH": "${workspaceFolder}/libraries/pico-sdk"
}

In vs code terminal powershell window when i run command "**echo $env:PICO_SDK_PATH**" it gives me path as "D:\abc\Projects_Backup\Wiznet\W55RP20\pico-sdk"

How to verify or reconfigure exact pico-sdk path to build and run successfully...

### Reply 9 by Aimee0, 2025-05-26 (in reply to reply 8)

I recommend trying the following two methods.

1)

remove build folder

rebuild with this command in vs code terminal powershell window

```plaintext
$ mkdir build
$ cd build
$ cmake -DPICO_SDK_PATH="(W55RP20-S2E project directory)/libraries/pico-sdk" -G "NMake Makefiles" ..
$ nmake
```

2)

remove build folder

run command

```plaintext
$ export PICO_SDK_PATH=(W55RP20-S2E project directory)/libraries/pico-sdk
$ echo $env:PICO_SDK_PATH    #check
```

and rebuild

### Reply 10 by UrviShah, 2025-05-28

Hi Aimee0,

I have successfully compiled my S2E code. I bought Raspberry Pi debug probe for debugging purpose of source code. I use SWD connection between debugger and W55RP20 board.

Using VSCode, i am trying to debug my S2E code which was compiled successfully. But as there are two .uf2 files viz. Boot.uf2 and App_linker.uf2, how to debug actual S2E application in vscode?

My project application requirement is: S2E application (as already given) in addition with some GPIO handling (as per my project requirement) that are available on W55RP20 board. So I want to modify S2E source code and make some changes to handle some of the GPIOs as per my requirements.

Could you guide me through this?

### Reply 11 by Aimee0, 2025-05-30 (in reply to reply 10)

Since the Boot code only runs during the initial boot-up, the actual functionality of your application is handled in the App code. So, for your case, you can focus on modifying and debugging just the App code.

To add your GPIO features, we recommend adding a separate task within the App code where you can implement the desired GPIO control logic.

If you're looking for more customized firmware support, contact us at **direct@wiznet.io**.

We can provide customization service to change the initial settings of the product, change the MAC address, add various protocols, and add functions.

### Reply 12 by UrviShah, 2025-06-03 (in reply to reply 10)

Hi **Aimee0,**

I tried to contact at **direct@wiznet.io **but no response.

I want some customization in W55RP20-S2E code as per my project requirement. And for that i need to debug App.c code.

I have successfully compiled W55RP20-S2E source code in VSCode.

-> But unable to debug code

-> also the uf2 files generated by compiling code (i.e. boot.uf2 and App_linker.uf2) unable to search/ ping device. It's like my compiled uf2 files are not working in device.

I wonder no body face this type of problem that i am facing ??? OR nobody has any solution regarding my problem???

Kindly guide me through this.

---

Source: https://maker.wiznet.io/forum/15720
