2021-02-20 17:09:24 +00:00
|
|
|
from owrx.source.connector import ConnectorSource, ConnectorDeviceDescription
|
2020-08-16 21:22:46 +00:00
|
|
|
from owrx.command import Flag, Option, Argument
|
2021-04-29 13:17:21 +00:00
|
|
|
from owrx.form.input import Input
|
|
|
|
from owrx.form.input.device import RemoteInput
|
2021-02-20 18:20:31 +00:00
|
|
|
from typing import List
|
2020-08-16 19:49:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
class RtlTcpSource(ConnectorSource):
|
|
|
|
def getCommandMapper(self):
|
|
|
|
return (
|
|
|
|
super()
|
|
|
|
.getCommandMapper()
|
|
|
|
.setBase("rtl_tcp_connector")
|
2021-01-20 16:01:46 +00:00
|
|
|
.setMappings(
|
|
|
|
{
|
2022-08-11 22:49:14 +00:00
|
|
|
"bias_tee": Flag("-b"),
|
|
|
|
"direct_sampling": Option("-e"),
|
2021-01-20 16:01:46 +00:00
|
|
|
"remote": Argument(),
|
|
|
|
}
|
|
|
|
)
|
2020-08-16 19:49:52 +00:00
|
|
|
)
|
2021-02-20 17:09:24 +00:00
|
|
|
|
|
|
|
|
|
|
|
class RtlTcpDeviceDescription(ConnectorDeviceDescription):
|
2021-04-17 15:42:08 +00:00
|
|
|
def getName(self):
|
|
|
|
return "RTL-SDR device (via rtl_tcp)"
|
|
|
|
|
2021-02-20 18:20:31 +00:00
|
|
|
def getInputs(self) -> List[Input]:
|
2021-02-21 23:35:47 +00:00
|
|
|
return super().getInputs() + [RemoteInput()]
|
|
|
|
|
2021-03-24 22:17:50 +00:00
|
|
|
def getDeviceMandatoryKeys(self):
|
2021-04-02 19:46:21 +00:00
|
|
|
return super().getDeviceMandatoryKeys() + ["remote"]
|