Welcome to Radarspotting. Please login or sign up.

April 28, 2025, 08:36:37 PM

Login with username, password and session length

New Members

New Members

You should get an activation email when you join.  If not, please use the Contact option.

ModeSDeco2 and ModeSMixer2 - console programs for RTLSDR and transcoding

Started by sergsero, August 09, 2013, 03:08:08 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

TTECH

- So I can't do anything with the Mode-A/C data? The Alpha Jets are using this so it would be nice to know when they're flying.
- How can I help to test it?

sergsero

The second channel in RadarCape via USB connection the Beast and merge data to feed by ModeSMixer2.

In some situations, such tandem helps maximize to use of two independent antennas. For example, the highly directional antenna for receiving from one sector (closest airport) and omnidirectional collinear antenna for maximum range of coverage.


   
When connecting Beast into the USB port of RadarCape in the system should be created device /dev/ttyUSB0. This is verified by running command:
root@radarcape:~# ls -l /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0 May 31 11:10 /dev/ttyUSB0


If devices ttyUSB* is not found, it means that Radarcape's Angstrom not contain a kernel module for ftdio_sio. So it can be installed by:
opkg install kernel-module-ftdi-sio

Then run ModesMixer2 for merge received data from two receivers to feed and output it through, for example, three servers for PlanePlotter in binary Beast on port 33033, for BaseStation in RAW on port 10001 and for Globe-S_RTL in http table2 on port 31008:
root@radarcape:~/sdr# ./modesmixer2 --inSerial /dev/ttyUSB0:3000000:hardware --inConnect 127.0.0.1:10005 --outServer beast:33033 --outServer sbs10001:10001 --globes 31008:table2:UNNT

Below the large screenshot combines screens of all programs. CPU usage by modesmixer2 <10%:


sergsero

In ModeSMixer2 each command line option is formed from two parts, which characterize the process as an input or output and the data reception method.

In General, in ModeSMixer2 exist rules of choice the options for send-receive pair couple. In any pair is always defined the roles of sides: the initiating party (master) of process and slave side. First (prefix) part - the direction:


  • <--in...> - is always indicate to data input to modesmixer2
  • <--out...> - is always indicate to data output from modesmixer2


The second part of the option - the mode:

  • <...Connect> - is always indicate to somewhere to connect itself on network - the pull or push by initiative of modesmixer2
  • <...Serial> is always indicate for connect to physical serial port (COM/USB/tty*) on the same computer and to pulling data from him
  • <...Server> is always indicate for waiting and listen the port, that data will go over the network themselves - someone took the initiative and sends or receives them to/from the modesmixer2

Default for network connections between modesmixers2 is used TCP protocol. If there is sufficient reason to use UDP protocol (low-overhead operation and reduced latency), then for him there are two special options: --outConnectUdp and --inServerUdp.
However, it is recommended to always use the TCP protocol, as it provides control the network connection, error checking and delivery validation.

sergsero

There are new versions of ModeSDeco2 v.20140616 and ModeSMixer2 v.20140616 in first http://radarspotting.com/forum/index.php/topic,2978.msg13471.html#msg13471 and second http://radarspotting.com/forum/index.php/topic,2978.msg15240.html#msg15240 messages of this thread.

+ changed the algorithm of determining of PI (Parity/interrogator identifier) - downlink field that have parity overlaid on the interrogator's identity code and shall appear in the Mode-S all-call reply, DF = 11 and in the extended squitter, DF = 17 or DF = 18. May be used to beamfinder+ in PlanePlotter

For ModeSDeco2 only. However, there is necessity to test this version of ModeSDeco2 in comparison with previous v.20140428. And determine, the total number of messages, that are issued, left unchanged or not -  wasn't decreased?
Just in case, here is the previous version v.20140428



+ changed the algorithm of processing of Interrogator Codes II (Interrogator Identifier) and SI (Surveillance Identifier) for data transcoding in RAW SBS format (--sbs10001)

For ModeSMixer2, due to incomplete support by PlanePlotter bidirectional data communication for starting procedure of SBS10001 connection, should be used sbs30006 output mode: "... --outServer sbs30006:30006 ..."

I would be very grateful for your testing and feedback.

Thanks,
sergsero

Triple7

The latest version of ModeSMixer (0616) is the one I have been using for a few days now and is working perfectly.

Thank you sergsero for your work on this great "enabler".

Tim
SBS-1eR, FA ProStick + 1090 filter

sergsero

Hi Tim,
   
Once again thank you for testing!

The testing modesdeco2 together with planeplotter for beamfinder in Volga region:
 

However, there is necessity to test this version of ModeSDeco2 in comparison with previous v.20140428. And determine, the total number of messages, that are issued, left unchanged or not -  wasn't decreased?
Just in case, here is the previous windows version v.20140428: https://drive.google.com/file/d/0B7NYXizl0U6iNE1vQVhEaWdlODA/edit?usp=sharing

sergsero

A special version ModesDeco2 v.20140809  for Windows with GPS receiver emulation.

+ added option "--nmea <arg>" for emulation a GPS receiver and output GPS data based on the NMEA-0183 protocol from any aircraft with ADS-B transponder. The null-modem com0com http://com0com.sourceforge.net/ or other emulator can be used to provide serial interface for device emulators. In this case modesdeco2 uses one port of the pair and the other port can be used by Windows application that requires a COM port to communicate with GPS device.

+ added option "--nmea-logfile <arg>" for saving output NMEA data to a logfile.

modesdeco2_windows_20140809.zip
Features of the GPS mode emulation.
1. Generates four types of NMEA sentences: GGA, RMC, GLL and VTG.

2. The field 10 of GGA, instead of the antenna height above the geoid, is used barometric altitude. Onboard barometric altimeter may be set to appropriate setting for the phase of flight.
These are:
Standard Pressure setting (760 mm Hg/1013 hPa/29.92 inHg) or QNE is set when climbing and cleared to a FL (Flight Level). Altimeter indicates Pressure Altitude (FL), and is used by all aircraft operating above the transition altitude to provide a common datum for vertical measurement. The Standard Pressure is equivalent to the air pressure at mean sea level (MSL) in the International Standard Atmosphere (ISA).

Regional or airfield pressure setting (QNH) is set when flying by reference to altitude above mean sea level below the transition level. With QNH set, an aircraft altimeter indicates height above mean sea level. The QNH may be the pressure observed at the airfield, or the lowest pressure observed throughout a specified geographical area.

Altimeter pressure setting indicating height above airfield or touchdown (QFE) is set when approaching to land at airfield where this procedure is in use. With QFE set, an aircraft altimeter indicates height above the QFE datum, which may be a point in the aerodrome environment or the touch-down zone of the runway in use.

3. In this version field 11 of GGA uses geometric height above MSL rather than above the WGS-84 ellipsoid.


sergsero

There's new version 20140908 of ModeSMixer2 in message #2 of this forum thread

+ changes in the work with serial port, which increase the stability of data transmission and monitoring connection.
+ changes in the algorithm of decoding DF-18 messages (TIS-B).

TIS-B complements the operation of ADS-B by providing ground-to-air broadcast of surveillance data on aircraft that are not equipped for 1090 MHz ADS-B. The basis for this ground surveillance data may be an ATC Mode S radar, a surface or approach multilateration system or a multisensor data processing system The TIS-B ground-to-air transmissions use the same signal formats as 1090 MHz ADS-B and can therefore be accepted by a 1090 MHz ADS-B receiver.

dualc

Hi SergSero.

My first post here, .. and i wonder if u can put ModeSMixer2 files somewhere alse to download?.

As i tried ur Google download place and it says the quote is overloaded and i cant download the files.

/M

sergsero

I hope soon to complete the creation of the website, which will contain all my programs and their descriptions.

Thanks,
sergsero


sergsero

The version 20140930 of modesdeco2 is being tested with HackRF One open source software radio platform:




sergsero

ModeSMixer for MIPS 74Kc architecture router TP-Link TL-WDR3600 (SoC: Atheros AR9344 rev 2 - CPU 560MHz/FLASH 8MB/RAM 128MB) with OpenWrt BarrierBreaker 14.07:

modesmixer_ar71xx_MIPS_20140908.zip
System requirements: https://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/generic/openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-factory.bin for upgrade from TP-Link factory firmware
                     or https://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/generic/openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-sysupgrade.bin to upgrade from earlier versions of OpenWRT!

Installation:
Update list of available packages: opkg update
Put the package modesmixer_20141006-1_ar71xx.ipk from archive into any directory in TP-Link TL-WDR3600 and run the installation: opkg install modesmixer_20141006-1_ar71xx.ipk

For example, the picture below shows the connection BEAST to TP-Link TL-WDR3600 in its USB port:



and modesmixer has directly connected to program BaseStation through port 10001 and as TCP-server for output MSG messages on port 30003:


sergsero

The new ModeSDeco2 for MIPS architecture was tested on TP-Link TL-WDR3600 router with RTL2832 dongle and direct connections to BaseStation:




sergsero



ModeSMixer http://radarspotting.com/forum/index.php/topic,2978.msg15240.html#msg15240 and ModeSDeco http://radarspotting.com/forum/index.php/topic,2978.msg13471.html#msg13471

for MIPS 74Kc SoC architecture as TP-Link: TL-WDR3500/3600/4300 (SoC: Atheros AR9344 - CPU 560MHz/FLASH 8MB/RAM 128MB) and TL-MR3020/3220/3420 (SoC: Atheros AR7241 - CPU 400MHz/FLASH 4MB/RAM 32MB) with USB flash memory stick.

Basic Equipment Requirements:
•   TP-LINK routers TL-WDR3500/3600/4300/7500/AC1750 or TL-MR3020/3220/3420 with OpenWRT Linux distribution for embedded devices and release of Barrier Breaker 14.07.
•   USB hub for routers that have only one USB port. Possible that you will have to use a USB hub with external power supply if the USB receiver will be connected to the same router in its USB port. Another solution that I use, replacement of standard power supply to a more powerful 5V/3A.
•   External storage medium, which can be a USB stick.

Unfortunately TL-MR3020/3220/3420 routers have only 4MB flash (memory), so (depending on the selected image/firmware) after installing OpenWrt there will be just about ~450 kB of free memory available. If you now want to install one or more extensions for OpenWrt, which is one of the main benefits of using a OpenWrt system, you will be confronted with "no space available" messages.

One solution to "bypass" this problem is to "ExtRoot" your router. ExtRoot is a functionality that can be used to outsource the OpenWrt file system of the router to an external storage medium. This can be, for example, a USB flash drive. Set up the root filesystem on a USB stick. It's best to partition and format the USB stick (/dev/sdX in the listing – you might need to adjust this X) on your PC. Besides the root partition, you'll want a home partition and, above all, swap space.

System requirements:
https://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/generic/openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-factory.bin for upgrade from TP-Link factory firmware
or https://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/generic/openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-sysupgrade.bin to upgrade from earlier versions of OpenWRT!


ModeSMixer installation:
1. Copy the archive modesmixer_20141010-1_ar71xx.tar.gz to any directory on your router TP-Link TL-MR3020/3220/3420 and unzip it. The file modesmixer_20141010-1_ar71xx.ipk is an installation package.
2. Run the command: opkg update for making update the list of available packages.
3. Next, install the package by running the command: opkg install modesmixer_20141010-1_ar71xx.ipk. The program will be installed into your system.
4. In the directory /etc/config/ will be created configuration file modesmixer. Edit it according to your needs. For example, to retrieve data from a feed with IP address 192.168.1.170 and port 30005, and make direct connection for BaseStation, Globe-S and output MSG feed to fr24 sender specify the following options:

MODESMIXER_ARGS="--inConnect 192.168.1.170:30005 --outServer msg:30003 --outServer sbs10001:10001 --globes 31008:table2:UUDD --log-noconsole"

5. Run the program by: /etc/init.d/modesmixer start
6. Other syntax: /etc/init.d/modesmixer [command]
Available commands:
        start Start the service
        stop Stop the service
        restart Restart the service
        reload Reload configuration files (or restart if that fails)
        enable Enable service autostart
        disable Disable service autostart


ModeSDeco installation:
Routers TP-Link models TL-MR3020/3220/3420 have a low frequency of CPU 400 MHz, resulting In some instances, high CPU utilization, up to ~85%! Routers TP-Link models TL-WDR3500/3600/4300/7500/AC1750 have a processor speed 560 - 720 MHz and do not have this problem.
1. Copy the archive modesdeco_20141009-1_ar71xx.tar.gz to any directory on your router TP-Link TL-WDR3500/3600/4300 or TL-MR3020/3220/3420 and unzip it. The file modesdeco_20141009-1_ar71xx.ipk is an installation package.
2. Run the command: opkg update for making update the list of available packages.
3. The archive also includes new versions of library files: libusb-1.0_1.0.19-1_ar71xx.ipk and librtlsdr_0.5.3_ar71xx.ipk. Install them using the command: opkg install *.ipk - first libusb then librtlsdr.
4. Next, install the package by running the command: opkg install modesdeco_20141009-1_ar71xx.ipk. The program will be installed into your system.
5. In the directory /etc/config/ will be created configuration file modesdeco. Edit it according to your needs. For example, to make output beast format server for PlanePlotter (with Mode A/C) and MSG feed for fr24 sender specify the following options:

MODESDECO_ARGS="--gain 49.6 --freq-correction 63 --beast 30005 --msg 30003 --location 46.25:44.33 --rbs --filter-nocountry"

6. Run the program by: /etc/init.d/modesdeco start
7. Syntax: /etc/init.d/modesdeco [command]

Available commands:
        start Start the service
        stop Stop the service
        restart Restart the service
        reload Reload configuration files (or restart if that fails)
        enable Enable service autostart