Stefan-Olt / MISRC

MISRC Is a multi channel RF capture device for FM RF, S-Video, CVBS RAW capture and anything else, but intended and supported for the decode family of projects vhs-decode, ld-decode, hifi-decode.
54 stars 4 forks source link
40msps ad8138 ad9235 adc analog-videos cvbs cvbs-decode fm-rf-capture fx3 hifi-decode ld-decode ntsc pal s-video sdr sigrok tape-decode vhs-decode

MISRC - Multi Input Simultaneous Raw RF Capture

Description

MISRC is a device to capture two signals at 12-bit and up to 40 MHz (could maybe be extended to 80 MHz in the future) and an additional 8-bit's of binary (auxiliary data) over USB 3.0.

It is intended to capture modulated tape deck RF for software demodulation, but also baseband CVBS/S-Video (Composite) video signals for software decoding, and can be used as a direct stream Oscilloscope but limited to 2vpp input voltage.

The decode projects:

Provide decoding for a wide range of videotape formats, HiFi audio and even RAW or Baseband composite decoding with free and powerful software time base correction with full post filtering control over the signal processing.


Possible capture examples:

[!NOTE] It may be useful for other purposes as well, as it is built as a generic ADC with configurable filtering.

Features

Costs

Hardware


Software Setup

There are 2 tools currently and a few dependencies required to deploy a MISRC.

Software Install Guide
Depedencys - `apt install libflac-dev` Install [hsdaoh](https://github.com/Stefan-Olt/hsdaoh) this allows you to use the MS2130 & MS2131 chips directly. Restart and then continue Install capture & extract tools (Linux & MacOS) git clone https://github.com/Stefan-Olt/MISRC.git Enter Directory cd MISRC/misrc_tools Build and install ``` mkdir build cd build cmake .. make sudo make install ``` Run `mirsc_extract` or `misrc_capture` in any directory without arguments to trigger the help menu. There is a dedicated [sub-readme](/misrc_tools/README.md) for these tools.

Firmware Flashing

Originally the MISRC was based around the FX3 interface for a USB 3.0 connection, and using Sigronk for capture, this did not work perfectly.

So today we are now using the more affordable Tang Nano 20k sending the data over HDMI this only needs to be flashed once via usb connection and we have pre-compiled firmware see releases for the latest version.

Install openFPGALoader

Connect your Tang to a USB 3.0 port via its Type-C, it will need this for 5V power after flashing, but not data.

Run via terminal inside the firmware directory

openFPGALoader -b tangnano20k -f hsdaoh_nano20k_misrc.fs

You have flashed your Tang Nano 20k!

Capture

[!CAUTION] NEVER use USB for any other heavy-load task (like external HDD/SSD drives, USB network adapters, YUV capture devices) during capture. Do not connect/disconnect any other USB device during capture, a dedicated USB 3.0 to 3.2 Gen 2 card is ideal for dedicated capture stations as it ensures dedicated bandwidth/power if you have other items that require USB.


misrc_capture is a simple program to capture from MISRC using hsdaoh to which levrages data capture over HDMI with MS2130 "U3" cheep HDMI capture cards that have YUV support.

Create a folder which you wish to capture inside, open it inside terminal and then run misrc_capture

Example RAW:

misrc_capture -a video_rf.s16 -b hifi_rf.s16

Example with FLAC compression:

misrc_capture -f -a video_rf.flac -b hifi_rf.flac 

You can also define its directory path of each RF stream manually:

misrc_capture -f -a /mnt/my_video_storrage/video_rf.flac -b ../../this/is/a/relative/path/hifi_rf.flac
Usage Arguments:
`-d` device_index (default: 0) `-n` number of samples to read (default: 0, infinite) `-a` ADC A output file (use '-' to write on stdout) `-b` ADC B output file (use '-' to write on stdout) `-x` AUX output file (use '-' to write on stdout) `-r` raw data output file (use '-' to write on stdout) `-p` pad lower 4 bits of 16 bit output with 0 instead of upper 4 `-f` compress ADC output as FLAC `-l` LEVEL set flac compression level (default: 1) `-v` enable verification of flac encoder output

Design

MISRC is loosely based on the Domesday Duplicator (DdD).

Like the DdD it originally used the Cypress FX3 SuperSpeed Explorer board, with hopes to not use the DE0 FPGA.

It is built around the AD9235 analogue to digital converter by Analog Devices and is heavily based on the evaluation board circuit given in its datasheet with the AD8138 Op-Amp providing adjustable fixed gain.

License

You can read the License here.