Can not send the uplink

I have a problem with heltec. It fails everytime I want to send the uplink to lora Network. The Lorawan settings are same (SF9, EU868). From the code I see that it can not transition to the DEVICE_STATE_SEND state. Any suggestions?
here is screenshot from TTN:


And the code: https://github.com/Mansur04kz/heltec32.git

Does the device report that it hears the Join Accept so that it can then send an uplink?

The most common reason is that the device can’t hear the response from the gateway. The device usually has a less effective antenna than the gateway - so the gateway hears the join request but the device doesn’t hear the join accept. The rather unexpected flip side is the LoRa - LOng RAnge - which means if the device & gateway are too close, it’s not unknown for the gateway’s signal to overpower the RF input on the device. You need 10m + solid wall separation.

Do you have a gateway. If so, what is the RSSI / SNR of the JR?

I don’t have a gateway. I am using Heltec wifi Lora 32 V3. When I was powering up with usb cable from laptop, In serial monitor of Arduino IDE it display: “joining….”. Normally, after this message it shows “Joined” and it operates fine. Funny fact, the whole prototype was working fine 2 days ago, nothing changed, nor code, nor hardware. But now it can not send the uplink.
In The Things Stack, as I said it was showing only “join request” and “join accept”. The Lora setting in TTS: SF9, EU863-870, RX2, Lora specification 1.0.2b.