Hi, sorry to bump up an old thread....
I was having the same problem (signal switches back and forth, causing lags in online games), and searching google everywhere, until I stumbled upon this thread. Mrooze's batch trick worked like a charm...
I registered just to show my appreciation..
K. This is what I came up with at lunch.
A simple little batch file as follows:
Code:
cd\
:start
ping -n 1 -l 1000 google.co.za
ping -n 2 127.0.0.1
goto start
What this does is send 1000 bytes to google (testing revealed that pinging at 940 bytes was sufficient to keep the HSDPA Link open). Then, purely to minimise bandwidth usage, I put in 2 pings to your local machine (This seems to be the most you can do before the HSDPA Link breaks from non-throughput)
These 3 pings run in an infinite loop - so remember to close the thing down, should you try it. I'm guessing the numbers may need to change for different people in different situations. If you're still switching to 3g, try removing the "ping -n 2 127.0.0.1" line. If you're still switching after that, try incrementally increasing the "1000". (1024 = 1kb)
My rough calculations put this batch's usage at around 3mb/hour. It could be a complete failure - I'm going to try gaming with it tonight, and will report back tomorrow.
MrOoze
The problem is, the continuous pings itself hogged down a little of my PC, causing a little lag (not much, but still somewhat annoying in online games). I don't know if it hogged down the connection, or the PC's resources.
So I added some variation to the code.
This is what I did:
- First I ran a ping (to anywhere in the net basically), with the modem beside my LCD monitor (so I can keep track of the LED change)
- As soon as the ping complete, I timed how long it took for the idle process to kick in, while there were no data tansfer. Mine is around 24-25 seconds (maybe vary for other users and ISPs).
- The time above basically means I have about 23 seconds window before the idle process kick in
- So I modified the batch file into:
Code:
:start
ping -n 1 -l 1000 google.co.za
PING 1.1.1.1 -n 1 -w 23000
goto start
So the process now is:
- Ping google.co.za
- Ping 1.1.1.1, which is nothing (fictional IP), and should return RTO
- This is the key: -w 23000 means, if the destination IP is unreachable (which it is), then wait for 23000ms = 23 seconds before continuing the process. In other words, put a pause for 23 seconds before continuing the process
- Run the process all over again.
Tested, without gaming, just to see if it worked. And it worked like a charm. Every 23 seconds, my PC would ping to keep the connection 'alive', and the LED stayed cyan all the time.
Again, thank you Mr.ooze, for the solution....
