Comm Power Circuits in Black Square Products
-
Hey Nick,
I've been giving SayIntentions a try, and I got access to some of the more experimental features to play around with. Specifically, the avionics power and volume knobs to see if they work with your aircraft.
Volume knobs work right out of the box! I kind of expected them to, given your attention to detail. Avionics power was not working quite like I expected it to, however. Currently, with the "aircraft model controls avionics power" option set to ON, the radios in the Black Square products that I have tested will act as though they are on regardless of battery or circuit breaker status (obviously you can't tune new frequencies though). Example: I tuned to an ATIS frequency with battery and avionics power on, or just ground comm power in the Starship, and then turned everything off again. As far as SI was concerned, I still had power and I kept hearing the ATIS.
Here is a list of the variables they are monitoring for various things: https://portal.sayintentions.ai/simapi/v1/input_variables.txt
Specifically, to my untrained eye, these three sets of variables are not being set for the avionics power control:
-------------------------- Variable: "CIRCUIT COM ON:1" (INT) Required: No [Settings, Experimental has an option to allow the aircraft model to control the power of the radios. This is only required if you want that to function.] Description: If the pilot has checked the box for "Aircraft model controls radio power", then this determines whether the circuit-breaker for COM1 is active. Possible values are 1 or 0. If your simulator does not support this, set this to 1, always. -------------------------- Variable: "CIRCUIT COM ON:2" (INT) Required: No [Settings, Experimental has an option to allow the aircraft model to control the power of the radios. This is only required if you want that to function.] Description: If the pilot has checked the box for "Aircraft model controls radio power", then this determines whether the circuit-breaker for COM2 is active. Possible values are 1 or 0. If your simulator does not support this, set this to 1, always. -------------------------- Variable: "ELECTRICAL MASTER BATTERY:0" (INT) Required: No [Settings, Experimental has an option to allow the aircraft model to control the power of the radios. This is only required if you want that to function.] Description: If the pilot has checked the box for "Aircraft model controls radio power", then this determines whether the airplane electrical master switch is on or off. Possible values are 1 or 0. --------------------------I did a quick search of the systems.cfg for the Starship (the Bonanza was the other one I tested using the GNS 530/430), and I found lines for CIRCUIT_COM:1, but nothing for CIRCUIT COM ON. I suppose that might make the difference? I did find the CIRCUIT COM ON in the SimVars list in the SDK. Same in the Bonanza systems.cfg
I am a little surprised to not find anything on the ELECTRICAL MASTER BATTERY in the systems.cfg, though, but maybe for what you're doing it serves no purpose.
Maybe systems.cfg was the completely wrong place for me to be looking.
Would you be amenable into looking into making these work? I can find nothing on the exact order of how it checks these things, and I am more than happy to make modifications to my local copy under your guidance for testing purposes. I would suspect ELECTRICAL MASTER BATTERY is the overall one it's checking, and if it finds one of the CIRCUIT COM ONs set to 0 it will act appropriately, but that's just a semi-educated guess on my part.
This is wholly unnecessary as anything more than advanced tinkering for niche quality of life isms, but I have also hassled you on here enough to know that you generally enjoy these sorts of side projects

Thanks for any help!
-
Hi Nick, hopefully things with the Caravan have settled down enough for you to give your thoughts on some of this.
-
@Black-Square Do you have any interest in looking into this?
-
Unfortunately this issue is on the SayIntentions side. The CIRCUIT COM ON functionality is working in the Starship (and every other plane I've tried) and can be observed by watching the simvar directly, e.g. with Simvar Watcher.
But SI currently seems to be ignoring it, even when "aircraft model controls avionics power" is set to on in the experimental options. I'm pretty sure this worked before the settings were moved to the Pilot Portal, so they may have made a mistake in that process. It works in BeyondATC. -
Now that's mysterious. So COM1 is showing greyed out or off in the SayIntentions window when loaded into the PMDG 737? I don't have any PMDG planes, but SayIntentions is always-on with every plane I've tried. I guess I should ask if you're on 2020 or 2024 as that might affect things. I'm on 2024.
Just in case I tried some FS2020 planes (In 2024) as well, but it's the same with them. -
What's actually showing in the COM entries at the top of the SayIntentions window when you're in the powered-down PMDG? COM1 is a greyed out frequency number? Or it says OFF instead of a frequency?
-
(It's a separate topic from circuit power, but the COM RECEIVE:1 variable always shows as true/1 even when a zero is sent to COM1_RECEIVE_SELECT, unlike COM RECEIVE:2 which works like you'd expect with sending 1 or 0 to COM2_RECEIVE_SELECT.
SayIntentions appears to be reading COM RECEIVE:1 (and presumably COM RECEIVE:2), since it recognizes turning off COM2 receive but always shows COM1 receive as on even when it's off, in e.g. the Starship. (There are newer (I assume, because of the EX naming) variables called COM RECEIVE EX1:1 and COM RECEIVE EX1:2 which actually do work as expected and COM RECEIVE EX1:1 turns on and off depending on sending 1 or 0 to COM1_RECEIVE_SELECT. But SI doesn't seem to be looking at that currently.)) -
What's actually showing in the COM entries at the top of the SayIntentions window when you're in the powered-down PMDG? COM1 is a greyed out frequency number? Or it says OFF instead of a frequency?
@Magenta-Line said in Comm Power Circuits in Black Square Products:
What's actually showing in the COM entries at the top of the SayIntentions window when you're in the powered-down PMDG? COM1 is a greyed out frequency number? Or it says OFF instead of a frequency?
Both comm frequencies are shown. Com 1 is in green and Com 2 is in grey, however I cannot hear Com 1 (or Com 2) until the volume knob is depressed on the radio panel. Perhaps it is doing it via volume manipulation instead of turning it "off" since when the knob is depressed, with the advanced settings on I can also change the volume by rotating the knob.
I see similar behavior with vPilot in that the active TX frequency is always marked RX as well (but did not have a controller nearby to test whether I could hear anything).
-
Just adding my two cents: Iβve noticed that the SI app is forcing COM1 RECEIVE to stay ON. For example, if I switch to COM3 RECEIVE ON / COM3 MIC ON and manually turn COM1 RECEIVE OFF, after a few seconds the SI app turns COM1 RECEIVE back on again.
If I close the SI app, this behavior stops completely and only COM3 RECEIVE/MIC remains ON. So it does seem the issue is coming from the SI app after all.
-
@jmarkows said in Comm Power Circuits in Black Square Products:
Perhaps it is doing it via volume manipulation
Ah if they set the starting volume to 0, then that'd work since that aspect is working in SI. But unless the volume gets set back to 0 when you turn the power to the radio off, SI will keep talking after you've shut down the plane. Also means SI will ignore electrical failures.
I went and tested BeyondATC a bit more. It does monitor CIRCUIT COM ON (both 1 and 2, independently): anything that breaks that (e.g. pulling a circuit breaker) will silence that radio, so that's good...but...it turns out BATC has the opposite problem from SI: it doesn't monitor the receive settings at all, whereas SI at least understands COM2 receive being off.
Of course BATC is weird regarding COM2 anyway, because it only lets you use it for ATIS/ASOS/AWOS. If you have COM2 on something other than a weather reporting frequency, it treats COM2 as off. -
Just adding my two cents: Iβve noticed that the SI app is forcing COM1 RECEIVE to stay ON. For example, if I switch to COM3 RECEIVE ON / COM3 MIC ON and manually turn COM1 RECEIVE OFF, after a few seconds the SI app turns COM1 RECEIVE back on again.
If I close the SI app, this behavior stops completely and only COM3 RECEIVE/MIC remains ON. So it does seem the issue is coming from the SI app after all.
@hangar_101 said in Comm Power Circuits in Black Square Products:
if I switch to COM3 RECEIVE ON / COM3 MIC ON and manually turn COM1 RECEIVE OFF, after a few seconds the SI app turns COM1 RECEIVE back on again.
Now that I haven't seen.
Although in the process of trying to replicate it, I found something interesting. if you turn both comm1 and comm2 receive off in the Starship, SI will show as active (green) only whichever radio is selected as the transmitter. So setting transmit to comm2 causes SI to show COM1's frequency in grey.
Looking at COM RECEIVE:1 and COM RECEIVE:2 in Simvar Watcher, sure enough, they're set to 1 if that radio is set to transmit, regardless of whether it's set to receive. So my understanding about COM RECEIVE:1 and COM RECEIVE:2 being different was incorrect; it's the transmit selection that's causing it.But there doesn't seem to be an MSFS function to set transmit to com3?EDIT: Alright I see now, if you send the control PILOT_TRANSMITTER_SET with a value of 2 (0 = com1, 1 = com2, so 2 is presumably com3) then SI briefly shows both com1 and com2 freqs greyed out (which made me happy for a few seconds) before automatically switching com1 receive on (though not com1 transmit). What in the world?
-
@hangar_101 said in Comm Power Circuits in Black Square Products:
if I switch to COM3 RECEIVE ON / COM3 MIC ON and manually turn COM1 RECEIVE OFF, after a few seconds the SI app turns COM1 RECEIVE back on again.
Now that I haven't seen.
Although in the process of trying to replicate it, I found something interesting. if you turn both comm1 and comm2 receive off in the Starship, SI will show as active (green) only whichever radio is selected as the transmitter. So setting transmit to comm2 causes SI to show COM1's frequency in grey.
Looking at COM RECEIVE:1 and COM RECEIVE:2 in Simvar Watcher, sure enough, they're set to 1 if that radio is set to transmit, regardless of whether it's set to receive. So my understanding about COM RECEIVE:1 and COM RECEIVE:2 being different was incorrect; it's the transmit selection that's causing it.But there doesn't seem to be an MSFS function to set transmit to com3?EDIT: Alright I see now, if you send the control PILOT_TRANSMITTER_SET with a value of 2 (0 = com1, 1 = com2, so 2 is presumably com3) then SI briefly shows both com1 and com2 freqs greyed out (which made me happy for a few seconds) before automatically switching com1 receive on (though not com1 transmit). What in the world?
@Magenta-Line Iβve opened a ticket with SI explaining the situation. Letβs see what they come back with.
-
I made a Lua script for FSUIPC7 that sets the active frequency to a dummy frequency when COM CIRCUIT ON is off, and restores it to the previous frequency when COM CIRCUIT ON is on, for COM1 and COM2 separately. (Initially I tried using SI's start/stop ATC keybind, muting the whole SI app, changing COM volumes, and changing COM receive selection, but changing the frequency worked out the best.)
Requires the payware version of FSUIPC7 to run.
com1_power_offset = 0x66DE -- A:CIRCUIT COM ON:1 com2_power_offset = 0x66DF -- A:CIRCUIT COM ON:2 com_active_hz = {} com_active_hz[com1_power_offset] = 0x05C4 com_active_hz[com2_power_offset] = 0x05C8 RADIO_SET_HZ = {} RADIO_SET_HZ[com1_power_offset] = 67240 RADIO_SET_HZ[com2_power_offset] = 67242 stored_frequency = {} stored_frequency[com1_power_offset] = nil stored_frequency[com2_power_offset] = nil dummy_frequency = 111000000 function check(power_offset,power_status) if power_status == 0 then stored_frequency[power_offset] = ipc.readUD(com_active_hz[power_offset]) ipc.control(RADIO_SET_HZ[power_offset],dummy_frequency) else if stored_frequency[power_offset] then --script is meant to be run before radios are first turned on, but check just in case ipc.control(RADIO_SET_HZ[power_offset],stored_frequency[power_offset]) end end end event.offset(com1_power_offset,"UB","check") event.offset(com2_power_offset,"UB","check") -
I opened a ticket with SI on this also.
For me, it wasn't doing this a couple weeks or so ago and doesn't do it when the SI app is closed.
Must be they are turning com1 back on in MSFS due to tickets with people that don't know how it works.X-Plane 12 works perfectly, I can switch mics and turn off radio receivers without the com1 receiver coming back on after a few seconds with the SI app connected.
