CentOS 7 GR 3.7.5.1 wxPython 3.0 Ettus B210 and R820T

Just got this limping around.

  • need CentOS/RHEL baseline for a variety of reasons
  • really rather have WX as other code uses it
  • pybombs did not seem to do the job
  • built from gnuradio git sources
  • UHD 3.7.1
  • osmocore and rtl-sdr gr-osmosdr form osmocom.org
  • needs qwt from EPEL repository
  • needs PyQwt from sourceforge
  • There is a bug in GR with regard to wxPython 3.0 - it will winge about
    “m_window” and fail in any wxgui.

wx._core.PyAssertionError: C++ assertion “m_window” failed at

./src/gtk/dcclient.cpp(2041) in DoGetSize(): GetSize() doesn’t work

without window

There is a workaround for any given application here:
http://imyy.in/blog/?p=26

It seems that this can be made more general by putting it the wxgui
top_block::init itself:

$ diff -btwc …/gr-wxgui/grc/top_block_gui.py.orig
…/gr-wxgui/grc/top_block_gui.py

*** …/gr-wxgui/grc/top_block_gui.py.orig Mon Jul 7 17:28:59 2014

— …/gr-wxgui/grc/top_block_gui.py Sat Nov 8 13:02:32 2014


*** 47,52 ****

— 47,53 ----

              self.Add = self._panel.Add

              self.GridAdd = self._panel.GridAdd

              self.GetWin = self._panel.GetWin
  •             self.Start(False)
    
    
    
        def SetIcon(self, *args, **kwargs): self._frame.SetIcon(*args,
    

**kwargs)

On Sat, Nov 8, 2014 at 4:39 PM, Red G. [email protected] wrote:

  • There is a bug in GR with regard to wxPython 3.0 - it will winge about
    “m_window” and fail in any wxgui.

wx._core.PyAssertionError: C++ assertion “m_window” failed at

./src/gtk/dcclient.cpp(2041) in DoGetSize(): GetSize() doesn’t work

without window

Yes, we’ve known about this but not one has submitted a patch to us to fix
it.

              self.GridAdd = self._panel.GridAdd

Ok, that’s great that there seems to be a fix out there for the WX 3.0
problem. Will this cause any other side effects in the applications?
Will
it work for WX < 3.0?

Tom