Page d'accueil

Portsdown


par Michel Vonlanthen HB9AFO
 

Portsdown 2019

 

Introduction: https://wiki.batc.org.uk/The_Portsdown_Transmitter

 

Portsdown 2019:  https://wiki.batc.org.uk/Portsdown_2019

 

Feeding Video to Portsdown from vMix:

https://wiki.batc.org.uk/Feeding_Video_to_Portsdown_from_vMix

 

 

 

Jetson Nano

 

Jetson Nano:  https://wiki.batc.org.uk/Jetson_Nano

 

Use of the NVIDIA Jetson Nano for DATV: https://forum.batc.org.uk/viewtopic.php?f=15&t=6116#p19704

 


Caméra USB

 

C'est la PI Camera qui donne les meilleurs résultats car sa résolution est directement pilotée par le RPI. Si on veut utiliser une caméra USB externe, telle la Logitech C920 par exemple, il faut que cette dernière soit connectée seulement après que le RPI ait booté.


Protsdown from OBS from John G7JTT

 

Firstly I'm no expert with this but thought I'd share my success with getting OBS to talk the the Portsdown. I'd also like to thank everyone who has helped me along the way, especially Evariste F5OEO who spent a marathon evening with me helping to the early hours of the following morning getting the system working.
 

Screenshot 2019-05-22 07.33.05.png

Screen shot of my setup

Screenshot 2019-05-22 07.33.05.png (1.1 MiB) Viewed 1841 times


You will need to setup the Portsdown to talk to your PC via a network cable, WiFi wont work reliably. I also set the Portsdown up with a fixed IP of 10.0.0.1 by adding the text ip=10.0.0.1 to the cmdline.txt file found in the root of your SD card. Once you have set the Portsdown up and can confirm the network is working, you need to set up OBS. What I have done is to create several profiles and named them to reflect the SR/FEC settings so for 250Ks @ 3/4 FEC I named it 250Ks@3/4FEC I then went on to create another 4 profiles for the most common combinations of SR/FEC I use. The following is a copy of my 250Ks@3/4FEC ini file.

[General]
Name=250KS@3/4FEC

[Video]
BaseCX=1280
BaseCY=720
OutputCX=1280
OutputCY=720
FPSType=1
FPSInt=25

[Panels]
CookieId=36EA87EF08C0DFF0

[Output]
Mode=Advanced

[AdvOut]
TrackIndex=1
RecType=FFmpeg
RecEncoder=obs_x264
RecTracks=1
FFOutputToFile=false
FFURL=udp://230.0.0.11:20000?pkt_size=1316
FFFormat=mpegts
FFFormatMimeType=video/MP2T
FFExtension=ts
FFVBitrate=222
FFIgnoreCompat=true
FFVEncoderId=28
FFVEncoder=libx264
FFAEncoderId=86018
FFAEncoder=aac
FFAudioMixes=1
FFMCustom=muxrate=372100 mpegts_original_network_id =1 mpegts_transport_stream_id=2 mpegts_service_id=1 mpegts_start_pid=300

mpegts_pmt_start_pid=4096 pcr_period=40
FFVCustom=preset=superfast x264-params=nal-hrd=cbr:force-cfr=1:vbv-bufsize=1000
FFVGOPSize=100
FFABitrate=32
FFRescale=true
FFRescaleRes=768x576
RescaleRes=620x465
RecRescaleRes=1920x1080
Rescale=false

[Stats]
geometry=AdnQywACAAAAAAIoAAABXQAABVcAAAKbAAACMAAAAXwAAAVPAAACkwAAAAAAAAAAB4A=

[Audio]
SampleRate=44100
ChannelSetup=Mono

With OBS running click on the profile tab and then rename the default profile to 250Ks@3/4FEC. Now click on the file tab and go to show the profile folder. Within that window you will see a file basic.ini, right click edit then you should be able to copy and paste the above text into this file. You can set the preview screens up to what ever takes your fancy but the FFRescaleRes should be appropriate for the SR in use so 768x576 or 352x288 are better suited to SR333/250 where as 1280x720 is better left to SR's of 500Ks and above. You can now duplicate this profile and rename them to suit your own choice of SR/FEC combination, I have 250Ks@3/4FEC, 333Ks@3/4FEC,500Ks@1/2FEC,500Ks@3/4FEC and 1Ms@1/2. For each profile you will need to change the muxrate and FFVBitrate (video bitrate) values for your given choice of SR/FEC. Use this site http://www.satbroadcasts.com/DVB-S_Bitr ... lator.html to work out your own choice of SR/FEC combinations. The Netto TS bitrate is what you need but in Kmps so multiply by 1000000 then enter this as your new muxrate, to work out the FFVBitrate multiply muxrate by 0.0006 and round up to just 3 digits. Once OBS is set up you can test it's all working with VLC set to receive an network

connection on udp://230.0.0.11:20000 and hitting the start recording button on OBS.

Next is the script that you need to run along side OBS to add user details, the following should be copied into batch file and run.

@echo off
rem edited By G7JTT May 2019
rem Feb 2019 by Evariste F5OEO - QO-100 Release 0.9 (Completely rewritten)
rem Started from original tool
rem Idea from Portsdown vmix ffmpeg script

rem ================= SETUP ONCE ===========

set callsign=YOURCALL
rem Set appropriately
rem set raspi_ip=230.0.0.10
set raspi_ip=10.0.0.1
set ip=%raspi_ip%:10000

rem ================= INTERACTIVE =======================
rem --- SR asked only once ----
set SR=250
cls
:promptme
echo ==== Enter SR 250@3/4,333@3/4,500@1/2,500HD,1000@1/2 =====
set /p SR="SymbolRate(Ks) (%SR%)"

IF "%SR%"=="250" (SET TSBITRATE=372100)
IF "%SR%"=="333" (SET TSBITRATE=495700)
IF "%SR%"=="500" (SET TSBITRATE=494900)
IF "%SR%"=="500HD" (SET TSBITRATE=661100)
IF "%SR%"=="1000" (SET TSBITRATE=989800)
IF "%TSBITRATE%"=="" (GOTO :promptme)
echo SR=%SR%
echo Muxrate=%TSBITRATE%
pause
rem ======================== Launch ffmpeg OBS =========================

echo launch ffmpeg OBS
start "OBS to udp/ts" /high ^
C:\ffmpeg\bin\ffmpeg ^
-i udp://230.0.0.11:20000 -c:v copy -muxrate %TSBITRATE% -c:a copy ^
-f mpegts -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id 1 -mpegts_pmt_start_pid 4096 -streamid 0:256 -streamid 1:257 ^
-metadata service_provider="QO-100" -metadata service_name=%callsign% ^
-flush_packets 0 -f mpegts "udp://%ip%:10000?pkt_size=1316"

You need to setup your call sign and IP address of the Portsdown if you did not use 10.0.0.1, the options are self explanatory with the exception of

500HD this is just 500Ks @ 3/4FEC and I use this to send HD video from my Logitech C920 webcam.

So to work with the Portsdown you need to select IPTSin via the touch screen or via the console from an SSH connection. You must select the

same combination of SR/FEC as the script and the OBS profile. Both the script and OBS must be running then press start recording button in

OBS, wait a while untill the FFMpeg widow settles down then hit TX on the portsdown. The first few seconds of the video will be a little funky but

it will settle down and should work well for the length of the over. There are some sources/transitions within OBS that don't seem to work well

with my set up, but just play around and find what works best for you.

Hope this will help and that I've explained it in a way that makes sense?

All the Best John G7JTT


Le Portsdown 2020

 

 

As new capabilities are developed, the Portsdown evolves through major changes to take advantages of updates to the operating system and features. Older versions cease to be updated, but unlike "Windows" they don't stop working. Just tighten the screws in the lid, don't connect them to the internet and keep putting them on the air!

Portsdown 2020 is based on the RPi Buster operating system. There is no routine software update available from Portsdown 2019, which was based on the older Stretch operating system, but you can build (or buy from the BATC shop) a new SD Card and simply fit it in place of the old card to get the new features.

Features

 

 

The new features in Portsdown 2020 are:

  • H264 DVB-S and DVB-S2 transmissions from the LimeSDR Mini using F4IHX's custom DVB Firmware.

  • High symbol rate DVB-S transmissions (up to 6 MS) from the LimeSDR Mini using F4IHX's custom DVB Firmware.

  • DVB-S and DVB-S2 transmissions from the LimeSDR USB Portsdown 2020 LimeSDR USB

  • Support for the C920 WebCam

  • The ability to suppress the calibration spike at the beginning of LimeSDR transmissions.

The following legacy features have been tested and work well:

  • DVB-S Transmissions using a BATC Filter-modulator board

  • Streaming to the BATC streaming server

  • Composite video output

  • Receive capability with a MiniTiouner (to be upgraded in software 2020043000 Portsdown 2020 Receive Enhancements

The following features have not yet been tested and may not work:

  • DVB-S and DVB-S2 transmissions from the LimeSDR Mini using the stock firmware

  • DVB-S and DVB-S2 transmissions from the LimeMET Micro

  • DVB-S transmissions using DATV Expresss or the DTX-1

The following features DO NOT WORK, or will not be supported

  • The FreqShow spectrum viewer

You can find the latest information on the tested capabilities of Portsdown 2020 here: Portsdown 2020 Buster Software.

Hardware build

The Portsdown 2020 uses the same hardware as the Portsdown 2019 - see this wiki page for more details.


Pour débuter avec le Portsdown 2020

 

 

The Portsdown 2020 build is primarily intended to be used with the LimeSDR Mini loaded with the custom LimeDVB Firmware. If you do not intend to use this new firmware it is not, at this stage (Feb 2020), worth switching to the Portsdown 2020 build - the more mature 2019 build could be better.

 

 

Background

 

The Raspberry Pi 3 has to work quite hard to drive a LimeSDR to transmit DVB-S and DVB-S2. In response to this, custom firmware has been developed by F4IHX for the LimeSDR Mini (only) that enables it to take on some of the processing load of generating QPSK and 8PSK modulation.

This "LimeDVB" firmware must be loaded over an existing firmware load, and must be driven with different software on the Portsdown. Because it works differently, the power output is lower than the conventional software, but a cleaner signal is generated. Initial tests indicate that the normal receive capabilities of the LimeSDR are retained with the LimeDVB firmware loaded.

Building Portsdown 2020

 

The instructions on how to build Portsdown 2020 on to a blank SD Card can be found here: https://github.com/BritishAmateurTelevisionClub/portsdown-buster. Alternatively, BATC Members can purchase a pre-programmed card from the BATC Shop https://batc.org.uk/category/portsdown/

Setting up to use LimeDVB

  1. First of all, you need to set up the Portsdown to generate the signals to drive the LimeSDR Mini with the custom Lime DVB firmware. Connect your LimeSDR Mini to your Portsdown Raspberry Pi (preferably through a powered USB hub) and power on. Select LimeDVB as the output mode for the Portsdown: On Menu 1 (the main Menu) on the touchscreen, select "Output to" and then select "Lime DVB" (which should not be greyed out). Confirm that Lime DVB is shown on the "Output to" button on Menu 1.

  2. Next check the firmware on the LimeSDR Mini. Select Menu 3 (M3), then "Lime Config". Then select "Lime FW Info". Towards the bottom of the displayed list, you will see Gateware version 1, and Gateware revision 26, 27, 28 ,29 or 30.

  3. If the revision number is not 30 (so not Firmware 1.30) you need to update your LimeSDR Mini firmware to 1.30. Select "Update to FW 1.30". You should see a message "Upgrading Lime Firmware to 1.30" and then after 20 seconds or so "Firmware Upgrade Successful. Now at Gateware 1.30 Touch Screen to Continue". Touch the screen.

  4. If your firmware was at 1.30, or you have successfully upgraded, you then need to load the custom LimeDVB firmware. Select "Update to DVB FW". You should see a message "Upgrading Lime Firmware to Custom DVB" and then after 20 seconds or so "Firmware Upgrade Complete DVB Touch Screen to Continue". Touch the screen.

You can now set the LimeSDR Mini to only calibrate if it needs to, by pressing the "Calibrate Every TX" button. This will cycle through "Never Calibrate" (not recommended) "Calibrate if Needed" (recommended) and "Calibrate Every TX" (should be used if you connect a different LimeSDR Mini). Leave it set to "Calibrate if Needed" and it will only calibrate on major frequency changes. IMPORTANT NOTE: the LimeSDR Mini will always calibrate on the first transmission after selecting "Calibrate if Needed".

Now press exit to get back to the main menu

 

 

Setting up for Transmission

 

From the main menu you can set the Modulation (S2QPSK recommended), Encoding (H264 recommended), Format (4:3 recommended), Source (Pi Cam, Test Card or C920 Webcam recommended), Frequency, Symbol Rate and FEC.

 

You should set the Lime Gain once you can check the output level is correct for your transmitter. At Lime Gain 100, the Output levels are one or 2 dB lower than indicated on this chart LimeSDR_Mini_Output_Power_Levels. At Lime Gain 80, the reduction is about 20 dB, but the steps are very non-linear.

PTT Swtching

 

The PTT line on the Raspberry Pi GPIO pin 40 goes high after 7 seconds, giving time for the LimeSDR Mini to calibrate if required before the PA is keyed up. GPIO 8 on the LimeSDR Mini also goes high when the calibration (or initialisation if not calibrating) is complete.