Skip to content

Commit 97d56bf

Browse files
Merge pull request #209720 from hrshelar/patch-10
Update contact profile concept for named modems
2 parents 18692c7 + dcef153 commit 97d56bf

8 files changed

+134
-23
lines changed

articles/orbital/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ items:
2525
href: license-spacecraft.md
2626
- name: Integrate partner network ground stations
2727
href: partner-network-integration.md
28+
- name: Configure the RF chain
29+
href: modem-chain.md
2830
- name: Receive real-time telemetry
2931
href: receive-real-time-telemetry.md
3032
- name: Update the spacecraft TLE

articles/orbital/concepts-contact-profile.md

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,9 @@ At the moment autotrack is disabled and autotracking options are not applied.
3838

3939
## Understanding links and channels
4040

41-
A whole band, unique in direction, and unique in polarity is called a link. Channels, which are children under links, specify center frequency, bandwidth, and endpoints. Typically there's only one channel per link but some applications require multiple channels per link. Refer to the Ground Station manual for a full list of supported bands and antenna capabilities.
41+
A whole band, unique in direction, and unique in polarity is called a link. Channels, which are children under links, specify center frequency, bandwidth, and endpoints. Typically there's only one channel per link but some applications require multiple channels per link.
4242

43-
You can specify an EIRP and G/T requirement for each link. EIRP applies to uplinks and G/T applies to downlinks. You can give a name to each link and channel to keep track of these properties.
43+
You can specify an EIRP and G/T requirement for each link. EIRP applies to uplinks and G/T applies to downlinks. You can give a name to each link and channel to keep track of these properties and each channel has a modem associated with it. Follow the steps in [how to setup software modem](modem-chain.md) to understand the options.
4444

4545
Look at the example below to see how to specify an RHCP channel and an LHCP channel if your mission requires dual-polarization on downlink.
4646

@@ -114,24 +114,6 @@ Look at the example below to see how to specify an RHCP channel and an LHCP chan
114114
}
115115
```
116116

117-
118-
## Applying modems or bring your own
119-
120-
We recommend taking advantage of Orbital's GSaaS software modem functionality if possible. This modem is managed by the service and is inserted between your endpoint and the incoming or outgoing virtual RF stream per channel. We have a library of modems that will be available in the marketplace for you to utilize. If there is no modem that can be used with your application then utilize the virtual RF delivery feature to bring your own modem.
121-
122-
There are 4 parameters related to modem configurations. The table below shows you how to configure these parameters.
123-
124-
| Parameter | Options |
125-
|---------------------------|-----------------------------------------------------------------------------|
126-
| modulationConfiguration | 1. Null for virtual RF<br />2. JSON escaped modem config for software modem |
127-
| demodulationConfiguration | 1. Null for virtual RF<br />2. JSON escaped modem config for software modem |
128-
| encodingConfiguration | Null (not used) |
129-
| decodingConfiguration | Null (not used) |
130-
131-
Use the same modem config file in uplink and downlink channels for full-duplex communications in the same band.
132-
133-
The modem config should be a JSON escaped raw save file from a software modem. Please see the marketplace for modem options.
134-
135117
## Modifying or deleting a contact profile
136118

137119
You can modify or delete the contact profile via the Portal or through the API.
@@ -143,5 +125,6 @@ When you onboard a third party network, you'll receive a token that identifies y
143125
## Next steps
144126

145127
- [Schedule a contact](schedule-contact.md)
128+
- [Configure the RF chain](modem-chain.md)
146129
- [Update the Spacecraft TLE](update-tle.md)
147130

articles/orbital/contact-profile.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,9 +60,9 @@ Sign in to the [Azure portal - Orbital](https://aka.ms/orbital/portal).
6060
| IP Address | Specify the IP Address for data retrieval/delivery |
6161
| Port | Specify the Port for data retrieval/delivery |
6262
| Protocol | Select TCP or UDP protocol for data retrieval/delivery |
63-
| Demodulation Configuration (Downlink only) | If applicable, paste your modem demodulation configuration |
63+
| Demodulation Configuration (Downlink only) | Refer to [configure the modem chain](modem-chain.md) for options. |
6464
| Decoding Configuration (Downlink only)| If applicable, paste your decoding configuration |
65-
| Modulation Configuration (Uplink only) | If applicable, paste your modem modulation configuration |
65+
| Modulation Configuration (Uplink only) | Refer to [configure the modem chain](modem-chain.md) for options. |
6666
| Encoding Configuration (Uplink only)| If applicable, paste your encoding configuration |
6767

6868
:::image type="content" source="media/orbital-eos-contact-link.png" alt-text="Contact Profile Links Page" lightbox="media/orbital-eos-contact-link.png":::
@@ -74,5 +74,6 @@ Sign in to the [Azure portal - Orbital](https://aka.ms/orbital/portal).
7474
## Next steps
7575

7676
- [How-to Receive real-time telemetry](receive-real-time-telemetry.md)
77+
- [Configure the RF chain](modem-chain.md)
7778
- [Schedule a contact](schedule-contact.md)
7879
- [Cancel a contact](delete-contact.md)

articles/orbital/downlink-aqua.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ sudo apt install socat
130130
| IP Address | Enter the Private IP address of the virtual machine you created above (VM) |
131131
| Port | **56001** |
132132
| Protocol | **TCP** |
133-
| Demodulation Configuration | Leave this field **blank** or request a demodulation configuration from the [Azure Orbital team](mailto:[email protected]) to use a software modem. Include your Subscription ID, Spacecraft resource ID, and Contact Profile resource ID in your email request.|
133+
| Demodulation Configuration | Select the 'Preset Named Modem Configuration' option and choose **Aqua Direct Broadcast**|
134134
| Decoding Configuration | Leave this field **blank** |
135135

136136

126 KB
Loading
142 KB
Loading

articles/orbital/modem-chain.md

Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
---
2+
title: Configure the RF chain - Azure Orbital
3+
description: Learn more about how to configure modems.
4+
author: hrshelar
5+
ms.service: orbital
6+
ms.topic: how-to
7+
ms.custom: ga
8+
ms.date: 08/30/2022
9+
ms.author: hrshelar
10+
#Customer intent: As a satellite operator or user, I want to understand how to use software modems to establish RF connections with my satellite.
11+
---
12+
13+
# How to configure the RF chain
14+
15+
You have the flexibility to choose between managed modem or virtual RF functionality using the Azure Orbital Ground Station service. These operational modes are specified on a per channel basis in the contact profile. See [ground station contact profile](concepts-contact-profile.md) to learn more about channels and links.
16+
17+
## Managed modems vs virtual RF delivery
18+
19+
We recommend taking advantage of Orbital Ground Station's managed modem functionality if possible. The modem is managed by the service and is inserted between your endpoint and the incoming or outgoing virtual RF stream for each pass. You can specify the modem setup using a modem configuration file or apply one of the in-built named modem configurations for commonly used public satellites such as Aqua.
20+
21+
Use virtual RF delivery if you wish to have tighter control on the modem setup or bring your own modem to the resource group. Orbital Ground Station will connect to your channel endpoint specified in the contact profile.
22+
23+
## How to configure your channels
24+
25+
The table below shows you how to configure the modem or virtual RF parameters.
26+
27+
| Parameter | Options |
28+
|---------------------------|-----------------------------------------------------------------------------|
29+
| modulationConfiguration | 1. Null/empty for virtual RF<br />2. Modem config for software modem <br /> 3. Named modem string |
30+
| demodulationConfiguration | 1. Null/empty for virtual RF<br />2. Modem config for software modem <br /> 3. Named modem string |
31+
| encodingConfiguration | Null (not used) |
32+
| decodingConfiguration | Null (not used) |
33+
34+
> [!NOTE]
35+
> Endpoint specified for the channel will apply to whichever option is selected. Please review [how to prepare network](prepare-network.md) for more details on setting up endpoints.
36+
37+
### For full-duplex cases
38+
Use the same modem config file in uplink and downlink channels for full-duplex communications in the same band.
39+
40+
### How to input the modem config
41+
You can enter the modem config when creating a contact profile object or add it in later. Modifications to existing modem configs are also allowed.
42+
43+
#### Entering the modem config using the API
44+
Enter the modem config as a JSON escaped string from the desired modem config file when using the API.
45+
46+
#### Entering the modem config using the portal
47+
Select 'Raw XML' and then **paste the modem config raw (without JSON escapement)** into the field shown below when entering channel details using the portal.
48+
49+
:::image type="content" source="media/azure-ground-station-modem-config-portal-entry.png" alt-text="Screenshot of entering a modem configuration into the contact profile object." lightbox="media/azure-ground-station-modem-config-portal-entry.png":::
50+
51+
### Named modem configuration
52+
We currently support the following named modem configurations.
53+
54+
| Public Satellite Service | Named modem string | Note |
55+
|--|--|--|
56+
| Aqua Direct Broadcast | aqua_direct_broadcast | This is NASA AQUA's 15-Mbps direct broadcast service |
57+
| Aqua Direct Playback | aqua_direct_playback | This is NASA's AQUA's 150-Mbps direct broadcast service |
58+
59+
> [!NOTE]
60+
> We recommend using the Aqua Direct Broadcast modem configuration when testing with Aqua.
61+
62+
#### Specifying a named modem configuration using the API
63+
Enter the named modem string into the demodulationConfiguration parameter when using the API.
64+
65+
```javascript
66+
{
67+
"location": "westus2",
68+
"tags": null,
69+
"id": "/subscriptions/c098d0b9-106a-472d-83d7-eb2421cfcfc2/resourcegroups/Demo/providers/Microsoft.Orbital/contactProfiles/Aqua-directbroadcast",
70+
"name": "Aqua-directbroadcast",
71+
"type": "Microsoft.Orbital/contactProfiles",
72+
"properties": {
73+
"minimumViableContactDuration": "PT1M",
74+
"minimumElevationDegrees": 5,
75+
"autoTrackingConfiguration": "disabled",
76+
"eventHubUri": "/subscriptions/c098d0b9-106a-472d-83d7-eb2421cfcfc2/resourceGroups/Demo/providers/Microsoft.EventHub/namespaces/demo-orbital-eventhub/eventhubs/antenna-metrics-stream",
77+
"links": [
78+
{
79+
"polarization": "RHCP",
80+
"direction": "Downlink",
81+
"gainOverTemperature": 0,
82+
"eirpdBW": 0,
83+
"channels": [
84+
{
85+
"centerFrequencyMHz": 8160,
86+
"bandwidthMHz": 15,
87+
"endPoint": {
88+
"ipAddress": "10.6.0.4",
89+
"endPointName": "my-endpoint",
90+
"port": "50001",
91+
"protocol": "TCP"
92+
},
93+
"modulationConfiguration": null,
94+
"demodulationConfiguration": "aqua_direct_broadcast",
95+
"encodingConfiguration": null,
96+
"decodingConfiguration": null
97+
}
98+
]
99+
}
100+
]
101+
}
102+
}
103+
```
104+
105+
#### Specifying a named modem configuration using the portal
106+
107+
Select 'Preset Named Modem Configuration'and chose a configuration as shown below when entering channel details using the portal.
108+
109+
:::image type="content" source="media/azure-ground-station-named-modem-example.png" alt-text="Screenshot of choosing a named modem configuration in the contact profile object." lightbox="media/azure-ground-station-named-modem-example.png":::
110+
111+
### How to use virtual RF
112+
113+
Leave the modulationConfiguration or demodulationConfiguration parameters blank in the channel parameters to use the virtual RF delivery feature. Azure Orbital Ground Station uses the [Digital Intermediate Frequency Interoperability](https://dificonsortium.org/) or DIFI format for transport of virtual RF.
114+
115+
>[!Note]
116+
>Azure Orbital Ground Station will provide an RF stream in accordance with the channel bandwidth setting to the endpoint for downlink.
117+
>
118+
>Azure Orbital Ground Station expects an RF stream in accordance with the channel bandwidth setting from the endpoint for uplink.
119+
120+
## Next steps
121+
122+
- [Register Spacecraft](register-spacecraft.md)
123+
- [Prepare the network](prepare-network.md)
124+
- [Schedule a contact](schedule-contact.md)

articles/orbital/prepare-network.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,4 +99,5 @@ Here's how to set up the link flows based on direction on tcp or udp preference.
9999
## Next steps
100100

101101
- [Register Spacecraft](register-spacecraft.md)
102+
- [Configure the modem chain](modem-chain.md)
102103
- [Schedule a contact](schedule-contact.md)

0 commit comments

Comments
 (0)