|
From: | Ben Hilburn |
Subject: | Re: [Discuss-gnuradio] [GSOC] A HTML-based GUI for GNU Radio: Draft of proposal |
Date: | Mon, 20 Mar 2017 19:48:17 -0400 |
Regarding the proposal, as Martin and Bastian said, this is looking really good. Expanding a bit on the point about being "all-in" on Bokeh, that's not necessarily a bad thing, but it would be good to understand exactly where the line is between Bokeh and GNU Radio. If someone came along after you to implement something in a different web framework, would they start in the same place as you are starting, now, or would they build on something you are creating? If there is a way to architect this such that can be built on with non-bokeh frameworks later, that would be preferable to locking everything down.Created new window in existing browser session.handler caught exception: Set changed size during iterationTraceback (most recent call last):File "/home/bhilburn/usr/lib64/python2.7/site-packages/gnuradio/ gr/gateway.py", line 55, in eval try: self._callback()File "/home/bhilburn/usr/lib64/python2.7/site-packages/gnuradio/ gr/gateway.py", line 160, in __gr_block_handle ) for i in self.__out_indexes],File "/home/bhilburn/usr/lib64/python2.7/site-packages/htmlgui/ time_sink_f.py", line 62, in work self.ds.stream(new_data, rollover = 1000)File "/usr/lib/python2.7/site-packages/bokeh/models/sources.py", line 287, in stream self.data._stream(self.document, self, new_data, rollover, setter) File "/usr/lib/python2.7/site-packages/bokeh/core/property/contai ners.py", line 345, in _stream hint=ColumnsStreamedEvent(doc, source, new_data, rollover, setter))File "/usr/lib/python2.7/site-packages/bokeh/core/property/contai ners.py", line 106, in _notify_owners for (owner, prop) in self._owners:RuntimeError: Set changed size during iterationthread[thread-per-block[2]: <block time_sink_f (1)>]: SWIG director method error. Error detected when calling 'feval_ll.eval'
Hi Kartik,
great proposal and it seems that Bokeh really provides all the required features.
As far as I understand, you would use an architecture similar to the one shown in the user guide
http://bokeh.pydata.org/en/latest/docs/user_guide/server. html#connecting-with-bokeh- client
Then the GNU Radio flow graph feeds data to the Bokeh server, which distributes and syncs the data in the client’s browsers.
As Martin already mention, that would mean that we are really all-in Bokeh. So I guess the biggest question is if that’s a good idea. If we, at some point, find out that Bokeh has (performance) problems, there might not be a lot of code that can be reused. Do you know if Bokeh is tuned towards high data rates and frequent updates? Maybe it would be a good idea to also ask for feedback from the Bokeh guys and see what they think about this particular use-case.
The alternate architecture would be to have a more generic GNU Radio block that starts a web server and streams the incoming samples through web sockets (using Flask, for example). This would make the HTML frontend independent from the plotting library. We could, for example, have a Bokeh time sink and a Plotly frequency sink. Apart from that, we would not have to rewrite everything if we want to change the plotting library. Did you consider this architecture?
Best,
Bastian
> On 19 Mar 2017, at 21:18, Kartik Patel <address@hidden> wrote:
>
> Dear Martin,
>
> Thank you for the comments.
>
> FG in GRC will be same as the current one. Instead of including QT blocks, you will have to include HTML blocks. Also, the Options blocks will have one option called Web GUI which will enable the web portal.
>
> I agree with your point about the name of gr-bokeh . Only thing I am unsure about is, it does not represent the purpose. So, we can make it gr-bokehgui or gr-bokweb if that is fine.
>
> Also, I will add acknowledgement details in my final PDF. Thank you for the reminder.
>
> Regards,
> Kartik Patel
>
>
>
>
>
--> On Sun, Mar 19, 2017 6:40 AM, Martin Braun address@hidden wrote:
> Also, please make sure you have acknowledged all the formalities, and
>
> provide details on how you would like to update the community on a
>
> regular basis.
>
>
>
> -- M
>
>
>
> On 03/18/2017 05:59 PM, Martin Braun wrote:
>
> > Kartik,
>
> >
>
> > this is a pretty good draft for a proposal! You have all the relevant
>
> > bits, and your previous contributions to GNU Radio are noted.
>
> >
>
> > One thing I'm not fully understanding is the workflow. Is it true that
>
> > the FG generation in GRC is the same as before? If so, can I run this
>
> > entire thing from within GRC (it would open a browser, but otherwise can
>
> > I execute it from GRC)?
>
> >
>
> > You've called your OOT both gr-webgui and gr-htmlgui, but that's a minor
>
> > issue. I'm wondering if gr-bokeh wouldn't be more apt; it seems like
>
> > your choice of framework is pretty central to the code (that's OK), but
>
> > what if someone else implements gr-webgui using fancy other framework XYZ?
>
> >
>
> > Cheers,
>
> > Martin
>
> >
>
> > On 03/14/2017 09:07 AM, Kartik Patel wrote:
>
> >> Hello,
>
> >>
>
> >> I am Kartik Patel, undergraduate student from Indian Institute of
>
> >> Technology Roorkee. I am interested in the project /A web based GUI for
>
> >> GNU Radio/.
>
> >>
>
> >> Here
>
> >> <https://github.com/kartikp1995/GSoC2017/blob/ >[1]master/WebBasedGUIForGNURadio. md
>
> >> is the first draft of my proposal for the project. I have tried to cover
>
> >> the background, the output as well as the flow of implementation. Kindly
>
> >> review it and provide your valuable suggestion. In particular,
>
> >> suggestions on the timeline, the defined scope of the project and
>
> >> implementation overview is highly appreciated. Also, please ask any
>
> >> query that is not exactly covered in the proposal. I can answer that and
>
> >> also add it in the proposal.
>
> >>
>
> >> Thank you for your help.
>
> >>
>
> >> Regards,
>
> >> Kartik Patel
>
> >>
>
> >> [1]
>
> >> https://github.com/kartikp1995/GSoC2017/blob/ master/WebBasedGUIForGNURadio. md
>
> >>
>
> >>
>
> >>
>
> >> _______________________________________________
>
> >> Discuss-gnuradio mailing list
>
> >> address@hidden
>
> >> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
> >>
>
> >
>
> >
>
> > _______________________________________________
>
> > Discuss-gnuradio mailing list
>
> > address@hidden
>
> > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
> >
>
>
>
>
>
> _______________________________________________
>
> Discuss-gnuradio mailing list
>
> address@hidden
>
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>
>
> _______________________________________________
> Discuss-gnuradio mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Dipl.-Inform. Bastian Bloessl
GitHub/Twitter: @bastibl
https://www.bastibl.net/
_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
test-output.png
Description: PNG image
[Prev in Thread] | Current Thread | [Next in Thread] |