VMA Stream Reader

Please specify how I can help.

Hi, I try to explain.
I have visually impairments, so a screen reader is needed to use my computer.
No problem to manage screens like Settings or Blindscan. From here I can set all values to make the program working for my purpose.
But obviously the Spectrum screen is a graphical representation of a screen in a hardware meter. This is the easiest way to search for an active frequency but only from a visual point of view. A screen reader is not able to view such a screen, and this happens with all tools like yours, it is absolutely normal.
However, EBSPro for example has a blind scan routine that does list in real time all found frequencies, and clicking with the right mouse button on a transponder a context-menu appears and you can select many options from there.
So, recognizing the spectrum screen by the sreen reader would be fantastic but I understand it is so difficult to implement. But having a more complete blind scan report would be great too.
For example, the SNR value of the found transponder could be added in the reported line, after frequency, SR and so on.
Also, using my TBS5925, after a full Ku band blind scan the program does seem to find only the transponders with larger symbol rates, although the frequency step was set at 2 MHz. For example, scanning the horizontal polarity at 7 East it totally does skip all feed frequencies. Instead, blind scanning on a single frequency manually introduced it does work great! For example, I set the frequency at 11050H, and it immediately locked the signal with all correct parameters.
This is my review for now. Again, GREAT JOB!!
 
I just scanned the X-band. I was very surprised that it worked and that frequencies were found.
 

Attachments

  • VMA_15.webp
    VMA_15.webp
    61.4 KB · Views: 46
  • VMA_16.webp
    VMA_16.webp
    38.1 KB · Views: 33
Unfortunately it doesn't work.

Checking the log:
Code:
22:27:58 - 16/07/2025 StartDVBEx(5)
22:27:58 - 16/07/2025 Device_ID: 5
22:27:58 - 16/07/2025 Use Device 5
22:27:58 - 16/07/2025     Tuner filter: TBS 6903 DVBS/S2 Tuner 0
22:27:58 - 16/07/2025     Capture filter: TBS 6903 DVBS/S2 Capture 0
22:27:58 - 16/07/2025 Input num 0
22:27:59 - 16/07/2025 Tuner IC: STV6120_2
22:27:59 - 16/07/2025 Frontend/demod IC: STV0910ADB (rev 5.1)
22:27:59 - 16/07/2025 TBS STV6120/STV0910 direct control used !
22:27:59 - 16/07/2025 BBGain = 6 dB
22:27:59 - 16/07/2025 ACM/VCM optimized mode !
22:27:59 - 16/07/2025 Turbosight (Lattice FPGA based) BDA extension used !
22:27:59 - 16/07/2025 + Turbosight BlindScan support with STV09XX
22:27:59 - 16/07/2025 + Turbosight I2C access support
22:27:59 - 16/07/2025 + Turbosight SignalEx support
22:27:59 - 16/07/2025 + Turbosight SignalInfo support
22:27:59 - 16/07/2025 + Turbosight MIS filtering support
22:27:59 - 16/07/2025 + Turbosight PLS control support
22:27:59 - 16/07/2025 + Turbosight MODCODE filtering support
22:27:59 - 16/07/2025 + Turbosight fast LNB control support
22:27:59 - 16/07/2025 GetSignalExEx()
22:27:59 - 16/07/2025 Signal    Present:1    Locked:0    RFLevel = -87dBm    SNR = 0.000000dB    BER = 10.000000
22:27:59 - 16/07/2025 GetSignalStrength()
22:27:59 - 16/07/2025 Signal    Strength =  0.0%    Quality = 0%
....
22:28:02 - 16/07/2025 SendDiseqCmd(0x035EF1A0, 4)
22:28:02 - 16/07/2025 DiseqCmd: E0 10 3B F0
22:28:02 - 16/07/2025 SetPol(0)

it seems that you send the wrong Diseqc command...


UPDATE:
If i choose "RAW Diseqc" and i set the command "E0 10 38 FC". it works!!!
Code:
22:31:42 - 16/07/2025 Signal    Strength =  0.0%    Quality = 0%
22:31:42 - 16/07/2025 SendDiseqCmd(0x0336D96C, 4)
22:31:42 - 16/07/2025 DiseqCmd: E0 10 38 FC
22:31:43 - 16/07/2025 SetPol(0)
This combination of raw commands works with my Diseqc switch:
Code:
Committed lnb1 raw command E0 10 38 F0
Committed lnb2 raw command E0 10 38 F4
Committed lnb3 raw command E0 10 38 F8
Committed lnb4 raw command E0 10 38 FC
 
Last edited:

Attachments

  • Disecq 1.1-8_2025-07-16_23-16-42.webp
    Disecq 1.1-8_2025-07-16_23-16-42.webp
    13.8 KB · Views: 24
Give me info. I don't know DiSEqC-1.1 and don't own such a switch

According to the norm:
1752701700827.webp
It seems to me that only 8 ports can be selected!

Please tell me how to address 16 ports with DiSEqC-1.1. What are the command bytes and how are they calculated?
 
Last edited:
Give me info. I don't know DiSEqC-1.1 and don't own such a switch
Here's what the disecq 1x17 EMP-Centauri I use looks like.
 

Attachments

  • EMP-diseqc 1x17_2025-07-17_00-30-31.webp
    EMP-diseqc 1x17_2025-07-17_00-30-31.webp
    30.9 KB · Views: 12
  • diseqc 1x16 EMP-Centauri_2025-07-17_00-31-02.webp
    diseqc 1x16 EMP-Centauri_2025-07-17_00-31-02.webp
    12.8 KB · Views: 7
  • disecq 1.1.txt
    disecq 1.1.txt
    1.2 KB · Views: 4
New version: https://vma-broadcast.com/wp-content/uploads/2025/04/VMA_Stream_Reader_20250716d.zip

In this version I added DiSEqC-1.1 Cascading, but I don't know if that is what you want and if this works. I think it might be unnecessary, because you can build the cascade manually in the DiSEqC Editor.

I am unsure about "E0 10 39 xx would concern DiSEqC 1.1 (I guess xx = F0 to FF, for switch ports 1 to 16)" - it does not seem to follow the norm.
But rest assure I will implement this in the next release. This actually sound a lot easier than DiSEqC-1.1 cascading (using address and port).

Meanwhile you can just use the raw command option.


Quickly fixed it: DiSEqC-1.1 now allows 1-16 which corresponds to last byte F0-FF. Hope it works.

The main new feature of this version is speech output for visual impaired. I am sorry to have gone this route for now, I read 7mdish'es message too late (was already implementing it).
 
Last edited:
Great, it works perfectly now (also with DiSEqC 1.1).
Thank you very much for your fantastic work and for your responsiveness in solving problems.
Just one small comment: the dB value does not appear in the SNR bar.
ok2.webp
 
I have just done an initial comparison of blindscan in VMAtool and EBSpro.

I don't know why, but some transponders are not being found.

Here is the comparison table.

Perhaps it's a mistake on my part? I don't know what it is.
 

Attachments

  • vmatransponder-horz.webp
    vmatransponder-horz.webp
    161.1 KB · Views: 15
Here is a first test with VMA Disecq 1.1, but...

Of all the VMA apps, Stream Reader is identified by McAfee/Windows Defender as the most "dangerous," as it is deleted every time I work with it, despite being included in the Excluded Files list in McF Internet Security.
More specifically, both antivirus apps view Disecq (1.1) as a threat, which is why they turn it off after a while.
Windows Defender sees it as Wacapew, although I think it's a false alarm.
 

Attachments

  • VMA Disecq 1.1__2025-07-17_09-00-11.webp
    VMA Disecq 1.1__2025-07-17_09-00-11.webp
    92.1 KB · Views: 16
  • McAfee-delete_VMA Stream Reader_ 2025-07-17_09-15-34.webp
    McAfee-delete_VMA Stream Reader_ 2025-07-17_09-15-34.webp
    29.1 KB · Views: 14
The false detection is due to three issues:
  1. The obfuscation used to protect the code against decompilers.
  2. Because I don't own a certificate to sign the executable.
  3. The use of network, because of the streaming functionality.
These issues trigger the warnings. I don't know how to avoid this. You can submit the executable for analysis to your anti virus provider.
What I find annoying is that it feels like a tax the software author needs to pay to be able to digitally sign the executables so that anti virus software don't complain.
 
1752737997574.webp
These are the results from VirusTotal

1752738263380.webp
I will try to submit my executable to McAfee for false positive in the commercial scanner, but this is in fact a pain, especially because I am actively developing the software and compiling different versions several times a day...

You can consider my reputation against the antivirus software.

Also, for sanity, here is the CRC32 of the last version (executable contained in VMA_Stream_Reader_20250716d.zip):

Name: VMA Stream Reader.exe
Size: 1808896 bytes (1766 KiB )
CRC64: 6659C9F01C9569BE

Regards,
Vitor
 
There is no need to pay to receive a digital signature. I have already gotten used to selecting the VMA suite in McAfee so that it is not deleted by the antivirus.
Here is the list of VMA apps I have chosen to exclude from scanning.
So don't ask for a digital signature. There's no need.

As an aside, you may already be aware of this, but if you're considering developing apps that can be accepted by Windows, you can create a CertMgr, as some developers do. But I don't think you'll need a debug for VMA apps.
 

Attachments

  • McAfee VMA Excluded Files_2025-07-17_11-08-20.webp
    McAfee VMA Excluded Files_2025-07-17_11-08-20.webp
    36.5 KB · Views: 17
I am unsure about "E0 10 39 xx would concern DiSEqC 1.1 (I guess xx = F0 to FF, for switch ports 1 to 16)" - it does not seem to follow the norm.
Glad you corrected yourself :) .

Did you also check the @cirio70 matter?
It looks like he uses diseqc 1.0, and doesn't get it to work.
Probably due to E0 10 3B Fx instead of E0 10 38 Fx, as also indicated here:
Unfortunately it doesn't work.

Checking the log:
22:28:02 - 16/07/2025 DiseqCmd: E0 10 3B F0
it seems that you send the wrong Diseqc command...

UPDATE:
This combination of raw commands works with my Diseqc switch:

Code:
Committed lnb1 raw command E0 10 38 F0
Committed lnb2 raw command E0 10 38 F4
Committed lnb3 raw command E0 10 38 F8
Committed lnb4 raw command E0 10 38 FC


Edit, to add: I would not invest much in toneburst/miniDiseqc/simpleDiseqc. That is mainly for the backwards compatibility for old monoblock LNBs, that don't support diseqc. Old Diseqc protocol "requires" it, but the practical use is about zero nowadays.


Greetz,
A33
 
Last edited:
I have just done an initial comparison of blindscan in VMAtool and EBSpro.

I don't know why, but some transponders are not being found.
Same here. As I explained yesterday, performiong a blind scan on Eutelsat satellite at 7 East, only transponders with higher symbol rate are found, all feeds with low symbol rate are skipped. My hardware is a TBS5925 USB device.
 
Forgot to add: no problem with antivirus here. I use the latest version of NOD32, absolutely no alarms or warnings. Nothing. It works.
 
Same here. As I explained yesterday, performiong a blind scan on Eutelsat satellite at 7 East, only transponders with higher symbol rate are found, all feeds with low symbol rate are skipped. My hardware is a TBS5925 USB device.
What step width did you set for lowSR transponders?
 
Back
Top