Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
80 commits
Select commit Hold shift + click to select a range
7c15c33
Big Dish control is working! Updated with MIT location.
featherfeet Feb 10, 2024
6d0a067
Working on compatibility with big dish radar, plus bugfixes for origi…
Feb 14, 2024
2e516a9
move block tags strobe ahead of radio wait for pps
dsheen2019 Feb 16, 2024
3ae84a8
modify dashboard to display raw n-point scan data and Fix axis scalin…
Feb 18, 2024
172bb5c
add control to change number of points in N-point scan function
Feb 19, 2024
a6bdad7
add prototype functions for passthroughs for galactic and radec point…
Feb 20, 2024
c488423
add messaging for the ettus radio to control noise calibrator functions
dsheen2019 Feb 21, 2024
aa75cf2
Erase calibration values prior to running new cal.
Feb 21, 2024
b1d8678
added explicit calon and caloff commands to daemon to allow
Mar 3, 2024
5849098
add calibrator state metadata to the .rad file output
Mar 3, 2024
5ab6b31
added 10MHz and PPS lock commands at SDR startup to radio_process.py
Sep 17, 2024
f56a6f7
added offset tuning to remove DC spike and tweaked the gain a bit to …
Sep 17, 2024
922da9d
RF gain control added to daemon and dashboard
Sep 17, 2024
f6d57ef
heavily modified calibration command to do initial file saves for a p…
dsheen2019 Sep 18, 2024
248b37a
fixing thing the git rebase lost
dsheen2019 Sep 21, 2024
fcd7bbd
.
dsheen2019 Sep 21, 2024
7f1a594
added catch for exception in monitor.py objects import since that see…
Sep 21, 2024
f67aeee
minor tweak to monitor page but seems like something is very borked a…
dsheen2019 Sep 21, 2024
579d2a5
mod command_button_presed definition in monitor.py to hopefully work …
dsheen2019 Sep 21, 2024
81b39f6
FINALLY! actually have everything working
Sep 21, 2024
5e7b373
Removed old bad interpolated N point graph and changed graphs order
dsheen2019 Sep 21, 2024
0c008c5
swapped N point order in display
dsheen2019 Sep 21, 2024
65baad9
Big Dish control is working! Updated with MIT location.
featherfeet Feb 10, 2024
a5a1a8c
Working on compatibility with big dish radar, plus bugfixes for origi…
Feb 14, 2024
36ebd2a
move block tags strobe ahead of radio wait for pps
dsheen2019 Feb 16, 2024
d2e11ed
modify dashboard to display raw n-point scan data and Fix axis scalin…
Feb 18, 2024
3d61928
add control to change number of points in N-point scan function
Feb 19, 2024
1922ba9
add prototype functions for passthroughs for galactic and radec point…
Feb 20, 2024
08422cf
add messaging for the ettus radio to control noise calibrator functions
dsheen2019 Feb 21, 2024
78388e1
Erase calibration values prior to running new cal.
Feb 21, 2024
18c2f48
added explicit calon and caloff commands to daemon to allow
Mar 3, 2024
bc984f8
add calibrator state metadata to the .rad file output
Mar 3, 2024
a5448c0
added 10MHz and PPS lock commands at SDR startup to radio_process.py
Sep 17, 2024
21ba736
added offset tuning to remove DC spike and tweaked the gain a bit to …
Sep 17, 2024
21a168e
RF gain control added to daemon and dashboard
Sep 17, 2024
551d0f9
heavily modified calibration command to do initial file saves for a p…
dsheen2019 Sep 18, 2024
744a98b
fixing thing the git rebase lost
dsheen2019 Sep 21, 2024
ca59639
.
dsheen2019 Sep 21, 2024
b2c21d9
added catch for exception in monitor.py objects import since that see…
Sep 21, 2024
fab0b75
minor tweak to monitor page but seems like something is very borked a…
dsheen2019 Sep 21, 2024
cd5d6d4
mod command_button_presed definition in monitor.py to hopefully work …
dsheen2019 Sep 21, 2024
cc19732
FINALLY! actually have everything working
Sep 21, 2024
26a8c9a
Removed old bad interpolated N point graph and changed graphs order
dsheen2019 Sep 21, 2024
d1ff9ae
swapped N point order in display
dsheen2019 Sep 21, 2024
109e899
Merge branch 'temp_noisecal' into temp_noisecal_b
dsheen2019 Sep 22, 2024
fd83ccb
make beam footpring in zoom plot round
dsheen2019 Sep 22, 2024
6bfca45
Corrected VLSR Calculation per Jorian
dsheen2019 Sep 22, 2024
c28f33e
update calculate_vlsr_azel function with hopefuly now correct vlsr math
dsheen2019 Sep 23, 2024
cf3de5f
disabled azeltime graph for normal SRT code to make UI more responsive
Sep 23, 2024
da91f19
returned object tracker to base haystack code for now
dsheen2019 Sep 23, 2024
012fd71
changed beam marker in main azel plot to be oval stretched in azimuth…
Sep 24, 2024
1a41784
fixed broken timed command execution commands and added comments so i…
Sep 24, 2024
ba334fa
made the thing just take normal iso formatted times
Sep 24, 2024
24a1389
overhaul of object_tracker.py code to have only one vlsr calculation …
dsheen2019 Oct 1, 2024
e51857d
commented out multiple apparently unused azel calculations in object_…
dsheen2019 Oct 1, 2024
decbdd4
mostly working modulo type issue in status passing
Oct 1, 2024
e72411c
Update object_tracker.py
dsheen2019 Oct 1, 2024
798d448
Update daemon.py
dsheen2019 Oct 1, 2024
fb7dcc5
further reduced unnecessary calculations of VLSR and simplified calls…
dsheen2019 Oct 1, 2024
a88097c
Update daemon.py
dsheen2019 Oct 1, 2024
0d005c7
make rotor loop more responsive while updating celestial coord calcs …
dsheen2019 Oct 1, 2024
545133a
minor tweak to ephemeris update timing
dsheen2019 Oct 1, 2024
bfc8ad4
make status refresh rate and UI refresh rate the same
Oct 2, 2024
6ad9a12
Update daemon.py
dsheen2019 Oct 8, 2024
923ee82
Update monitor_page.py
dsheen2019 Oct 8, 2024
47b5852
Update monitor_page.py
dsheen2019 Oct 8, 2024
4177816
Added support for RaDec and Galactic Coordinate pointing commands (#1)
dsheen2019 Oct 14, 2024
7698fae
Update command_files.md
dsheen2019 Oct 14, 2024
472008f
Update command_files.md
dsheen2019 Oct 15, 2024
11d4e36
Add Celestial Coordinate UI commands (#2)
dsheen2019 Oct 15, 2024
752d152
reenabled recording alert code from haystack, need to debug. (#3)
dsheen2019 Oct 15, 2024
5df9fca
fixed cygnus A coordinates to match Simbad database
Oct 15, 2024
27fa63d
add a digit to the position readouts
dsheen2019 Oct 15, 2024
25a6858
reinstated separate cygEMN position
Oct 16, 2024
bab7589
fix bounds check to be modulo 360 degrees so zero crossover doesn't m…
dsheen2019 Oct 23, 2024
7e4573a
fix drf save
dsheen2019 Nov 4, 2024
0dbe360
config ghange to make the maximum elevation of the antenna 87 degrees…
dsheen2019 Nov 25, 2024
19e6be0
fix oddball extra ZMQ command that seems to break the radio control o…
Nov 27, 2024
2461619
rotor compatibility fixes for normal SRTs (#13)
dsheen2019 Feb 25, 2025
4b2008c
fix a couple haystack specific things that got left in by accident
dsheen2019 Feb 25, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 31 additions & 28 deletions config/config.yaml
Original file line number Diff line number Diff line change
@@ -1,49 +1,52 @@
SOFTWARE: Small Radio Telescope
STATION:
latitude: 42.5
longitude: -71.5
name: Haystack
latitude: 42.360236
longitude: -71.089694
name: W1XM
EMERGENCY_CONTACT:
name: John Doe
email: test@example.com
phone_number: 555-555-5555
name: Oliver Trevor
email: olt@mit.edu
phone_number: 925-367-3607
AZLIMITS:
lower_bound: 38.0
upper_bound: 355.0
lower_bound: 0.0
upper_bound: 360.0
ELLIMITS:
lower_bound: 0.0
upper_bound: 89.0
upper_bound: 87.0
STOW_LOCATION:
azimuth: 38.0
elevation: 0.0
azimuth: 60.0
elevation: 30.0
CAL_LOCATION:
azimuth: 120.0
elevation: 7.0
azimuth: 270.0
elevation: 50.0
HORIZON_POINTS:
- azimuth: 0
elevation: 0
- azimuth: 120
elevation: 5
elevation: 0
- azimuth: 240
elevation: 5
elevation: 0
- azimuth: 360
elevation: 0
MOTOR_TYPE: NONE
MOTOR_PORT: /dev/ttyUSB0
MOTOR_BAUDRATE: 600
MOTOR_TYPE: W1XMBIGDISH
MOTOR_PORT: None
MOTOR_BAUDRATE: 0
RADIO_CF: 1420000000
RADIO_SF: 2400000
RADIO_FREQ_CORR: -50000
RADIO_NUM_BINS: 256
RADIO_INTEG_CYCLES: 100000
RADIO_SF: 2000000
RADIO_FREQ_CORR: 00000
RADIO_RF_GAIN: 20
RADIO_NUM_BINS: 512
RADIO_INTEG_CYCLES: 8192
RADIO_AUTOSTART: Yes
NUM_BEAMSWITCHES: 25
BEAMWIDTH: 7.0
TSYS: 171
TCAL: 290
SAVE_DIRECTORY: ~/Desktop/SRT-Saves
NUM_BEAMSWITCHES: 10
BEAMWIDTH: 2.9
CAL_TYPE: NOISE_DIODE
CAL_INTEGRATION_CYCLES: 5
TSYS: 60.0
TCAL: 48.5
SAVE_DIRECTORY: /data/jlab
RUN_HEADLESS: No
DASHBOARD_PORT: 8080
DASHBOARD_HOST: 0.0.0.0
DASHBOARD_DOWNLOADS: Yes
DASHBOARD_REFRESH_MS: 3000
DASHBOARD_REFRESH_MS: 500
5 changes: 4 additions & 1 deletion config/schema.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,20 @@ ELLIMITS: include('limit')
STOW_LOCATION: include('az_el_point')
CAL_LOCATION: include('az_el_point')
HORIZON_POINTS: list(include('az_el_point'), min=0)
MOTOR_TYPE: enum('ALFASPID', 'H180MOUNT', 'PUSHROD', 'NONE')
MOTOR_TYPE: enum('ALFASPID', 'H180MOUNT', 'PUSHROD', 'NONE', 'W1XMBIGDISH')
MOTOR_BAUDRATE: int()
MOTOR_PORT: str()
RADIO_CF: int()
RADIO_SF: int()
RADIO_RF_GAIN: int()
RADIO_FREQ_CORR: int()
RADIO_NUM_BINS: int()
RADIO_INTEG_CYCLES: int()
RADIO_AUTOSTART: bool()
NUM_BEAMSWITCHES: int()
BEAMWIDTH: num()
CAL_TYPE: enum('COLD_SKY', 'NOISE_DIODE')
CAL_INTEGRATION_CYCLES: int()
TSYS: num()
TCAL: num()
SAVE_DIRECTORY: str()
Expand Down
3 changes: 2 additions & 1 deletion config/sky_coords.csv
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ fk4,23 21 12,58 44 00,Cass
fk4,17 42 54,-28 50 00,SgrA
fk4,06 29 12,04 57 00,Rosett
fk4,18 17 30,-16 18 00,M17
fk4,19 57 44,40 35 46,CygA
fk4,20 27 00,41 00 00,CygEMN
fk4,21 12 00,48 00 00,G90
fk4,05 40 00,29 00 00,G180
Expand Down Expand Up @@ -50,4 +51,4 @@ galactic,310,0,G310
galactic,320,0,G320
galactic,330,0,G330
galactic,340,0,G340
galactic,350,0,G350
galactic,350,0,G350
24 changes: 17 additions & 7 deletions docs/command_files.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,28 +8,38 @@ The SRT software accepts commands in order to change settings at runtime as well
| Command | Parameters | Notes |Info |
|--------------|------------|-------|--------------------------------------------|
| * | Any text | 1 | Makes Line a Comment |
| stow | None | | Sends the Antenna to Stow |
| azel | [az] [el] | | Points at Azimuth 'az', Elevation 'el' |
| galactic | [l] [b]| | Points at galactic coordinates and tracks |
| radec | [ra] [dec] | 7 | Points at ICRS coordinates and tracks |
| cal | None | | Sends the Antenna to Calibration Position |
| calibrate | None | 2 | Saves Current Spec as Calibration Data |
| calibrate | None | 2 | Runs antenna calibration routine |
| calon | None | 6 | Enable calibration noise source |
| caloff | None | 6 | Disable calibration noise source |
| freq | [cf] | | Sets Center Frequency in MHz to 'cf' |
| n | None | | Run an N point scan and display results |
| npointset | [n] | | set number of points to a grid side in n point scan |
| quit | None | 3 | Stows and Gracefully Closes Daemon |
| rf_gain | [dB] | | Set Rf gain in SDR |
| record | [filename] | 4 | Starts Saving into File of Name 'filename' |
| roff | None | | Ends Current Recording if Applicable |
| azel | [az] [el] | | Points at Azimuth 'az', Elevation 'el' |
| offset | [az] [el] | | Offsets from Current Object by 'az', 'el' |
| freq | [cf] | | Sets Center Frequency in MHz to 'cf' |
| samp | [sf] | | Sets Sampling Frequency in MHz to 'sf' |
| stow | None | | Sends the Antenna to Stow |
| wait | [time] | | Stops Execution and Waits for 'time' Secs. |
| [time] | None | | Waits for 'time' Seconds |
| LST:hh:mm:ss | None | | Waits Until Next Time hh:mm:ss in UTC |
| Y:D:H:M:S | None | | Waits Until Year:DayOfYear:Hour:Minute:Sec |
| wait_utc_hms | hh:mm:ss | | Waits Until Next Time hh:mm:ss in UTC |
| wait_utc_iso | Y-m-dTH:M:S.f| 8 | Waits Until Year-Month-DayTHour:Minute:Sec |
| [name] | [n] or [b] | 5 | Points Antenna at Object named 'name' |

Additional Notes:
1. Only is considered a comment if the line starts with '\*'.
2. Calibration takes samples at its current location (which should typically be 'cal') and uses those to determine the shape of the band-pass filter and eliminate it from the calibrated spectra. Calibration should therefore by done against a non-source object of known noise temperature.
2. Calibration takes samples at its current location (which should typically be 'cal') and uses those to determine the shape of the band-pass filter and eliminate it from the calibrated spectra. Calibration should therefore by done against a non-source object of known noise temperature. The exat behavior is dependent on the type of calibrator programmed in the config.
3. Unlike the previous SRT software, 'quit' both stows and quits (ends the daemon process). After this is done, it will be necessary to restart the daemon process from command line or via the Dashboard 'Start Daemon' button.
4. Currently, three different file types are supported, and the type used is determined by the file extension of the name given. FITS (Calibrated Spectra) is used when the file ends in '.fits', rad (Calibrated Spectra) is used when it ends in '.rad', and Digital RF (Raw I/Q Samples) is used when the name lacks a file ending. If no filename is provided, Digital RF will be used with an auto-generated name. In order to use rad or FITS with an autogenerated name, use "\*.rad" or "\*.fits" respectively.
5. The names used for pointing at objects are set by the 'sky_coords.csv' file, which is further documented in the config folder portion of the docs. By default, 'Sun' and 'Moon' are already loaded.
6. calon and caloff commands are valid only for antennas with some form of noise injection or dicke switching.
7. ICRS coordinates, expects decimal degrees for both Ra and Dec
8. will accept standard iso formatted utc timestamp to any precision

##### Building Command Files

Expand Down
Loading