Date   
Re: Playback using Webapi

Edouard Griffiths
 

Hello,

in fact you are close the API handling for the file name is also done in filesource.cpp and indeed this appears to be very wrong. 
 
  - first: in FileSource::webapiUpdateChannelSettings which formats the settings from the web message the "fileName" key is not handled
  - second: changing the settings and calling applySettings has no effect because the handling of the file name is not done there (as you noticed).

There is indeed an issue and therefore I have opened this one on Github: https://github.com/f4exb/sdrangel/issues/481

Brgds,
Edouard.

Re: Playback using Webapi

vabanque
 

Edouard,

many thanks for you encouraging reply.

I think I have an idea what the problem is:

Adding a channel in the GUI is a two step process.

Step 1:
Pressing '+' adds a channel of the given type, file source in this case, and lets it unconfigured.
This is done in file sdrgui/mainwindow.cpp:
bool MainWindow::handleMessage(const Message& cmd)

with the message MsgAddChannel.

 
Step 2:
Selecting an input file for the channel configures (loads the sample file) and makes it ready to use.
This is done in file plugins/channeltx/filesource/filesource.cpp:

Selecting an input file for the channel triggers 
bool FileSource::handleMessage(const Message& cmd)
with the message MsgConfigureFileSourceName

Creating a channel with webapi with /sdrangel/deviceset/{deviceSetIndex}/channel (POST)
triggers int WebAPIAdapterGUI::devicesetChannelPost(...) 
in file sdrgui/webapi/webapiadaptergui.cpp. Here is step 1 is done, but not the second step.

I think there is also a problem with parsing JSON, but I'm not sure. I have to investigate.

My understanding of the overall design is very low. I don't know how and where to place step 2.

I'd appreciate it if you had some pointers for me.

Best Regards

-vabanque

Re: Change in binary distributions from Github

Joe Puma
 

Here is where I’m stuck at

 

C:\Users\Joe\Downloads\sdrangelcli>npm install

npm WARN @angular-devkit/build-angular@0.900.3 requires a peer of typescript@>=3.6 < 3.8 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/animations@7.0.0 requires a peer of @angular/core@7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/cdk@6.3.3 requires a peer of @angular/common@>=6.0.0-beta.0 <7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/common@7.0.0 requires a peer of @angular/core@7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/compiler@9.0.2 requires a peer of tslib@^1.10.0 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/compiler-cli@9.0.2 requires a peer of tslib@^1.10.0 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/compiler-cli@9.0.2 requires a peer of typescript@>=3.6 <3.8 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/core@6.0.0-beta.0 requires a peer of rxjs@^5.5.0 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/forms@7.0.0 requires a peer of @angular/core@7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/http@7.0.0 requires a peer of @angular/core@7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/material@6.3.3 requires a peer of @angular/common@>=6.0.0-beta.0 <7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/platform-browser@7.0.0 requires a peer of @angular/core@7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/platform-browser-dynamic@7.0.0 requires a peer of @angular/core@7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/platform-browser-dynamic@7.0.0 requires a peer of @angular/compiler@7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN @angular/router@7.0.0 requires a peer of @angular/core@7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN @ngtools/webpack@9.0.3 requires a peer of typescript@>=3.6 < 3.8 but none is installed. You must install peer dependencies yourself.

npm WARN codelyzer@4.2.1 requires a peer of @angular/compiler@>=2.3.1 <7.0.0 || >6.0.0-beta <7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN codelyzer@4.2.1 requires a peer of @angular/platform-browser-dynamic@>=2.3.1 <7.0.0 || >6.0.0-beta <7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN codelyzer@4.2.1 requires a peer of @angular/platform-browser@>=2.3.1 <7.0.0 || >6.0.0-beta <7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN codelyzer@4.2.1 requires a peer of @angular/common@>=2.3.1 <7.0.0 || >6.0.0-beta <7.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN ngx-color-picker@6.5.0 requires a peer of @angular/core@>=5.0.0 but none is installed. You must install peer dependencies yourself.

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.2 (node_modules\@angular\compiler-cli\node_modules\fsevents):

npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.8 (node_modules\fsevents):

npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.8: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

 

added 3 packages from 2 contributors, removed 4 packages and updated 6 packages in 19.633s

 

31 packages are looking for funding

  run `npm fund` for details

 

 

C:\Users\Joe\Downloads\sdrangelcli>

 

 

 

 

Joe

KD2NFC

 

Sent from Mail for Windows 10

 

From: Joe Puma via Groups.Io
Sent: Tuesday, February 25, 2020 9:47 AM
To: sdrangel@groups.io
Subject: Re: [sdrangel] No more binary distributions from Github

 

Hi,

 

 

I made some progress getting the dependencies installed in my computer.  I trying following notes but got some errors trying to build. NPM start didn’t work, other dependencies missing.  I’ll post screen shot of errors later.  

 

Joe

KD2NFC 

 



On Feb 24, 2020, at 7:26 PM, Edouard Griffiths <f4exb06@...> wrote:

Hello,

I am exploring Github actions and have put it in place for sdrangelcli which is a plain NodeJS / Angular application. This makes it much easier to manage than sdrangel. However Github actions look interesting. See it here: https://github.com/f4exb/sdrangelcli/actions

There is also a full HelloWorld (thus very simple!) example here: https://github.com/cristianadam/HelloWorld

Brgds, Edouard.

 

Re: Change in binary distributions from Github

Joe Puma
 

Hi,


I made some progress getting the dependencies installed in my computer.  I trying following notes but got some errors trying to build. NPM start didn’t work, other dependencies missing.  I’ll post screen shot of errors later.  

Joe
KD2NFC 



On Feb 24, 2020, at 7:26 PM, Edouard Griffiths <f4exb06@...> wrote:

Hello,

I am exploring Github actions and have put it in place for sdrangelcli which is a plain NodeJS / Angular application. This makes it much easier to manage than sdrangel. However Github actions look interesting. See it here: https://github.com/f4exb/sdrangelcli/actions

There is also a full HelloWorld (thus very simple!) example here: https://github.com/cristianadam/HelloWorld

Brgds, Edouard.

Re: Problems startup RTL-SDR on Linux

Edouard Griffiths
 

Hello Luigi,

can you post the result of: "ldd /usr/lib/sdrangel/plugins/libinputrtlsdr.so" please?

Brgds, Edouard.

Re: Change in binary distributions from Github

Edouard Griffiths
 

Hello,

I am exploring Github actions and have put it in place for sdrangelcli which is a plain NodeJS / Angular application. This makes it much easier to manage than sdrangel. However Github actions look interesting. See it here: https://github.com/f4exb/sdrangelcli/actions

There is also a full HelloWorld (thus very simple!) example here: https://github.com/cristianadam/HelloWorld

Brgds, Edouard.

Re: Change in binary distributions from Github

Roeland Jansen, PA3MET
 

if you're going to create a buildsystem I would definitely believe that a jenkins instance with slaves for the specific targets would be a nice one; If that works well a new push could lead to a new bould without any interaction at all.

Regarding the grade -- I found your help to be very good Edouard. All kudo's for you for that. 

 

 

Re: Playback using Webapi

Edouard Griffiths
 

Hello,

I can answer to your first question: yes it is the right way to automate your process the web (REST) API is designed to cover this use case exactly. Thanks for posting the log it is very helpful in making us understand what you are trying to achieve.

For the second question I need to investigate a little bit (the log will help to do that). Maybe there is a bug in the File Source plugin that prevents the proper handling of the file name.

Brgds,
Edouard.

Playback using Webapi

vabanque
 

Hi,
 
I installed SDRangel 4.13.0 on Mac running Catanina using Mac ports.
I'm using a LimeSDR mini.
Everything works very well.
I did not found a way to save a session and restore it at next restart.
I found in a post webapi is the best choice.

I would like to playback a .sdriq file using the webapi.

I use a modified version of the example script limesdr_tx.py.
It creates a TX deviceset at device index 1,
configures it, creates a channel of type FileSource and configures
it setting fileName to the existing and accessible file 
/Users/SDR/SDRAngel/Samples/KeyFinder/KeyFinder-B.sdriq.
 
Here the debug output of the script:
 
url=http://127.0.0.1:8091/sdrangel/deviceset
method=POST
Add Tx device set succeeded
{
    "message": "Message to add a new device set (MsgAddDeviceSet) was submitted successfully"
}
-------------------
url=http://127.0.0.1:8091/sdrangel/deviceset/1/device
method=PUT
setup LimeSDR on Tx device set succeeded
{
    "deviceNbStreams": 1,
    "deviceSetIndex": 1,
    "deviceStreamIndex": 0,
    "direction": 1,
    "displayedName": "LimeSDR[0:0] XXXXXXXXXXXXXX",
    "hwType": "LimeSDR",
    "index": 1,
    "sequence": 0,
    "serial": "LimeSDR Mini, media=USB 3.0, module=FT601, addr=24607:1027, serial=XXXXXXXXXXXXXX"
}
-------------------
url=http://127.0.0.1:8091/sdrangel/deviceset/1/device/settings
method=GET
Get LimeSDR Tx settings succeeded
{
    "deviceHwType": "LimeSDR",
    "direction": 1,
    "limeSdrOutputSettings": {
        "antennaPath": 0,
        "centerFrequency": 435000000,
        "devSampleRate": 5000000,
        "extClock": 0,
        "extClockFreq": 10000000,
        "gain": 4,
        "gpioDir": 0,
        "gpioPins": 0,
        "log2HardInterp": 3,
        "log2SoftInterp": 0,
        "lpfBW": 5500000,
        "lpfFIRBW": 2500000,
        "lpfFIREnable": 0,
        "ncoEnable": 0,
        "ncoFrequency": 0,
        "reverseAPIAddress": "127.0.0.1",
        "reverseAPIDeviceIndex": 0,
        "reverseAPIPort": 8888,
        "transverterDeltaFrequency": 0,
        "transverterMode": 0,
        "useReverseAPI": 0
    }
}
-------------------
url=http://127.0.0.1:8091/sdrangel/deviceset/1/device/settings
method=PATCH
Patch LimeSDR Tx settings succeeded
{
    "deviceHwType": "LimeSDR",
    "direction": 1,
    "limeSdrOutputSettings": {
        "antennaPath": 2,
        "centerFrequency": 433850000,
        "devSampleRate": 2500000,
        "extClock": 0,
        "extClockFreq": 10000000,
        "gain": 42,
        "gpioDir": 0,
        "gpioPins": 0,
        "log2HardInterp": 3,
        "log2SoftInterp": 0,
        "lpfBW": 5500000,
        "lpfFIRBW": 2500000,
        "lpfFIREnable": 0,
        "ncoEnable": 0,
        "ncoFrequency": 0,
        "reverseAPIAddress": "127.0.0.1",
        "reverseAPIDeviceIndex": 0,
        "reverseAPIPort": 8888,
        "transverterDeltaFrequency": 0,
        "transverterMode": 0,
        "useReverseAPI": 0
    }
}
-------------------
url=http://127.0.0.1:8091/sdrangel/deviceset/1/channel
method=POST
Create FileSource succeeded
{
    "message": "Message to add a channel (MsgAddChannel) was submitted successfully"
}
-------------------
url=http://127.0.0.1:8091/sdrangel/deviceset/1/channel/0/settings
method=GET
Get FileSource settings succeeded
{
    "FileSourceSettings": {
        "fileName": "test.sdriq",
        "filterChainHash": 0,
        "gainDB": 0,
        "log2Interp": 0,
        "reverseAPIAddress": "127.0.0.1",
        "reverseAPIChannelIndex": 0,
        "reverseAPIDeviceIndex": 0,
        "reverseAPIPort": 8888,
        "rgbColor": -7601148,
        "title": "File source",
        "useReverseAPI": 0
    },
    "channelType": "FileSource",
    "direction": 1
}
-------------------
url=http://127.0.0.1:8091/sdrangel/deviceset/1/channel/0/settings
method=PATCH
Change FileSource succeeded
{
    "FileSourceSettings": {
        "fileName": "/Users/SDR/SDRAngel/Samples/KeyFinder/KeyFinder-B.sdriq",
        "filterChainHash": 0,
        "gainDB": 0,
        "log2Interp": 0,
        "reverseAPIAddress": "127.0.0.1",
        "reverseAPIChannelIndex": 0,
        "reverseAPIDeviceIndex": 0,
        "reverseAPIPort": 8091,
        "rgbColor": -7601148,
        "title": "KeyFinder-A",
        "useReverseAPI": 0
    },
    "channelType": "FileSource",
    "direction": 1
}
-------------------
url=http://127.0.0.1:8091/sdrangel/deviceset/1/device/run
method=POST
Start device on deviceset R1 succeeded
{
    "state": "idle"
}
-------------------
 
This creates the T1 deviceset and the input source, they appear in the GUI.
The problem is that the created input source has no input file.
I still have to use the GUI and set the input file manually.
 
My questions:
- Is this the sane way to do playback a recorded file?
- What am I missing? How do I manage the file source to load the input file?
 
Any ideas?


 

Re: Change in binary distributions from Github

f4inx
 

Hi Edouard,

Glad to read this. I think we can make a good collaboration.

First, I am ready to help Joe Puma to set up a build system for the main branch.

On my personnal side, my plans are to publish first my personnal build with my changes and, if I find time, the build of the main version.

Best regards,
Hadrien


Le sam. 22 févr. 2020 à 20:45, Edouard Griffiths <f4exb06@...> a écrit :
Hi Hadrien,

thanks for your support. Yes this can be a good interim solution. I have no time either at this moment to deal with putting in place a proper CI system however I certainly keep it on the back of my mind and this will come eventually. 

Please stick to the master (default) branch. I had already taken the decision to keep the tip of development (version 5) out of reach of public builds and casual usage. This has not been proven entirely successful but this is the idea.

Brgds, Edouard. 

Re: Change in binary distributions from Github

Edouard Griffiths
 

Hi Hadrien,

thanks for your support. Yes this can be a good interim solution. I have no time either at this moment to deal with putting in place a proper CI system however I certainly keep it on the back of my mind and this will come eventually. 

Please stick to the master (default) branch. I had already taken the decision to keep the tip of development (version 5) out of reach of public builds and casual usage. This has not been proven entirely successful but this is the idea.

Brgds, Edouard. 

Re: Change in binary distributions from Github

f4inx
 

Hi Edouard,

Many thanks for your reply. Would you mind if somebody else release some binaries ?

Best regards,
Hadrien

Le sam. 22 févr. 2020 à 19:46, Edouard Griffiths <f4exb06@...> a écrit :
Hi Hadrien,

to be more precise I am getting more and more reluctant in releasing binaries because with binaries come commercial grade demands. When you compile from source you realize that the value of an Open Source project moreover not backed up by a commercial organization is actually the source code and you get the focus on the source code and not so much on the so many particular system intricacies that can make a binary break. 

Anyway at a bare minimum I would like to stop building binaries on my own private infrastructure (for Windows this is simply a laptop) and move it to a more "standard" infrastructure. In the very first returns of my research on the net I came across this link and the first paragraph summarizes exactly my state of mind: https://dev.to/itnext/the-ultimate-free-ci-cd-for-your-open-source-projects-3bkd

Not sure it is going to be Azure based but you get the idea...

Brgds, Edouad.

Re: Change in binary distributions from Github

Edouard Griffiths
 

Hi Hadrien,

to be more precise I am getting more and more reluctant in releasing binaries because with binaries come commercial grade demands. When you compile from source you realize that the value of an Open Source project moreover not backed up by a commercial organization is actually the source code and you get the focus on the source code and not so much on the so many particular system intricacies that can make a binary break. 

Anyway at a bare minimum I would like to stop building binaries on my own private infrastructure (for Windows this is simply a laptop) and move it to a more "standard" infrastructure. In the very first returns of my research on the net I came across this link and the first paragraph summarizes exactly my state of mind: https://dev.to/itnext/the-ultimate-free-ci-cd-for-your-open-source-projects-3bkd

Not sure it is going to be Azure based but you get the idea...

Brgds, Edouad.

Re: Change in binary distributions from Github

Joe Puma
 

I would be happy to create binaries and put them on a Dropbox or somewhere else. I would just need help setting up my windows pc so I can compile. SDRangel is really looking like a contender out here for SDR hosts, I don’t know what issues you were having with Github or whatever but don’t slight the users of your great software to satisfy others who only care to give you a hard time. Keep up the great work.  


Joe
KD2NFC

Re: Change in binary distributions from Github

f4inx
 

I have not enough time for a professional-like binary building system. But if I continue my project to make some changes to the code, I will distribute my own binaries.

Le 22/02/2020 à 14:39, Siegfried Jackstien a écrit :
if there would be some users willing to help (i never compiled any windows software) ... that woud be nice

be it a dropbox link or somewhere else does not matter ... but a place where a "dummie user" like me can download precompiled version would be nice ...

greetz sigi dg9bfc


Am 22.02.2020 um 13:28 schrieb thadrien:

Re: Change in binary distributions from Github

Siegfried Jackstien
 

if there would be some users willing to help (i never compiled any windows software) ... that woud be nice

be it a dropbox link or somewhere else does not matter ... but a place where a "dummie user" like me can download precompiled version would be nice ...

greetz sigi dg9bfc


Am 22.02.2020 um 13:28 schrieb thadrien:

Hi Edouard,

Are you against binaries, or are you against providing them on GitHub ? If you are just against providing them on GitHub, maybe we should just discuss another place to put them. If you don't have time anymore to make them, which I would perfectly understand, maybe we can found an other volunteer to make them. If you are against binaries at all, I don't know.

Best regards,
Hadrien

Le 22/02/2020 à 12:46, David J Taylor via Groups.Io a écrit :
Hi David,

I feel sorry for loyal Windows users especially you who is at the origin of this very discussion group. However a rule has to be a rule and the same rule for everybody. So on Github there will the source code and only the source code plus related documentation. The Github guys are nice enough to tolerate binaries in the assets section of the releases but if this was my decision I would simply ban it. If I reconsider building binaries this will be outside Github for sure probably using some CI infrastructure. I certainly want to dissociate the Github repository for the source and somewhere else yet to be found for the artifacts.

Brgds, Edouard.

Re: Change in binary distributions from Github

f4inx
 

Hi Edouard,

Are you against binaries, or are you against providing them on GitHub ? If you are just against providing them on GitHub, maybe we should just discuss another place to put them. If you don't have time anymore to make them, which I would perfectly understand, maybe we can found an other volunteer to make them. If you are against binaries at all, I don't know.

Best regards,
Hadrien

Le 22/02/2020 à 12:46, David J Taylor via Groups.Io a écrit :
Hi David,

I feel sorry for loyal Windows users especially you who is at the origin of this very discussion group. However a rule has to be a rule and the same rule for everybody. So on Github there will the source code and only the source code plus related documentation. The Github guys are nice enough to tolerate binaries in the assets section of the releases but if this was my decision I would simply ban it. If I reconsider building binaries this will be outside Github for sure probably using some CI infrastructure. I certainly want to dissociate the Github repository for the source and somewhere else yet to be found for the artifacts.

Brgds, Edouard.

Re: Change in binary distributions from Github

David J Taylor
 

Hi David,

I feel sorry for loyal Windows users especially you who is at the origin of this very discussion group. However a rule has to be a rule and the same rule for everybody. So on Github there will the source code and only the source code plus related documentation. The Github guys are nice enough to tolerate binaries in the assets section of the releases but if this was my decision I would simply ban it. If I reconsider building binaries this will be outside Github for sure probably using some CI infrastructure. I certainly want to dissociate the Github repository for the source and somewhere else yet to be found for the artifacts.

Brgds, Edouard.
====================================

Edouard,

Hosting files for distribution should not be an issue. I would be happy to spare a few hundred megabytes for hosting, say, the current Windows version and one back, and I have unlimited download bandwidth.

Having the group as the contact point means that you could redirect any direct personal e-mails concerning the "unsupported" versions here, for peer-to-peer support. I have to do this for some of my software where I simply don't know the answer, and I think that people appreciate that I am a "team of one person". The discussions might even trigger some useful input for the Linux version!

I am happy to help where I can.

Cheers,
David
--
SatSignal Software - Quality software for you
Web: http://www.satsignal.eu
Email: david-taylor@...
Twitter: @gm8arv

Re: Change in binary distributions from Github

Edouard Griffiths
 

Hi David,
 
I feel sorry for loyal Windows users especially you who is at the origin of this very discussion group. However a rule has to be a rule and the same rule for everybody. So on Github there will the source code and only the source code plus related documentation. The Github guys are nice enough to tolerate binaries in the assets section of the releases but if this was my decision I would simply ban it. If I reconsider building binaries this will be outside Github for sure probably using some CI infrastructure. I certainly want to dissociate the Github repository for the source and somewhere else yet to be found for the artifacts.
 
Brgds, Edouard.

Re: Change in binary distributions from Github

Boudewijn (Bob) Tenty
 

No big deal, even better to compile it locally.

Bob / Boudewijn

On 2020-02-21 15:51, Edouard Griffiths wrote:
Hello,

following recent issues with people that do not understand what "Open Source" really means. I have removed all binaries from the releases section on Github. From this day on no more binaries will be released this way and no form of support will be given from me outside issues properly identified in my development environment which is at present Linux Ubuntu 18.04.

Brgds, Edouard.--
When you change the way you look at things, the things you look at change 

Max Planck