Downlink is not working in AS923 (Class A)

I am trying to set up the system using the docker compose approach in Ubuntu. I need to use the device as class A and AS923 (to be used in Hong Kong) settings. I have configured the channels in the config file of network server and I am able to have uplink data from the devices.

However the behaviour is strange for downlink: I enqueue a payload in the Chirpstack web interface, the devices seem recieved the payload when there is uplink data but that downlink data stucks in the queue forever and keep resending when there are uplink data later. Does any one have any clue for how to fix this? The config file I used is show below.

Additional information: I have an old setup using network server 3.10 (installed in Windows, not using docker compose), the downlink functions correctly when I use the same hardware: gateway and devices. But the config file of that network server is strange, basically it is the default settings that is configured as EU868. It looks like that the config file is ignored but anyway this behaviour is not found in the latest docker compose setup that I used.

The NS will only delete the downlink from the queue if the downlink transmission was acknowledged by the gateway (TXACK). Which packet-forwarder are you using and which version?

In my existing gateways, the packet-forwarder is v2.x, I am not able to update them so that seems I need to use old version network server.

When working in AS923 and DR2, the payload cannot exceed 11 bytes