1.9  Web browser choice - some issues


Wikipedia has a good comparison of web browsers at:

 https://en.wikipedia.org/wiki/Comparison_of_web_browsers


This lists sixty four web browsers.  Twenty four of these are marked as discontinued.


The underlying technology is stated in the column: Current layout engine.

It is clear that most make use of one of four 'engines', ie: Trident, Bink, Gecko or Webkit.


I have extensively used Mozilla Firefox and Firefox Developer which use the Gecko engine.


Please be aware of two features of these Mozilla Firefox browsers when used with piWebCAT:

  • piWebCAT's slider controls are not ideal for very fine adjustment.
    However, with Firefox, if you click the mouse thumbwheel over the slider tab, you can then use the
    thumbwheel for fine adjustment of the slider position. This is excellent for RIT tuning etc
  • Firefox has a problem with memory leakage. (Approx 50 Mb / hour compared with 1 Mb in Chrome.)
    The problem arises because piWebCAT is running around 20 background web transactions per second.
    These transactions are S meter reads and synchronisation reads for selected controls.
    (By comparison, many web-based applications sit there doing nothing until you hit a key!!)
    After just over 1.5 hours operation, speed has dropped to a level which is still useable but the screen image
    starts to break up. (Raspberry Pi 4B.  Fast PC with i7 processor)
    However, a click of the reset button resets piWebCAT (5 second restart delay)
  • With Google Chrome at  three hours, the browser is still working ok, albeit with about 45% speed.
    Again - a click of the reset button resets the browser.


Memory leaks and associated problems are explained in some detail in section 3.17: Browser choice - memory leaks

Memory leaks are certainly not the sole cause of the slowing.


The issues are well documented on the internet, including the Firefox issue.

I have gone through the software design very carefully, applying all available advice to minimise memory leakage.
I am not alone in failing to completely eliminate it.
The underlying problem is piWebCAT's unrelenting background rate of client server transactions.  


Note that the reset button does not change anything on the rig.
The 5 second delay is mainly due to piWebCAT's controls re copying their corresponding rig settings.