Torch WIFI page resets between access and battery indicator appears?

I noticed that my profile name had an underscore edited it out, no change. I see that the same thing that I started this post about is happening again, the phone accesses the wifi connection of the Torch, I switch to the browser, (I tried in Chrome and Safari, same effect) the data populates the webpage and as soon as the battery icon displays the data drops to mostly nil in the fields of the webpage. Could this be a cache issue?

So this can not be a coincidence, I pulled out my Facets, one is set up as a base and the other a rover. The same issue? The rover has a wifi connection with the correct info on the webpage, with all my profiles for the unit, the base unit has the same lack of data, only Profile 1 and Profile 2 is 12345678901234567890, neither of which is selected, when the profile is selected erroneous data is displayed and if saved will overwrite the correct information.

My Facets are running v4.3 very odd that both units acting as Base (Torch and Facet) cannot connect and both Rovers have no issues connecting?

Hi Mike (@mgphoto ),

Wow. This is a puzzle… A lot of the web config code is common to RTK Firmware and RTK Everywhere. I suspect there’s something in your profile which is causing issues but, right now, I can’t identify it.

Profile 1 : Profile1 and Profile 2 : 12345678901234567890 are defaults set in the web config index.html (link). They should be being overwritten with the settings values passed by the firmware. If they’re not, it means something has broken during the settings transfer before it gets to that point.

If you can, please try the following:

Connect to one of your problematic units over Serial
Open the menu
Enter ā€œs W x xā€ to start the web server
Please send me the big blob of text you see after the web config starts. It should look like the following:

newSettings len: 3747
platformPrefix,Torch,rtkFirmwareVersion,d99.99,gnssFirmwareVersion,UM980 Firmware: 17548 ID: ff27f4968a0728dd,gnssFirmwareVersionInt,17548,deviceBTID,Device Bluetooth ID: 32F2,antennaHeight_mm,1800,antennaPhaseCenter_mm,116.50,coordinateInputType,0,fixedAltitude,1560.0890,fixedEcefX,-1280206.568,fixedEcefY,-4716804.403,fixedEcefZ,4086665.484,fixedLat,40.090294790,fixedLong,-105.185057610,observationSeconds,60,observationPositionAccuracy,5.00,shutdownNoChargeTimeoutMinutes,0,enableBeeper,true,bluetoothRadioType,2,correctionsSourcesLifetime,30,correctionsPriority_External Radio,0,correctionsPriority_ESP-NOW,1,correctionsPriority_LoRa Radio,2,correctionsPriority_Bluetooth,3,correctionsPriority_USB Serial,4,correctionsPriority_TCP (NTRIP),5,correctionsPriority_L-Band,6,correctionsPriority_IP (PointPerfect/MQTT),7,enableEspNow,false,espnowPeerCount,0,espnowPeer_0,00:00:00:00:00:00,espnowPeer_1,00:00:00:00:00:00,espnowPeer_2,00:00:00:00:00:00,espnowPeer_3,00:00:00:00:00:00,espnowPeer_4,00:00:00:00:00:00,autoFirmwareCheckMinutes,1440,enableAutoFirmwareUpdate,false,enableNtripClient,false,ntripClientCasterHost,rtk2go.com,ntripClientCasterPort,2101,ntripClientCasterUser,test@test.com,ntripClientCasterUserPW,,ntripClientMountPoint,bldr_SparkFun1,ntripClientMountPointPW,,ntripClientTransmitGGA,true,enableNtripServer,false,ntripServerCasterHost_0,rtk2go.com,ntripServerCasterHost_1,,ntripServerCasterHost_2,,ntripServerCasterHost_3,,ntripServerCasterPort_0,2101,ntripServerCasterPort_1,2101,ntripServerCasterPort_2,2101,ntripServerCasterPort_3,2101,ntripServerCasterUser_0,test@test.com,ntripServerCasterUser_1,,ntripServerCasterUser_2,,ntripServerCasterUser_3,,ntripServerCasterUserPW_0,,ntripServerCasterUserPW_1,,ntripServerCasterUserPW_2,,ntripServerCasterUserPW_3,,ntripServerMountPoint_0,bldr_dwntwn2,ntripServerMountPoint_1,,ntripServerMountPoint_2,,ntripServerMountPoint_3,,ntripServerMountPointPW_0,WR5wRo4H,ntripServerMountPointPW_1,,ntripServerMountPointPW_2,,ntripServerMountPointPW_3,,rebootMinutes,0,autoKeyRenewal,true,geographicRegion,0,pointPerfectDeviceProfileToken,,pointPerfectService,0,profileName,Profile1,dynamicModel,0,minElev,10,dataPortBaud,115200,enableGnssToUsbSerial,false,radioPortBaud,57600,enableTcpClient,false,tcpClientHost,,tcpClientPort,2948,enableTcpServer,false,tcpServerPort,2948,tcpOverWiFiStation,true,enableUdpServer,false,udpServerPort,10110,udpOverWiFiStation,true,enableGalileoHas,true,enableMultipathMitigation,true,enableTiltCompensation,true,constellation_BeiDou,true,constellation_Galileo,true,constellation_GLONASS,true,constellation_GPS,true,constellation_QZSS,true,wifiConfigOverAP,true,wifiNetwork_0SSID,,wifiNetwork_0Password,,wifiNetwork_1SSID,,wifiNetwork_1Password,,wifiNetwork_2SSID,,wifiNetwork_2Password,,wifiNetwork_3SSID,,wifiNetwork_3Password,,useLocalizedDistribution,false,localizedDistributionTileLevel,5,useAssistNow,false,requestKeyUpdate,false,enableLora,false,loraCoordinationFrequency,910.000,loraSerialInteractionTimeout_s,30,enableNtripCaster,false,baseTypeSurveyIn,true,baseTypeFixed,false,fixedBaseCoordinateTypeECEF,true,fixedBaseCoordinateTypeGeo,false,measurementRateHz,2.00,lastState,0,profileNumber,0,profile0Name,1: Profile1,profile1Name,2: ,profile2Name,3: ,profile3Name,4: ,profile4Name,5: ,profile5Name,6: ,profile6Name,7: ,profile7Name,8: ,wifiConfigOverAP,1,tcpOverWiFiStation,1,udpOverWiFiStation,1,minCNO,10,enableRCFirmware,false,sdFreeSpace,0 B,sdSize,0 B,sdMounted,false,hardwareID,64B7083E32F203,daysRemaining,No Keys,geodeticLat,54.00000000,geodeticLon,-1.00000000,geodeticAlt,108.191,ecefX,3000000.000,ecefY,-90000.000,ecefZ,5000000.000,radioMAC,64:B7:08:3E:32:F0,logFileName,,batteryIconFileName,src/Battery2_Charging.png,batteryPercent,+66%,

Please send it as-is, without modification. You can send it in a Private Message if needed, if you want to keep your location and passwords private.

Thanks - I’m grateful for all the time you’re devoting to this,
Paul

@PaulZC , I sent you a PM with my results from your request, incase it helps.

Excellent - thank you Ryan,

If Mike sends me the same info, I can do a detailed compare and contrast.

The only thing that jumps out at me from your message is that you are putting the Torch into web config mode after opening the menu. If I understand correctly, the menu is still open when you double-tap? I can’t immediately see why that would cause problems, but clearly something unexpected is happening… I’ll investigate on Monday.

Thanks again,
Paul

Hi Ryan (@rftop ) :

Here’s a partial explanation for some of the strange behaviour you reported in your PM:

If you have the Serial Menu open, the firmware is (intentionally) trapped in a loop which services the menus. You need to exit the menu before any requested state changes are applied.

Doing a Torch double-tap while you have the menu open, requests a state change to web config. But it would only actually go into web config once you exit the menu.

To go into web config through the menu, you need to type ā€œs W x xā€. I.e. open the system menu, request the state change to web config, exit the menu ("x x "). Only then does the state change to web config actually happen.

Doing the Torch double-tap while you have the menu open is the same as pressing ā€œWā€. But you need to exit the menu to actually go into web config. And you haven’t done the equivalent of the ā€œx xā€. This is why the SSID does not appear for you when you perhaps expect it to.

That doesn’t explain everything you’re seeing, but it is part of it.

I don’t know if this is related to Mike’s issue. Possibly? But I suspect Mike’s issue is more to do with settings / profile corruption. But exactly where that’s happening, I’m not sure.

More later - probably Monday,
Paul

Thanks @PaulZC , No worries on my end…it’s not causing me any issues. Was mostly attempting to see if I could help in any way to sort-out Mike’s.

Thanks @rftop : I’ve opened an issue for the double-tap behaviour here:

Hi Mike (@mgphoto ),

Thank you for forwarding your Facet output by Private Message.

I have done some analysis on it and something very weird is going on… It contains no empty text fields. There are no double-commas anywhere in the ā€œnewSettingsā€. Let me explain:

Using the default settings for RTK Firmware on Facet 4.3, the ā€œnewSettingsā€ blob contains:

ntripServer_CasterHost_0,rtk2go.com,ntripServer_CasterPort_0,2101,ntripServer_CasterUser_0,test@test.com,ntripServer_CasterUserPW_0,,ntripServer_MountPoint_0,bldr_dwntwn2,ntripServer_MountPointPW_0,WR5wRo4H,ntripServer_CasterHost_1,,ntripServer_CasterPort_1,0,ntripServer_CasterUser_1,,ntripServer_CasterUserPW_1,,ntripServer_MountPoint_1,,ntripServer_MountPointPW_1,,

Note especially the ntripServer_CasterHost_1,, . The double comma indicates that ntripServer_CasterHost_1 hasn’t been defined and is an empty string.

But in the output you sent, I see:

ntripServer_CasterHost_0,rtk2go.com,ntripServer_CasterPort_0,2101,ntripServer_CasterUser_0,...............@gmail.com,ntripServer_CasterUserPW_0,none,ntripServer_MountPoint_0,p.....1,ntripServer_MountPointPW_0,none,ntripServer_CasterHost_1,ntripServer_CasterPort_1,0,ntripServer_CasterUser_1,ntripServer_CasterUserPW_1,ntripServer_MountPoint_1,ntripServer_MountPointPW_1,

Note the single comma after ntripServer_CasterHost_1, ntripServer_CasterUser_1, etc..

This is really confusing…

The web config won’t be able to interpret those settings at all. The missing empty strings throw everything out of alignment.

Maybe it’s due to the way you pasted the output into your message?

Or maybe there is a much deeper issue in the code where those empty strings have been corrupted and have no NULL-terminator. Perhaps the web config has corrupted them previously, and we’re seeing the result of that?

The pvtClientHost, shows the same issue - a single comma, not double.

Forgive me for asking, but have you edited the ā€œSFE_Facet_Settings_n.txtā€ profile file by hand at any point? I’m just wondering if something went wrong then.

I’d be grateful for your thoughts or insight on this.

I’d be grateful too if you could send the same data from your Torch. (You sent the Facet data twice, I’m not sure if that was intentional?)

Many thanks,
Paul

Hey Paul,

I have been making changes to the profiles using a serial connection usually, rarely using the web config, if I do it is for a simple change. I will copy the sd card to my computer before making any changes to my profiles, if something goes wrong I can copy that problematic file back to the card.

I sent you the Facet ā€œblobā€ twice as the first showed 0.0.0.0 on the display and the second showed the correct IP address, I thought it might be of interest. I will send you the Torch output today.

Thanks again for your help,

Mike

@mgphoto- Thank you for all your excellent reporting, and most importantly your patience!

Can we go back a little bit: can you explain why there are so many Bluetooth connect/disconnects? After the factory reset on the Torch output that you posted above?

Bluetooth SPP and BLE broadcasting as: Torch Rover-FD96
STATE_ROVER_NOT_STARTED → STATE_ROVER_NO_FIX
Batt (100%): Voltage: 8.33V Charging: 7.51%/hr
Rover Accuracy (m): 0.000, SIV: 0 GNSS State: No Fix
Tilt sensor configuration complete
BT client connected
BT client disconnected
BT client connected
Rover Accuracy (m): 0.000, SIV: 0 GNSS State: No Fix
BT client disconnected
BT client connected
BT client disconnected
BT client connected

Those disconnects are very odd and I cannot explain what would cause them. Do you have a tablet that is trying to auto-reconnect or something?

Notes to myself: the ā€˜Mobile’ profile fails to config the UM980 (below). After that, all bets are off and nothing is going to work, including Bluetooth.

Profile ā€˜Mobile’ loaded

Fuel gauge configuration complete

Charger configuration complete

Signal group 2 command failed

Resetting UM980 to complete configuration

Resetting UM980 to complete configuration

Resetting UM980 to complete configuration

UM980 failed to configure

Below, switching profiles back to ā€˜OPUS_LOCAL’ profile, config is not re-attempted because of the limited config (this is a bad thing, and is being worked on with some new config code). But at at least GNSS comm comes up and the device can operate.

Profile ā€˜OPUS_LOCAL’ loaded

Fuel gauge configuration complete

Charger configuration complete

UM980 configuration maintained

The Torch (UM980 based) needs improved config handling (I’m working on this). The RTK Everywhere product base needs a more robust web config (I think the release candidate has most of the remaining v2.2 issues fixed). We need more testing of profile switching via serial and web config.

The RTK Facet product use a completely different GNSS receiver and codebase so we need to be careful that we don’t see similar things but assume they are related. They may have similar symptoms, but they come from different root causes. To get you the best support, let’s pick the product that you need the most support with and pin that down. Do you need to trouble shoot the Torch or the Facet? From there, help us, from a factory reset, re-create the issue so that we can fix it.

Hello Sparky,

I was trying to find out the BT Connect/Disconnect issue, it was still there after a number of firmware installs. I’m not sure I see it now.

I sent the Facet info as it is the easiest to recover from as the profiles can be saved and reinstalled.

When I did the testing on the Torch I hadn’t seen the mention of the firmware reset in the uploader. The testing I did was creating profiles in position 1 and position 8, I also looked at placing data in position 2 and it returned the correct reference Torch Base xxxx**. When testing in position 3 there were major issue, blue light on, not blinking without a connection.

I have the units working but config I rely on for the Facets has been Serial Bluetooth, which doesn’t work with the Torch, (I assume because of the Dual BT) so I’ve been using the Serial USB Terminal.

My biggest issue at this point is I have to tell the Torch to go into Caster because it insists on starting as a Rover, I need to get the cable out and attach the Android device.

This morning I decided to test something and now nothing works, the frustration factor is off the charts when you can not see what is happening within the Torch as you can on the Facet.

Stick with the Torch as there are a few workarounds with the Facet.

Thanks again for your help,

Mike

Well my bad, couldn’t tell it was in config mode in the bright sunlight. Getting LoRa corrections I believe.

This morning I decided to test something and now nothing works, the frustration factor is off the charts when you can not see what is happening within the Torch as you can on the Facet.

I’m really sorry and this is completely understandable!

To clarify, I don’t think erasing the ESP32 firmware is the issue. In all my years of messing about with ESP32s, I’ve done a ā€˜full erase’ them less than a dozen times, and these were only needed while working on some very fringe WiFi+ESP-NOW settings. Use the GUI uploader to update or switch between RTK Everywhere (or RTK Surveyor) firmware versions, but I don’t think erasing the ESP32 is necessary.

I have the units working but config I rely on for the Facets has been Serial Bluetooth, which doesn’t work with the Torch, (I assume because of the Dual BT) so I’ve been using the Serial USB Terminal.

What do you see when attempting to use Bluetooth SPP for config?

Use any method you feel works best for you, but I just re-checked, Serial Bluetooth on Torch works fine for me for config using Bluetooth Serial Terminal on Android. Please let me know what you’re seeing as this is curiously/possibly related to the Bluetooth Connect/Disconnect we were seeing earlier. You are correct in that Facet is single Bluetooth (SPP or BLE) while Torch is dual (SPP and BLE) but we have no reports of problems connecting or configuring a device over SPP.

In v2.2, Bluetooth is stopped and restarted when switching from Rover to Base. Perhaps this is what you are experiencing. Do note that we have an improvement (hopefully) in the release candidate that allows Bluetooth to continue to run when switching between Rover and Base.

My biggest issue at this point is I have to tell the Torch to go into Caster because it insists on starting as a Rover, I need to get the cable out and attach the Android device.

This is a great place to start:

  • What firmware version are you running? v2.2 or d2.3 (what date?)
  • Are you running a fixed base or surveying-in?
  • Are you running WiFi to connect as an NTRIP Server or are you using one of the built-in radios?

What I tried:

  • Firmware: v2.2
  • Factory Reset
  • After boot, Enabled NTRIP Server and entered WiFi credentials
  • Changed to Base from System menu and exited the menu system
  • The device runs a survey, then connects to WiFi and then NTRIP Caster
  • Power down. Then Power up.
  • Device starts in Base Survey In mode.
  • Survey starts shortly after a settle period.
  • Base begins transmitting over WiFi to RTK2Go
  • bldr_dwntwn2 appears on RTK2GO’s caster list shortly after

Are you primarily using LoRa for Base/Rover communication or other?

Hello Sparky,

When I try to connect to the Torch via Serial Bluetooth Terminal the window shows Connecting to Torch Rover-FD96… and returns Connection Failed: gatt status 133.

When connecting using Classic Bluetooth the error I receive is Connection failed: read failed, socket might closed or timedout, read ret:-1

Casters are both working and casting the base position and corrections to the rovers.

In this case I have one Profile that I use, turning the ECEF coordinates on when testing in that position, which I obtained using the Facet logs and producing an OPUS solution, hence the name OPUS_Local, switching to survey in when moving positions.

I tried d2.3 but ran into problems as soon as I loaded it. Rolled back to v1.2 and moved forward incrementally but I still ran into connection issues, so the firmware wipes. I am at v2.2 using the 17548 UM980 build and the RTK_Torch_STM32_LoRa_v2_0_2.bin file.

I am testing the LoRa range in the local area.

Getting a fix 3 miles out.

Mike

When I try to connect to the Torch via Serial Bluetooth Terminal the window shows Connecting to Torch Rover-FD96… and returns Connection Failed: gatt status 133.

This will happen when Android OS gets confused about what interface a given device wants to use. I recommend you unpair the Torch, remove it from the phone as completely as you can, and pair again with the Torch.

In this case I have one Profile that I use, turning the ECEF coordinates on when testing in that position, which I obtained using the Facet logs and producing an OPUS solution, hence the name OPUS_Local, switching to survey in when moving positions.

I tried d2.3 but ran into problems as soon as I loaded it. Rolled back to v1.2 and moved forward incrementally but I still ran into connection issues, so the firmware wipes. I am at v2.2 using the 17548 UM980 build and the RTK_Torch_STM32_LoRa_v2_0_2.bin file.

Just to cross i’s and dot t’s, d2.3, v1.2, and v2.2 are all good for Torch but will utterly confuse a Facet so let’s couch Facets for now.

I am at v2.2 using the 17548 UM980 build and the RTK_Torch_STM32_LoRa_v2_0_2.bin file.

Getting a fix 3 miles out.

This is a good setup and good results!

And so I can replicate your setup, are you doing temp bases (survey in) or fixed?

Fixed ECEF.

Base Caster Mode - SIV: 0

From your previous posts, it looks like you are using Base Caster mode, is that correct?

Tried setting the WiFi Config mode to WiFi from AP and the unit did not like it at all.

Yes to RTK2GO and Emlid

rtk2go.com mount point: potint1