I feel your pain. I tried to get started months ago with logging_to_envirodiy and gave up. I believe the code is at too high a level to understand what is going on, what’s working and what’s not. You really need to get some “bring-up” software in place to be able to write AT commands and see the XBee respond. That’s why I went with the software noted above and then wrote my own. Here are a few specific suggestions:
1. Get an antenna for your XBee. I don’t think it will ever connect without one.
2. Get the Digi manual for your chip: Digi XBee3® Cellular LTE-M/NB-IoT, https://www.digi.com/resources/documentation/digidocs/PDFs/90002258.pdf. Read as much as you can stand. You are going to reference it over and over.
3. Make sure you have TinyGSM library installed in your libraries folder
4. Start with the “Diagnostics.ino” sketch under libraries/TinyGSM/Diagnostics. Set the right parameters.
5. No doubt it will fail quickly – so you can write your own AT commands to start getting some response from your modem. ex.
modem.sendAT(GF(“AP”)); // test airplane mode
modem.waitResponse(200,at_out) ; // response will be 0=off or 1=on
modem.sendAT(GF(“AM0”)); // set airplane mode off
6. Have “TinyGsmClientXBee.h” and “TinyGsmClient.h” open in an editor to see what routines “Diagnostics.ino” is using and what AT commands are set.
7. Little-by-little you will start to understand all the things that have to be done in what order to get the modem to work AND what things are failing and why.
I can send you my code that works for me if you want. Write me at email@example.com