(GSM) SIM800L v2.0 EVB USSD Not Consistent (+ckt recommendations)

Hi guys!

I'm currently doing great progress with my work on our electrical overloading monitoring system. These are all thanks for all the documentation I've found online.

So our alert forwarding module is the SIM800L v2.0 GSM module and I need to check the remaining balance of the mounted SIM card from time to time. I've done messaging, calling, USSD, it all works - all except for the USSD (partially only).

My problem regarding the USSD feature is that it's only outputting the responses seen in the first picture. During another instance, the same code worked for me while displaying the results in the second picture. I'm not sure where I'm being wrong here.

The wiring setup is also attached. I'm also looking forward to get some suggestions regarding the hardware circuit. I only included a 4700uF electrolytic cap across the GSM module's input pins (as good practice considered from a post I've seen here in Arduino).

Can anyone please help? I'm also reading the manual but can't understand about the ME functionality nor find anything relevant on the internet about it. I'm also testing the responsiveness of the module by typing the AT commands thru the serial monitor using another code.

Thank you guys!

firstpicture(b).png