This peaked my interest, as my connection is also crappy. Did you actually manage to make improvements with this data though?
This peaked my interest, as my connection is also crappy. Did you actually manage to make improvements with this data though?
My cable modem provides a status page with info about signal to noise ratio and other stats. I planned on adding more details to the script by scrapping from that page, but it requires a login first and I've never taken the time to learn how to manage that kind of state, as I do most scripty/webby things with raw requests from python's urllib.request module, like a plebian.
If it uses http basic auth, it's even easier: http://docs.python-requests.org/en/master/user/authenticatio...
Requests is a fantastic library.
I did confirm that the SNR varied with temperature, with both daily and long-term cycles, assuming from thermal expansion/contraction in the lines and connections. I also observed dropouts when it rained.
The strangest thing was that there was also a hard 12-hour cycle: every morning and evening, at the same times, the SNR would suddenly drop (in the morning) and go up (in the evening) by several dB. I never figured out what it was, but I always guessed it was some equipment turning on or off that caused interference on the line.
One of the coolest parts actually was simply using GNU `date` to parse dates in natural language, so I could run something like `plotmodem 2 months ago to 1 month ago` to graph the data from the previous month, or `plotmodem 2 weeks` to see the last 2 weeks of data. I used `date` to convert natural-language dates to a standard format which I then parsed out of the CSV files with grep.