You have a DM!
Answer there please.
Update on Antenna mod in practice
(Photos taken upstairs on a second floor. Antenna pointed at ceiling vent.)
@8bitRobot. this is really crafty of you, but I donāt know if Iād recommend other users doing itā¦ Weāre only selling 4G phones to our US customers after the Kickstarter ended because of all the problems 2G connection has over there
Most companies are dropping 2G/3G. I have to walk a little bit farther outside to actually get connected(4G). The antenna might help the connection, but it doesnāt make the connection stronger. It gets weaker by thinning it out. Thatās why Iāve modified the antenna.
I havenāt fully formulated a new one, but I am working on modifying it. So far, my efforts are working, but in testing and in the very young stages.
AT+CNSMOD?
+CNSMOD: 0,8
OK
I appear to be connecting to LTE with Ting.
AT+CSQ
+CSQ: 19,99
OK
I appear to have alright signalā¦not perfect, but certainly not THAT bad. Here is another useful command to run to see more details about your current connection information. In fact, itās probably the most comprehensive single status commandā¦but the output format changes a little depending on network type:
AT+CPSI?
+CPSI: LTE,Online,310-260,0x7C97,15555074,89,EUTRAN-BAND4,2300,5,5,-144,-1094,-753,11
OK
According to the documentation:
If camping on a lte cell:
+CPSI: <System Mode>,<Operation Mode>,<MCC>-<MNC>,
<TAC>,<SCellID>,<PCellID>,<Frequency Band>,<earfcn>,<dlbw>,
<ulbw>,<RSRQ>,<RSRP>,<RSSI>,<RSSNR>
So, here in North Texas, LTE is showing up and connecting with a Ting or T-Mobile SIM, but as I noted in my other threads, calls canāt be made or received (in app or manually via debug). SMS does work* (*Iām still hunting the āsending hangā issue in software, as manual debug commands send and acknowledge without fail every time ).
That said, when I attempt to send ATD###########; I get told NO CARRIER after a long delay. So, back to the drawing board. This happens with both Ting and T-Mobile, so it isnāt isolated to a āTing doesnāt do 4Gā issue or anything like that. Likely regional spectrum licensing garbage is what causes this widely variable result for each of us. Youāll still find top-tier smartphones in the US not supporting all carriers/bands, even when unlockedā¦itās a mess. Itāll only get worse as 5G rolls outā¦smaller geographic cell sites, more slicing and dicing of frequencies, a new wave of āspecialā agreements on exclusive tower placements, etc.
I tried forcing UMTS/WCDMA mode and I get absolutely no connection to the towerā¦so there must not be any 3G coverage where Iām at. Doesnāt surprise me. T-Mobile has to use what little spectrum they have here for 4G because Iām in the city.
@frankprindle are you in a more rural or less-dense suburban area? Iām originally from PA, where I used to do tower rigging for T-Mobile. I know that in much of PAās more rural areas, T-Mobileās 4G still isnāt fully available (surprising, I know) due mostly to issues in propagating mid-band frequencies. Verizon has a bit of a stranglehold in PA, even moreso than AT&T has here in TXā¦there are still plenty of municipality exclusivity agreements in place in the smaller towns, precluding other carriers from putting towers up, spare around the very outer edges of an exclusivity territory.
Iām going to try an AT&T prepaid SIM. At least that will eliminate signal strength as a potential cause for me. They pretty much own TX and have towers seemingly every 50 feet. I should get excellent signal even inside.
Honestly, I donāt know that weāll ever get to a point where a SIMCOM module will work flawlessly with all the carriers in every little corner of the USā¦Qualcomm invests millions in R&D keeping up with the US spectrum landscape, and even they struggle to cram all the necessary bands and technologies into a single module (and they charge handsomely for that effort). I suspect we will each just have to try to find the ābestā (as in signal strength and coverage) carrier in our respective areas and stick with them. It sucks to find ourselves limited to potentially more expensive service options, but we are talking about an educational prototyping build with a far less robust module and antenna than the thousand-dollar smartphone you might be reading this on. Itās not all that surprising that we find ourselves having trouble using the underdogs and MVNOs in some areasā¦āyou get what you pay for,ā I suppose.
Wow, thatās quite a finding! With T-Mobile, all I get here with AT+CPSI? is:
AT+CPSI?
+CPSI: WCDMA,Online,310-260,0x8785,46467012,WCDMA PCS 1900,134,637,0,15.0,115,6,65535,500
Iām suburban Philadelphia, not exactly what youād call rural! And I know that T-Mobile LTE works here because I have an iPad with cellular that connects OK to T-Mobile LTE. Itās not the strongest signal, one or two bars on the iPad, so maybe the issue with the Ringo is that its antenna is not optimal for the LTE signal. Even the UMTS that Iām getting above is only showing 0-1 bars on the Ringo (better when I take it to other places).
I just looked up my address again on the T-Mobile coverage map (the old one that shows everything, not the new one that only shows LTE) and it shows 4G-LTE to be weak indoors here, so could be the problem. Here is what I get:
The 7600A doesnāt do 600 or 700 MHz, and the 2100 is weak. When I go to a strong nearby supermarket area, it could well be using VoLTE but I canāt carry a USB serial terminal with me and the damn SIM Debug app only prints the response to the serial terminal, so who can tell what I get there.
Yeah, it would be helpful if the SIM Module Debug also output its results to the LCD for mobile diagnostics. I just picked up an ATT prepaid SIM and will begin testing with it to see what I get.
EDIT: Iāve made a small breakthrough in the last 12 hours. Got a lot to unpack and write up, but Iāll get it posted soon. For now, set aside what Iāve said belowā¦some of it will be easily explained in my next post (AT&T is. the. worst. and not in the way youāre thinkingā¦but more on that later).
Alrightā¦now that I have tried AT&T, T-Mobile AND Ting SIMs with effectively identical results, I can present the following as the case with ALL 3 (see attached monitor output for LINE# references):
- The Loader seems to initially initialize the modem AND connects to a network, as seen at the start of the monitor output (LINE#240: ā+CSQ: 15,99ā & LINE#351 ā+CREG: 0,1ā indicating both reasonable signal and successful registration to home network)
- Then it somehow resets or sends another command and it starts over, this time failing to connect (LINE#1251: ā+CSQ: 99,99ā showing no signal)
- Toggling airplane mode, rebooting a few times, or just letting it sit there asleep for while will usually get the connection up eventually
- NONE of the SIMs Iāve tried have successfully yielded a proper string in response to AT+CSPN? and present merely āā (empty string) in response
- Returning to the lockscreen after successfully having a connection will almost always result in the connection being lost
Iāve been digging through the firmware source all evening. None of the commands Iām seeing being sent to the modem appear wrong or something that would cause this type of symptom. Itās just strange behavior all around. I donāt want to presume a potential bad module, but without being able to produce consistent results in any given direction, itās hard to pin this down to a definitive cause.
Iām going to mentally set this aside for tonight and look at it fresh tomorrow. Maybe something will come to me whilst I sleep.
NOTE: Had to zip it because .txt isnāt permitted?
ModemIssues202006102106.zip (1.3 KB)
Ughā¦alright. Iām going to try to explain this as succinctly as possible while still getting the necessary details across. Iāll try to keep the rambling to a minimum.
So, after 2 visits to the store and 4 phone calls to CS, I finally got the AT&T SIM properly activated. Prior to getting this fixed, I was randomly getting registration denied errors on the modem (AT+CREG=n,3) between successful registrations. Iāll spare you the annoying details of that garbage experience and how AT&T violates the GSM standard for SIM activation. I will say simply say againā¦AT&T is. the. worst.
I also discovered, much to my surprise, that despite AT&Tās near monopoly on cell towers here, I still had a random dead spot in my houseā¦and, of course, this dead zone was right at my damn desk. (Moral of the story: If it werenāt for bad luck, Iād have no luck at all. )
Now that I had this mess sorted out, and relocated myself toā¦well, anywhere else in my house ()ā¦I could truly dive into whatās really going on here, which has a couple facets working in tandem:
-
T-Mobile where I am at will NOT supply any call audio over LTEā¦no matter how strong the signal. I donāt have anything other than LTE available here with T-Mo/Ting so the testing ends there. Iām still digging into the cause of this, but havenāt mastered the AT commands for all that just yet and am still working on it.
-
AT&T works fine on both LTE and WCDMA (I can allow āautoā or force to either) and can make/receive calls so long as there is sufficient signal, and I get call audio no problem.
-
The previous reports of Loader/Lockscreen init modem, gaining network, then losing it again was a product of the modem dropping connection due to very low signal. So, this is not really an issue, so much as it is a case of minimal status reporting in Loader/Lockscreen to let us know what is happeningā¦not a big deal right now and mostly cosmetic to the user. The airplane toggle just tells the modem to try again after it had already given up. Since a user would typically reorient the phone in some random way while performing this airplane mode toggle, the connection would usually succeed eventually due to nothing more than having better signal in the new orientation
-
AT+CSPN? still presents a null string, even on AT&T with good working connectionā¦but I think this is because the modem looks up network ID in an internal DB and this DB likely just doesnāt contain all the latest US Network IDs-Names in its list. Just a cosmetic issue.
-
The appearance of returning to Lockscreen and it looking like it lost connection is actually the software reporting the āLoadingā¦ā text while it queries AT+CSPN? and doesnāt drop the loading text until it has given up retrieving a valid string. Again, just a cosmetic issue.
Now, youāre wondering about SMSā¦that is its own beast. In fact, it will be the one of the first things I focus on in my fork of the firmware:
- Right now, weāre processing all the SMS transactions āoff-modem,ā meaning we are only using the modem for the real-time sending/receiving of messages and rely on the firmware for real-time processing of SMS data and SD storage (.json) for messages, both inbound and outbound
- Anytime we need to receive a message, we pretty much have to stop whatever else we are doing because all the work needs performed by Ringo in realtime to prevent loss of message data streaming from the modem
- This presents issues when in app/game that doesnāt employ the proper MP libraries, the firmware is busy handling something else, or when using the power button to initiate sleep - wake up is often slightly delayed and a partial, garbled (PDU conversion error), or no message gets received, despite successfully waking up the device
- Bottom Line: The firmware just isnāt always in a position to handle an incoming message in real-time and some or all of the message data is lost due to serial buffer overflows on the modemā¦it starts discarding the oldest buffer data to make room for new data while waiting for the DTR signal to go high.
However, both the SIM7500/7600 and SIM800 (am I missing any other models you ship, @robertCM?) modems support automatic internal processing and storage of incoming SMS - either in modem or on SIM card, meaning we can allow the modem to do most of the heavy lifting when it comes to receiving and storing SMS, only needing to notify the firmware that a message came in, instead of requiring Ringo to also process and store it in real-time. We can still use the .json storage on SD for caching and folders like Archive, Drafts, etcā¦but I think we should lean on the modemās capabilities a bit more. The modem can be told to store messages internally and notify the firmware the storage location ID where it can retrieved. This completely eliminates the chance of messages being lost because the modem only has to keep basic result codes in its TA buffer when the firmware isnāt listening (DTR low), instead of trying to hold onto an entire message (or several).
- Sending SMS can currently very easily hang because messagesApp will wait endlessly for a result code that may never come. This is especially true if the network is spotty or signal is weak. If it hangs and the modem drops connection to the tower while trying to send, I donāt think the modem actually reports this specific conditionā¦so the messageApp can hang forever, until you manually reboot it OR you get, say, an incoming SMS or other modem initiated communication to the firmware that sends the āOKā keyword the sending routine is still waiting for. This particular condition results in full or partial loss of the sending message, received message, or both.
MY CONCLUSION: Since the modem has the capability, why not let it handle as much as it was designed to? Let the modem and network hash out the signal/timing issues with SMS on their own and leave us out of itā¦ājust tell us when youāre done!ā (old hats and retro programmers might recognize the āK.I.S.Sā philosophy at play here ) Soā¦I plan to work up a new version of messagesApp and related MP core function/libraries to accomplish the following changes:
-
SENDING: messagesApp will send the message, but the background task that monitors the modem will actually be in charge of waiting for a send confirmation. This will allow the messagesApp to immediately return control to the user, preventing a stall on delays sending. Once sent successfully, a brief self-dismissing popup will notify the user of success, even if theyāve left messagesApp. If the modem DOES give up and/or report an error, weāll report to user the same way.
-
RECEIVING: In the initial modem init on boot, we specify the necessary options for internal SMS storage and notification. The background monitor will look for this notification instead.
A. When one comes in, we notify the user normally. Weāll retrieve the contents from modem storage for the notification contents
B. When user enters messagesApp, it will refresh the modemās inbox contents at that time. We might cache message data to the SD card by message ID to speed up loading times on previously processed messages, but all newly received messages since last load will be parsed, decoded, cached/shown at that time. The modem supports asking for a list of stored message IDs, and has 4 status types: REC UNREAD (i.e. new message), REC READ, STO UNSENT, and STO SENT. Yes, the modem stores the messages it is sending and the send status, too!
C. Folders will also be added. Inbox, Outbox, and Archive. Inbox will reflect modem storage of received messages, Outbox will reflect modem storage of sent messages, and Archive will allow users to copy messages to SD from the Inbox/Outbox to ensure they arenāt deleted from the modem over time (it discards messages, oldest-first, as new messages come into a full storage medium)
I also plan to rework settingsApp and the background task monitoring the modem to allow for the following, to aid all users in their diagnostics and make it easier to share with others for troubleshooting/fixing:
-
SIM Module Debug will output responses to the LCD in addition to the Serial Monitor. This will allow for proper debugging on the go, so we can eliminate issues like āthereās a dead spot at my houseā as a diagnostic hurdle without having to carry a laptop everywhere
-
Add option to SIM Module Debug that will allow ALL data being exchanged with the modem to be logged to the SD card for later review
-
Add option to Network page to allow user to specify their preferred network tech: Auto, GSM-only, WCDMA-only, LTE-only, etc. For example, I get much better reception on WCDMA with AT&T in my house, but I can only force WCDMA manually in debugā¦otherwise, it tries to keep a much weaker LTE signal that cuts in and out on calls
Again, sorry for the long post. There was a lot to unpack from the last 24 hours of testing, once I got the AT&T SIM working properly. The upshot is, I definitely have a much firmer grasp on how the Ringo handles the modem since I can see working services in action. haha I also now know what my first priorities will be when I fork the firmware to start working on it. My entire travel calendar for 2020 is awash for the obvious reasons, so I have plenty of time on my hands to dive into thisā¦and Iāve been pining for a hobby project I can lose myself in for the next few months so I donāt go stir crazy. Looks like I found it.
Do note that none of the above is meant as any sort of negative criticism of the CircuitMess team. Youāve done a truly great job. I certainly donāt think I could have replicated what youāve accomplished here. As we all continue to learn more about how all this works together (I didnāt even know the modem could store incoming SMS on its own until late last night), there will be plenty of room to build upon the solid foundation you have created. My comments on the firmwareās functionality and how it could be improved are intended to be educational in natureā¦even if my words occasionally come across so dry you need a glass of water to swallow them.
As I fork the firmware and begin working on these things, Iāll create an entirely new topic to track its progress. The repo will be public, so anyone can join in and lend a hand. Iām usually pretty good at properly commenting my codeā¦mostly so I remember what on earth I was thinking at the time.
Cheers!
This was some hardcore troubleshooting @TheWebMachine! Iām glad you ended up figuring it all out.
I also like the ideas you proposed regarding the firmware, Iād be happy to help you test anything out if the need arises.
Thanks! Weāll see how it all works out once I put my changes into action. haha Iāll definitely let you know when I have the first working semi-stable build goingā¦Iāll probably tackle the additional SIM Module Debug stuff first, since that will aid in everything else we try to do.
I really am starting at the very beginning with all thisā¦gotta trying to compile the original firmware to make sure I got that process down first. Arduino is a relatively new platform for meā¦Iām just now getting into all the gooey stuff (firmware/partitions/bootloaders/how the CPU core-bound background tasks work, etc) between those silicon layers.
Whew, youāre really into this deep now! Iāve done a few minor mods to the firmware, but nothing like what youāre exploring. Good luck
FYI, there is a whole thread on how to generate the firmware.bin file from source and then flash it to the Ringo. Itās here:
How to build the firmware.bin file
Start from the top because itās long and complicated. In the 13th post I summarize the process once I had done it successfully. At the time I was seeing some discrepancies but they were simply due to configuration management issues at the Circuitmess end. Theyāve since eliminated most if not all of the warnings, which is a good thing because some of those warnings hid actual coding errors.
Wow, this is amazing! Itās just great how deep you went with this!
These things are really scary because we cannot test them directly since everything works here in Croatia and pretty much every service provider has some of their own ārulesā that they enforce.
Nevertheless, youāll definitely end up on the CircuitMess wall of fame just for this post alone!
If you need any help or additional information, feel free to reach out anytime - weāre more than glad to work on this issue with you especially since this is the only way to fix it!
BIIIIIG cheers,
Robert
I am having the same trouble with my Ringo, and as I was reading through, I saw some issues, and i donāt know which one iām having, or how to fix it.
- 4G Ting doesnāt work?
- Hardware problem?
- Software problem?
- No access to clear skies?
- Conflicting libraries?
- No drivers?
- I need to force 2G to connect to LTE?
- SIM card problem?
- Hasnāt activated yet?
I am having trouble with connecting to the internet AND cellular, so that makes me think I have a hardware problem. Thank you SO much for your help!!
This is your most likely issue. As I mention above, it would appear that Ting no longer works with Ringo in the US (at least, most of the US, as far as I can tell) because Ting now uses T-Mobileās LTE towers/frequencies, which the US modem that ships with Ringo does not seem to support entirely. So far, AT&T is the only US carrier Iāve found that still consistently works with the US variant Ringo modems.
If you have an AT&T SIM or donāt mind picking up a prepaid from an AT&T store, give that a try. If you still have issues, work down the rest of your list from there.
i am using the Ting sim also . I am in New Jersey close to New York . I have 2 of these Ringo we just put together . Nieither of them will connect to the network . I have ATT on my iphone , this sim also will not work in the RIngo ,but the TING sim will work in my iphone so i know the sim is good .
I would like to send them back to have you guys look at these 2 , please let me know the address , ill use DHL or postal if want.
Hi @balagary
Iām sorry this happened to you, but donāt worry. Letās fix it asap.
Could you please send a few photos of your soldering to see if anything can be fixed there?
Also, please check if you inserted the sim card correctly. The golden pins should be facing upwards like in this last step in the Ringo build guide.
Stay in touch!
-Marija from CircuitMess
Soldering looks good ā¦ ive been soldering for 40 plus years ( even this week starting doing some microsoldering too ) probable should have cleaned up the flux a bit . One is mine and one is my daughters ā¦ both have different problems ā¦ like I said before , I donāt mind sending them over to you to troubleshoot and repair / letting us know what was wrong .
Sim card is in correctly ā¦ I swapped it for my ATT card from my iphone and same problem. I put the card you sent me in my iphone and the card does work fine .
only lets me send 1 photo here ā¦ i can email if you would like
Hi @balagary,
Thanks for getting back to me! Could you please send more photos to contact@circuitmess.com? Iāll be waiting for your email over there and weāll see if sending your Ringo to our office is the best option
Talk to you soon!