|
| 1 | +--- |
| 2 | +title: Schedule a contact with NASA's AQUA public satellite using Azure Orbital Earth Observation Service |
| 3 | +description: How to schedule a contact with NASA's AQUA public satellite using Azure Orbital Earth Observation Service |
| 4 | +author: wamota |
| 5 | +ms.service: orbital |
| 6 | +ms.topic: how-to |
| 7 | +ms.custom: public-preview |
| 8 | +ms.date: 04/14/2022 |
| 9 | +ms.author: wamota |
| 10 | +# Customer intent: As a satellite operator, I want to ingest data from NASA's AQUA public satellite into Azure. |
| 11 | +--- |
| 12 | + |
| 13 | +# Tutorial: Downlink data from NASA's AQUA public satellite |
| 14 | + |
| 15 | +You can communicate with satellites directly from Azure using Azure Orbital's ground station service. Once downlinked, this data can be processed and analyzed in Azure. In this guide you'll learn how to: |
| 16 | + |
| 17 | +> [!div class="checklist"] |
| 18 | +> * Create & authorize a spacecraft for AQUA |
| 19 | +> * Prepare a virtual machine (VM) to receive the downlinked AQUA data |
| 20 | +> * Configure a contact profile for an AQUA downlink mission |
| 21 | +> * Schedule a contact with AQUA using Azure Orbital and save the downlinked data |
| 22 | +
|
| 23 | + |
| 24 | +## Prerequisites |
| 25 | + |
| 26 | +- An Azure account with an active subscription. [Create an account for free](https://azure.microsoft.com/free/?WT.mc_id=A261C142F). |
| 27 | +- Complete the onboarding process for the preview. [Onboard to the Azure Orbital Preview](orbital-preview.md). |
| 28 | + |
| 29 | +## Sign in to Azure |
| 30 | + |
| 31 | +Sign in to the [Azure portal - Orbital Preview](https://aka.ms/orbital/portal). |
| 32 | + |
| 33 | +> [!NOTE] |
| 34 | +> These steps must be followed as is or you won't be able to find the resources. Please use the specific link above to sign in directly to the Azure Orbital Preview page. |
| 35 | +
|
| 36 | +## Create & authorize a spacecraft for AQUA |
| 37 | +1. In the Azure portal search box, enter **Spacecrafts*. Select **Spacecrafts** in the search results. |
| 38 | +2. In the **Spacecrafts** page, select Create. |
| 39 | +3. Learn an up-to-date Two-Line Element (TLE) for AQUA by checking celestrak at https://celestrak.com/NORAD/elements/active.txt |
| 40 | + > [!NOTE] |
| 41 | + > You will want to periodically update this TLE value to ensure that it is up-to-date prior to scheduling a contact. A TLE that is more than one or two weeks old may result in an unsuccessful downlink. |
| 42 | +4. In **Create spacecraft resource**, enter or select this information in the Basics tab: |
| 43 | + |
| 44 | + | **Field** | **Value** | |
| 45 | + | --- | --- | |
| 46 | + | Subscription | Select your subscription | |
| 47 | + | Resource Group | Select your resource group | |
| 48 | + | Name | **AQUA** | |
| 49 | + | Region | Select **West US 2** | |
| 50 | + | NORAD ID | **27424** | |
| 51 | + | TLE title line | **AQUA** | |
| 52 | + | TLE line 1 | Enter TLE line 1 from Celestrak | |
| 53 | + | TLE line 2 | Enter TLE line 2 from Celestrak | |
| 54 | + |
| 55 | +5. Select the **Links** tab, or select the **Next: Links** button at the bottom of the page. |
| 56 | +6. In the **Links** page, enter or select this information: |
| 57 | + |
| 58 | + | **Field** | **Value** | |
| 59 | + | --- | --- | |
| 60 | + | Direction | Select **Downlink** | |
| 61 | + | Center Frequency | Enter **8160** | |
| 62 | + | Bandwidth | Enter **15** | |
| 63 | + | Polarization | Select **RHCP** | |
| 64 | + |
| 65 | +7. Select the **Review + create** tab, or select the **Review + create** button. |
| 66 | +8. Select **Create** |
| 67 | + |
| 68 | +9. Access the [Azure Orbital Spacecraft Authorization Form](https://forms.office.com/r/QbUef0Cmjr) |
| 69 | +10. Provide the following information: |
| 70 | + |
| 71 | + - Spacecraft name: **AQUA** |
| 72 | + - Region where spacecraft resource was created: **West US 2** |
| 73 | + - Company name and email |
| 74 | + - Azure Subscription ID |
| 75 | + |
| 76 | +11. Submit the form |
| 77 | +12. Await a 'Spacecraft resource authorized' email from Azure Orbital |
| 78 | + > [!NOTE] |
| 79 | + > You can confirm that your spacecraft resource for AQUA is authorized by checking that the **Authorization status** shows **Allowed** in the spacecraft's overiew page. |
| 80 | +
|
| 81 | + |
| 82 | +## Prepare a virtual machine (VM) to receive the downlinked AQUA data |
| 83 | +1. [Create a virtual network](../virtual-network/quick-create-portal.md) to host your data endpoint virtual machine (VM) |
| 84 | +2. [Create a virtual machine (VM)](../virtual-network/quick-create-portal.md) within the virtual network above. Ensure that this VM has the following specifications: |
| 85 | +- Operation System: Linux (Ubuntu 18.04 or higher) |
| 86 | +- Size: at least 32 GiB of RAM |
| 87 | +- Ensure that the VM has at least one standard public IP |
| 88 | +3. Create a tmpfs on the virtual machine. This virtual machine is where the data will be written to in order to avoid slow writes to disk: |
| 89 | +```console |
| 90 | +sudo mount -t tmpfs -o size=28G tmpfs /media/aqua |
| 91 | +``` |
| 92 | +4. Ensure that socat is installed on the machine: |
| 93 | +```console |
| 94 | +sudo apt install socat |
| 95 | +``` |
| 96 | +5. Edit the [Network Security Group](../virtual-network/network-security-groups-overview.md) for the subnet that your virtual machine is using to allow inbound connections from the following IPs over TCP port 56001: |
| 97 | +- 20.47.120.4 |
| 98 | +- 20.47.120.38 |
| 99 | +- 20.72.252.246 |
| 100 | +- 20.94.235.188 |
| 101 | +- 20.69.186.50 |
| 102 | +- 20.47.120.177 |
| 103 | + |
| 104 | +## Configure a contact profile for an AQUA downlink mission |
| 105 | +1. In the Azure portal search box, enter **Contact profile**. Select **Contact profile** in the search results. |
| 106 | +2. In the **Contact profile** page, select **Create**. |
| 107 | +3. In **Create contact profile resource**, enter or select this information in the **Basics** tab: |
| 108 | + |
| 109 | + | **Field** | **Value** | |
| 110 | + | --- | --- | |
| 111 | + | Subscription | Select your subscription | |
| 112 | + | Resource group | Select your resource group | |
| 113 | + | Name | Enter **AQUA_Downlink** | |
| 114 | + | Region | Select **West US 2** | |
| 115 | + | Minimum viable contact duration | **PT1M** | |
| 116 | + | Minimum elevation | **5.0** | |
| 117 | + | Auto track configuration | **Disabled** | |
| 118 | + | Event Hubs Namespace | Select an Event Hubs Namespace to which you'll send telemetry data of your contacts. Select a Subscription before you can select an Event Hubs Namespace. | |
| 119 | + | Event Hubs Instance | Select an Event Hubs Instance that belongs to the previously selected Namespace. *This field will only appear if an Event Hubs Namespace is selected first*. | |
| 120 | + |
| 121 | + |
| 122 | +4. Select the **Links** tab, or select the **Next: Links** button at the bottom of the page. |
| 123 | +5. In the **Links** page, select **Add new Link** |
| 124 | +6. In the **Add Link** page, enter, or select this information: |
| 125 | + |
| 126 | + | **Field** | **Value** | |
| 127 | + | --- | --- | |
| 128 | + | Direction | **Downlink** | |
| 129 | + | Gain/Temperature in db/K | **0** | |
| 130 | + | Center Frequency | **8160.0** | |
| 131 | + | Bandwidth MHz | **15.0** | |
| 132 | + | Polarization | **RHCP** | |
| 133 | + | Endpoint name | Enter the name of the virtual machine (VM) you created above | |
| 134 | + | IP Address | Enter the Public IP address of the virtual machine you created above (VM) | |
| 135 | + | Port | **56001** | |
| 136 | + | Protocol | **TCP** | |
| 137 | + | 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. | |
| 138 | + | Decoding Configuration | Leave this field **blank** | |
| 139 | + |
| 140 | + |
| 141 | +7. Select the **Submit** button |
| 142 | +8. Select the **Review + create** tab or select the **Review + create** button |
| 143 | +9. Select the **Create** button |
| 144 | + |
| 145 | +## Schedule a contact with AQUA using Azure Orbital and save the downlinked data |
| 146 | +1. In the Azure portal search box, enter **Spacecrafts**. Select **Spacecrafts** in the search results. |
| 147 | +2. In the **Spacecrafts** page, select **AQUA**. |
| 148 | +3. Select **Schedule contact** on the top bar of the spacecraft’s overview. |
| 149 | +4. In the **Schedule contact** page, specify this information from the top of the page: |
| 150 | + |
| 151 | + | **Field** | **Value** | |
| 152 | + | --- | --- | |
| 153 | + | Contact profile | Select **AQUA_Downlink** | |
| 154 | + | Ground station | Select **Quincy** | |
| 155 | + | Start time | Identify a start time for the contact availability window | |
| 156 | + | End time | Identify an end time for the contact availability window | |
| 157 | + |
| 158 | +5. Select **Search** to view available contact times. |
| 159 | +6. Select one or more contact windows and select **Schedule**. |
| 160 | +7. View the scheduled contact by selecting the **AQUA** spacecraft and navigating to **Contacts**. |
| 161 | +8. Shortly before the contact begins executing, start listening on port 56001, and output the data received into the file: |
| 162 | +```console |
| 163 | +socat -u tcp-listen:56001,fork create:/media/aqua/out.bin |
| 164 | +``` |
| 165 | +9. Once your contact has executed, copy the output file, |
| 166 | +```console |
| 167 | +/media/aqua/out.bin out |
| 168 | +``` |
| 169 | + of the tmpfs and into your home directory to avoid being overwritten when another contact is executed. |
| 170 | + |
| 171 | + > [!NOTE] |
| 172 | + > For a 10 minute long contact with AQUA while it is transmitting with 15MHz of bandwidth, you should expect to receive somewhere in the order of 450MB of data. |
| 173 | + |
| 174 | +## Next steps |
| 175 | + |
| 176 | +- [Quickstart: Configure a contact profile](contact-profile.md) |
| 177 | +- [Quickstart: Schedule a contact](schedule-contact.md) |
0 commit comments