Keyboard Shortcuts
Likes
- Crestron
- Messages
Search
Re: HDMI Extender Suggestions
What is the distance you are extending the signal, and what resolution are you attempting to?use? On Mon, May 23, 2022, 5:13 PM Jonathan Troutman <jonathan@...> wrote: Does anyone have any HDMI extenders they've had good luck with? We've used Crestron's HD-EXT3 systems, but over the last couple years, we've had a disappointing failure rate (and these are typically out of state projects). So we're curious about other options, other manufactures, etc... The project budgets probably wouldn't accommodate DM or NVX? |
Re: HDMI Extender Suggestions
toggle quoted message
Show quoted text
On May 23, 2022, at 2:13 PM, Jonathan Troutman <jonathan@...> wrote:
|
HDMI Extender Suggestions
Does anyone have any HDMI extenders they've had good luck with? We've used Crestron's HD-EXT3 systems, but over the last couple years, we've had a disappointing failure rate (and these are typically out of state projects). So we're curious about other options, other manufactures, etc... The project budgets probably wouldn't accommodate DM or NVX?
Our application is apartment amenities areas. We typically have a bunch of cable boxes in the rack. We send the video and TV control over the HDMI extender to the TVs across the facility. We've thought about trying to put the cable boxes at the TV locations, but the boxes are often too large and it introduces other TV control considerations. Any thoughts? Suggestions? |
Re: Warning 153 error message when compiling simpl program
#crestron
You still have the crestron database version in the program, indicated by the "(cm)"
For each module giving you trouble: 1) "Import Crestron Module" to edit it 2) Save it into your program folder as something like "Fusion SSI New or Old Program engine v1.1b.usp" 3) Check the 2-series box and recompile. 4) In your simpl program, drop in the new version from project modules, copy signals over, then delete the "(cm)" version. |
Warning 153 error message when compiling simpl program
#crestron
Hello all, |
Re: HTML5 development for iPad
There is also a follow up video and using a simple UDP socket to talk to other programs or devices.? In that video I demo about how to use Node JS as a front end web server for a Python program.? .? But in reality, it was base on a program I wrote to do an HTML5 web interface for my Crestron MP2E processor using 15+ year old Crestron software back when Crestron's licensing terms were very simple.? All you need to do is write a very simple SIMPL+ JSON processor connected it to a SIMPL UDP socket to interface to the Raspberry Pi.? Below is the SIMPL+ code I used to do that. /* ? SIMPL+ Module Information ? (Fill in comments below) /* ? Compiler Directives */ #DEFINE_CONSTANT??? TOTALDIGITALS??? ??? 100 #DEFINE_CONSTANT??? TOTALANALOGS??? ??? 10 #DEFINE_CONSTANT??? TOTALSERIALS??? ??? 10 #DEFINE_CONSTANT Quote "\x22" #DEFINE_CONSTANT Backslash "\x5C" #DEFINE_CONSTANT LF "\x0A" #DEFINE_CONSTANT CR "\x0D" #DEFINE_CONSTANT Tab "\x09" #DEFINE_CONSTANT FF "\x0C" #DEFINE_CONSTANT Backspace "\x08" //#CATEGORY "0" #DEFAULT_VOLATILE // #PRINT_TO_TRACE // #DIGITAL_EXPAND // #ANALOG_SERIAL_EXPAND // #OUTPUT_SHIFT // #HELP_PDF_FILE "" // #DEFAULT_NONVOLATILE #ENABLE_STACK_CHECKING //#ENABLE_TRACE #HELP_BEGIN This program follows the GPL3 License: ??? This program is free software: you can redistribute it and/or modify ??? it under the terms of the GNU General Public License as published by ??? the Free Software Foundation, either version 3 of the License, or ??? (at your option) any later version. ??? This program is distributed in the hope that it will be useful, ??? but WITHOUT ANY WARRANTY; without even the implied warranty of ??? MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.? See the ??? GNU General Public License for more details. ??? You should have received a copy of the GNU General Public License ??? along with this program.? If not, see <https://www.gnu.org/licenses/>. Summary: ?? This module will only decode single JSON key:value pairs. ?? If will not decode more complicated multiple layer key:value pairs. ?? Module automatically adds/deletes escape sequences to/from JSON strings. INPUTS: ?? ?Debug??? D??? Enables debug info to be printed to the console. ?? ?Refresh??? D??? Resend all non-zero Digital, Analog, and Serial inputs to ?? ???? ??? ??? the webserver via the JSON_TX$ output. #HELP_END ????????????????????? ? DIGITAL_INPUT ?? ?Debug, ?? ?Refresh, ?? ?_SKIP_, ?? ?Dig_In[TOTALDIGITALS]; BUFFER_INPUT ?? ?_SKIP_, ?? ?JSON_RX$[2000]; ?? ? ANALOG_INPUT ?? ?_SKIP_, ?? ?Ana_In[TOTALANALOGS]; ?? ? STRING_INPUT ?? ?_SKIP_, ?? ?Ser_In$[TOTALSERIALS][256]; DIGITAL_OUTPUT ?? ?_SKIP_, ?? ?NewClient, ?? ?_SKIP_, ?? ?DigOut[TOTALDIGITALS]; STRING_OUTPUT ?? ?_SKIP_, ?? ?JSON_TX$; ?? ? ?? ? ANALOG_OUTPUT ?? ?_SKIP_, ?? ?AnaOut[TOTALANALOGS]; ?? ? STRING_OUTPUT ?? ?_SKIP_, ?? ?SerOut$[TOTALSERIALS]; INTEGER ?? ?LastDigPress, ?? ?Semaphore; STRING ??? SerialStorage$[TOTALSERIALS][256]; CHANGE JSON_RX$ ???? {??? ?? ?INTEGER Value, Index; ?? ?STRING JSON_PAIR$[512]; ?? ?STRING JSON_KEY$[512]; ?? ?STRING JSON_VALUE$[512]; ?? ?STRING JSON_TRASH[512]; ?????????? ? ??? if(Semaphore = 0) ?? ???? { ?? ???? Semaphore = 1; ?? ???? if (Debug) print("processing\n"); ?? ???? while(find("}", JSON_RX$) > 0) ?? ???? ??? { ?? ???? ??? JSON_PAIR$ = remove("}", JSON_RX$); ?? ???? ??? Index = find("{", JSON_PAIR$); ?? ???? ??? if(Index > 0) ?? ???? ??? ??? { ?? ???? ??? ??? JSON_PAIR$ = mid(JSON_PAIR$,Index,len(JSON_PAIR$)); ?? ???? ??? ??? if (Debug) print("JSON_PAIR$=%s\n",JSON_PAIR$); ?? ???? ??? ??? JSON_VALUE$ = JSON_PAIR$; ?? ???? ??? ??? // Find JSON Key ?? ???? ??? ??? JSON_KEY$ = remove(":", JSON_VALUE$);??? ??? ??? ??? ?? ???? ??? ??? JSON_TRASH = remove(Quote, JSON_KEY$); ?? ???? ??? ??? JSON_KEY$ = remove(Quote, JSON_KEY$); ?? ???? ??? ??? Index = len(JSON_KEY$); ?? ???? ??? ??? if (Index>2) {JSON_KEY$ = left(JSON_KEY$, Index-1);} ?? ???? ??? ??? ??? ??? else {JSON_KEY$ = "";} ?? ???? ??? ??? if (Debug) print("JSON_KEY$=%s\n",JSON_KEY$); ?? ???? ??? ??? // Find JSON VALUE ?? ???? ??? ??? JSON_VALUE$ = left(JSON_VALUE$,len(JSON_VALUE$)-1); // remove trailing } ?? ???? ??? ??? if (Debug) print("JSON_VALUE$=%s\n",JSON_VALUE$); ??????????????? // Digital signal ?? ???? ??? ??? if (left(JSON_KEY$, 1) = "D") // this is a Digital signal ?? ???? ??? ??? ??? { ?? ???? ??? ??? ??? index = atoi(JSON_KEY$); ?? ???? ??? ??? ??? if ((Index) && (Index <= TOTALDIGITALS)) ?? ???? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? Value = atoi(JSON_VALUE$); ?? ???? ??? ??? ??? ??? switch (Value) ?? ???? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? case (0) : ?? ???? ??? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? ??? // Test if button is action. If not, release the last button ?? ???? ??? ??? ??? ??? ??? ??? // This is in class some slides off the button while holding it ?? ???? ??? ??? ??? ??? ??? ??? if (DigOut[Index]) DigOut[Index] = 0; ?? ???? ??? ??? ??? ??? ??? ??? else if(LastDigPress) DigOut[LastDigPress] = 0; ???? ??? ??? ??? ??? ??? ??? ??? LastDigPress = 0; ?? ???? ??? ??? ??? ??? ??? ??? } ?? ???? ??? ??? ??? ??? ??? case (1) : ?? ???? ??? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? ??? DigOut[Index] = 1; ?? ???? ??? ??? ??? ??? ??? ??? LastDigPress = Index; ?? ???? ??? ??? ??? ??? ??? ??? } ?? ???? ??? ??? ??? ??? ??? case (2) : ?? ???? ??? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? ??? DigOut[Index] = 1; ?? ???? ??? ??? ??? ??? ??? ??? processlogic(); ?? ???? ??? ??? ??? ??? ??? ??? DigOut[Index] = 0; ?? ???? ??? ??? ??? ??? ??? ??? } ?? ???? ??? ??? ??? ??? ??? } ?? ???? ??? ??? ??? ??? } ?? ???? ??? ??? ??? } ?? ???? ??? ??? // Analog Signal ?? ???? ??? ??? else if (left(JSON_KEY$, 1) = "A") // this is a Analog signal ?? ???? ??? ??? ??? { ?? ???? ??? ??? ??? index = atoi(JSON_KEY$); ?? ???? ??? ??? ??? if ( (Index) && (Index <= TOTALANALOGS) ) ?? ???? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? Value = atoi(JSON_VALUE$); ?? ???? ??? ??? ??? ??? AnaOut[Index] = atoi(JSON_VALUE$); ?? ???? ??? ??? ??? ??? } ?? ???? ??? ??? ??? } ?? ???? ??? ??? //Serial signal ?? ???? ??? ??? else if (left(JSON_KEY$, 1) = "S") // this is a Serial signal ?? ???? ??? ??? ??? { ?? ???? ??? ??? ??? index = atoi(JSON_KEY$); ?? ???? ??? ??? ??? if ( (Index) && (Index <= TOTALSERIALS) ) ?? ???? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? JSON_TRASH = remove(Quote, JSON_Value$); ?????????? ? ?? ???? ??? ??? ??? ??? // Convert Backspace escape sequences ?? ???? ??? ??? ??? ??? Value = find("\\b" , JSON_Value$); ?? ???? ??? ??? ??? ??? while (Value)??? ?? ???? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? JSON_Value$ = left(JSON_Value$,Value-1) + Backspace + right(JSON_Value$, len(JSON_Value$)- (Value+1) ); ?? ???? ??? ??? ??? ??? ??? Value = find("\\b", JSON_Value$, Value+2); ?? ???? ??? ??? ??? ??? ??? } ?? ???? ??? ??? ??? ??? // Convert FormFeed escape sequences ?? ???? ??? ??? ??? ??? Value = find("\\f" , JSON_Value$); ?? ???? ??? ??? ??? ??? while (Value)??? ?? ???? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? JSON_Value$ = left(JSON_Value$,Value-1) + FF + right(JSON_Value$, len(JSON_Value$)- (Value+1) ); ?? ???? ??? ??? ??? ??? ??? Value = find("\\f", JSON_Value$, Value+2); ?? ???? ??? ??? ??? ??? ??? } ??????????????????????? ? ?? ???? ??? ??? ??? ??? // Convert LineFeed escape sequences ?? ???? ??? ??? ??? ??? Value = find("\\n" , JSON_Value$); ?? ???? ??? ??? ??? ??? while (Value)??? ?? ???? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? JSON_Value$ = left(JSON_Value$,Value-1) + LF + right(JSON_Value$, len(JSON_Value$)- (Value+1) ); ?? ???? ??? ??? ??? ??? ??? Value = find("\\n", JSON_Value$, Value+2); ?? ???? ??? ??? ??? ??? ??? } ?? ???? ??? ??? ??? ??? // Convert Carriage Return escape sequences ?? ???? ??? ??? ??? ??? Value = find("\\r" , JSON_Value$); ?? ???? ??? ??? ??? ??? while (Value)??? ?? ???? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? JSON_Value$ = left(JSON_Value$,Value-1) + CR + right(JSON_Value$, len(JSON_Value$)-(Value+1) ); ?? ???? ??? ??? ??? ??? ??? Value = find("\\r", JSON_Value$, Value+2); ?? ???? ??? ??? ??? ??? ??? } ?????????????????????? ? ?? ???? ??? ??? ??? ??? // Convert Tab escape sequences ?? ???? ??? ??? ??? ??? Value = find("\\t" , JSON_Value$); ?? ???? ??? ??? ??? ??? while (Value)??? ?? ???? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? JSON_Value$ = left(JSON_Value$,Value-1) + Tab + right(JSON_Value$, len(JSON_Value$)- (Value+1) ); ?? ???? ??? ??? ??? ??? ??? Value = find("\\t", JSON_Value$, Value+2); ?? ???? ??? ??? ??? ??? ??? } ?? ???? ??? ??? ??? ??? // Convert Quote escape sequences to quote ?? ???? ??? ??? ??? ??? Value = find("\x5C22" , JSON_Value$); ?? ???? ??? ??? ??? ??? while (Value)??? ?? ???? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? JSON_Value$ = left(JSON_Value$,Value-1) + right(JSON_Value$, len(JSON_Value$)- Value); ?? ???? ??? ??? ??? ??? ??? Value = find("\x5C22", JSON_Value$, Value+2); ?? ???? ??? ??? ??? ??? ??? } ? ??? ??? ??? ??? ??? ??? // Convert Backslash escape sequences to Backslash ?? ???? ??? ??? ??? ??? Value = find("\x5C5C" , JSON_Value$); ?? ???? ??? ??? ??? ??? while (Value)??? ?? ???? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? JSON_Value$ = left(JSON_Value$,Value-1) + right(JSON_Value$, len(JSON_Value$)- Value); ?? ???? ??? ??? ??? ??? ??? Value = find("\x5C5C", JSON_Value$, Value+2); ?? ???? ??? ??? ??? ??? ??? } ?? ???? ??? ??? ??? ??? // find end of line ?? ???? ??? ??? ??? ??? Value = 0; ?? ???? ??? ??? ??? ??? while (find(Quote, JSON_Value$, Value)) ?? ???? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? Value = find(Quote, JSON_Value$, Value); ?? ???? ??? ??? ??? ??? ??? } ?? ???? ??? ??? ??? ??? // Removed trailing quote ?? ???? ??? ??? ??? ??? if (Value) JSON_Value$ = left(JSON_Value$, Value-1); ?? ???? ??? ??? ??? ??? if (len(JSON_Value$) > 2) ?? ???? ??? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? ??? JSON_Value$ = left(JSON_Value$, len(JSON_Value$)-1); ?? ???? ??? ??? ??? ??? ??? SerOut$[Index] = JSON_VALUE$; ?? ???? ??? ??? ??? ??? ??? } ?? ???? ??? ??? ??? ??? ?? ???? ??? ??? ??? ??? } ?? ???? ??? ??? ??? } ?? ???? ??? ??? else if (left(JSON_KEY$, 1) = "") // this is a null signal ?? ???? ??? ??? ??? { ?? ???? ??? ??? ??? // Release occurred over a non button area of screen.? Release previously pressed button ?? ???? ??? ??? ??? // in case this is the result of finger sliding off of button. ?? ???? ??? ??? ??? if ((LastDigPress) && (atoi(JSON_VALUE$) = 0) ) ?? ???? ??? ??? ??? ??? { ?? ???? ??? ??? ??? ??? DigOut[LastDigPress] = 0; ?? ???? ??? ??? ??? ??? LastDigPress = 0; ?? ???? ??? ??? ??? ??? } ?? ???? ??? ??? ??? } ?? ???? ??? ??? else if (find("NewClient",JSON_KEY$)) // A newClient ?? ???? ??? ??? ??? { ?? ???? ??? ??? ??? NewClient = 1; ?? ???? ??? ??? ??? processlogic(); ?? ???? ??? ??? ??? NewClient = 0; ?? ???? ??? ??? ??? } ?? ???? ??? ??? else if ((LastDigPress) && (JSON_VALUE$ = "0") ) ?? ???? ??? ??? ??? { ?? ???? ??? ??? ??? // Release occurred over a non button area of screen.? Release previously pressed button ?? ???? ??? ??? ??? // in case this is the result of finger sliding off of button. ?? ???? ??? ??? ??? DigOut[LastDigPress] = 0; ?? ???? ??? ??? ??? LastDigPress = 0; ?? ???? ??? ??? ??? } ?????????????? } ?? ???? ??? processlogic(); ?? ???? ??? } // End of while(find("}", JSON_RX$) > 0) ?? ???? Semaphore = 0; ?? ???? print("end process\n"); ?? ???? ?? ???? }? // End of if(Semaphore = 0) ?? ?} // End of CHANGE JSON_RX$ PUSH Refresh ?? ?{ ?? ?INTEGER ?? ???? Value, ?? ???? Index; ?? ?STRING TempStr$[255]; ?? ?for (Index = 1 to TOTALDIGITALS) ?? ???? { ?? ???? if (Dig_In[Index]) ?? ???? if ( (IsSignalDefined(Dig_In[Index])) && (Dig_In[Index]) ) ?? ???? ??? { ?? ???? ??? makestring(TempStr$,"%sD%u%s:1",Quote,Index,Quote); ?? ???? ??? TempStr$ = "{" + TempStr$ + "}"; // workaround for Series3 compiler problem with braces. ?? ???? ??? JSON_TX$ = TempStr$; ?? ???? ??? processlogic(); ?? ???? ??? } ?? ???? } ?? ?for (Index = 1 to TOTALANALOGS) ?? ???? { ?? ???? if ( (IsSignalDefined(Ana_In[Index])) && (Ana_In[Index]) ) ?? ???? ??? { ?? ???? ??? Value = Ana_In[Index]; ?? ???? ??? makestring(TempStr$,"%sA%u%s:%u",Quote,Index,Quote,Value); ?? ???? ??? TempStr$ = "{" + TempStr$ + "}"; // workaround for Series3 compiler problem with braces. ?? ???? ??? JSON_TX$ = TempStr$; ?? ???? ??? processlogic(); ?? ???? ??? } ?? ???? } ?? ?for (Index = 1 to TOTALSERIALS) ?? ???? { ?? ???? if ( (IsSignalDefined(Ser_In$[Index])) && (len(Ser_In$[Index]) )? ) ?? ???? ??? { ?? ???? ??? JSON_TX$ = SerialStorage$[Index]; ?? ???? ??? processlogic(); ?? ???? ??? } ?? ???? } ?? ?} CHANGE Dig_In??? ??? { ?? ?INTEGER Index; ?? ?STRING TempStr$[255]; ?? ? ?? ?Index = getlastmodifiedarrayindex(); ?? ?if (Dig_In[Index]) ?? ???? { ?? ???? makestring(TempStr$,"%sD%u%s:1",Quote,Index,Quote); ?? ???? } ?? ?else ?? ???? { ?? ???? makestring(TempStr$,"%sD%u%s:0",Quote,Index,Quote); ?? ???? } ?? ?TempStr$ = "{" + TempStr$ + "}"; // workaround for Series3 compiler problem with braces. ?? ?if (Debug) print("Sending JSON:%s\n",TempStr$); ?? ?JSON_TX$ = TempStr$; ?? ?processlogic(); ?? ?} ?? ? CHANGE Ana_In ?? ?{ ?? ?INTEGER ?? ???? Value, ?? ???? Index; ?? ?STRING TempStr$[255];??? ?? ?Index = getlastmodifiedarrayindex(); ?? ?Value = Ana_In[Index]; ?? ?makestring(TempStr$,"%sA%u%s:%u",Quote,Index,Quote,Value); ?? ?TempStr$ = "{" + TempStr$ + "}"; // workaround for Series3 compiler problem with braces. ?? ?if (Debug) print("Sending JSON:%s\n",TempStr$); ?? ?JSON_TX$ = TempStr$; ?? ?} ?? ? CHANGE Ser_In$ ?? ?{ ?? ?INTEGER ?? ???? Value, ?? ???? Index; ?? ?STRING TempStr$[255];??? ?? ? ?? ?Index = getlastmodifiedarrayindex(); ?? ?TempStr$ = Ser_In$[Index]; ?? ?// Replaced backslash with \\ ?? ?Value = find(Backslash ,TempStr$); ?? ?while (Value) ?? ???? { ?? ???? TempStr$ = left(TempStr$,Value-1) + Backslash + right(TempStr$, len(TempStr$) - (Value-1) ); ?? ???? Value = find(Quote,TempStr$, Value+2); ?? ???? } ? ?? ?// Replaced Quote with \" ?? ?Value = find(Quote,TempStr$); ?? ?while (Value) ?? ???? { ?? ???? TempStr$ = left(TempStr$,Value-1) + Backslash + right(TempStr$, len(TempStr$) - (Value-1) ); ?? ???? Value = find(Quote,TempStr$, Value+2); ?? ???? } ??? // Replaced LineFeed with \n" ?? ?Value = find(LF,TempStr$); ?? ?while (Value) ?? ???? { ?? ???? TempStr$ = left(TempStr$,Value-1) + "\\n" + right(TempStr$, len(TempStr$) - (Value) ); ?? ???? Value = find(LF,TempStr$, Value+2); ?? ???? } ? ? ?? ?// Replaced Carrage Return with \r" ?? ?Value = find(CR,TempStr$); ?? ?while (Value) ?? ???? { ?? ???? TempStr$ = left(TempStr$,Value-1) + "\\r" + right(TempStr$, len(TempStr$) - (Value) ); ?? ???? Value = find(CR,TempStr$, Value+2); ?? ???? } ?? ? ?? ?// Replaced Tab with \t" ?? ?Value = find(Tab,TempStr$); ?? ?while (Value) ?? ???? { ?? ???? TempStr$ = left(TempStr$,Value-1) + "\\t" + right(TempStr$, len(TempStr$) - (Value) ); ?? ???? Value = find(Tab,TempStr$, Value+2); ?? ???? } ?? ? ?? ?// Replaced FormFeed with \f" ?? ?Value = find(FF,TempStr$); ?? ?while (Value) ?? ???? { ?? ???? TempStr$ = left(TempStr$,Value-1) + "\\f" + right(TempStr$, len(TempStr$) - (Value) ); ?? ???? Value = find(FF,TempStr$, Value+2); ?? ???? } ?? ?makestring(TempStr$,"%sS%u%s:%s%s%s",Quote,Index,Quote,Quote,TempStr$,Quote); ?? ?TempStr$ = "{" + TempStr$ + "}"; // workaround for Series3 compiler problem with braces. ?? ?if (Debug) print("Sending JSON:%s\n",TempStr$); ?? ?JSON_TX$ = TempStr$; ?? ?SerialStorage$[Index] = TempStr$; ?? ?} ?? ? FUNCTION Main() ?? ?{ ?? ?INTEGER Index; ?? ?Semaphore = 0; ?? ?for (Index = 1 to TOTALSERIALS) ?? ???? { ?? ???? SerialStorage$[Index] =??? ""; ?? ???? } ?? ?if ( WaitForInitializationComplete() < 0 ) ??????? { ??????? print("Webserver_JSON_Processor: Error waiting for initialization complete\n"); ??????? return; ??????? } ?? ???? ?? ?} |
Poly SSH
I know no one uses hard codecs anymore but we are seeing a strange issue. Client has Poly Group G7500 codecs everywhere and we are using the Group Series Driver 4.0 to control. Basically what will happen at completely random times is the module will change from Logged in to Connected (4d to 2d) and never be able to relogin to the processor again without a program reboot. This is using unsecure SSH as the connection. Has anyone ever seen something like this?
|
Re: HTML5 development for iPad
Crestron One App is?a HTML5 app.? Make sure you have the latest version; older versions didn't have the HTML5 option.? Inside the app you have to choose to use it as HTML5.? There is another thread on groups on how to setup a basic HTML5 project with SIMPL and Visual Studio Code.? I have done it and it works.? If you have zero web development skill the learning curve will be high.? The nice thing about this demo is it will get you started with a working demo to see how it works.? Crestron has a demo on their site that is much more complicated to understand but has more features.??
|
Jupiter Video Wall Processor J600
#cp4
Hi Everyone,
Have anyone worked with Jupiter video wall J600 with Crestron CP3 or CP4? I am stuck in finding the right module, as the one on the Crestron application market is very old. |
Re: RSS Feed stopped working on TSW-1050
¿ªÔÆÌåÓýUnfortunately, i don?t have control over the server side as it is a public newsserver on the Internet. Cheers, Thorsten ? Von: [email protected] <[email protected]> Im Auftrag von CO Cowboy ? I had something like this happen. |
RSS Feed stopped working on TSW-1050
¿ªÔÆÌåÓýHi, ? i?m using an ?RSS Feed List¡± object on a VTP-project for a TSW-1050. This worked fine for some time, but stopped working. The box is still there, but no feed information is displayed. The feed is typed fixed into the VTP object. While being in VTP-Pro, the box is filled with the current RSS feed information, so the feed URL and content seems to be OK. But running on the TSW-1050, it?s not displayed. ? The TSW-1050 has connection to the outside world. I can ping the RSS feed server hostname. Date and time of the panel are up to date. ? Any ideas where to look? ? Cheers, Thorsten |
Re: Launching a 3rd party app from the crestron go app
#crestronapp
Hi all,?
thank you all for your input on this one. I've figured out where the issue is that I was having. I've re read the Crestron Doc on this and had a look at the link to how to find the URLscheme.?. I found that the app MUST have a URLScheme under the "CFBundleURLTypes". If the app info.plist had this and you used it as the serial send command that it works and opens the app. ? The apps that I plan on using? Remote 4.5.1 - to control the App TVRemote (old) - "remote://" working? FM Radio fb305043404753065://
myTuneriOS - fb594495070580008:// not working
tripple M - fb490796227626676triplem
??No URL Scheme in Info.plist? Remote (New - iphone imbedded)- not working Radios - Not working |
Re: is anyone successfully running a Mac Studio M1 with parallels 17 windows 11?
I don¡¯t have a Mac studio, but myself and 2 other at the office have 16¡± M1 MacBook Pro all running parallels. Simpl, VTPro, D3 all compile file with it. It sounds like there is something else missing from the fresh install.?
|
Re: Odd DM multichannel audio issue (or do I not understand how the -DSP cards are supposed to work)?
Keep your CPU2 card - it is better.
If this is only happening with the TiVo, I would blame it then. I have multiple multichannel sources at home, going to many stereo zones and have not heard this problem even once. The TiVo might be switching to LPCM when you pause, possibly you could foul it by removing LPCM from the input card edid (if that is even an option).? |
Re: is anyone successfully running a Mac Studio M1 with parallels 17 windows 11?
Try QEMU https://mac.getutm.app is free.
With QEMU I was able to install and compile programs. The same program, 15 s more compilation time than in the i9. USB drivers do not work with Qemu or Parallels. Sent with a El 20 may 2022, 20:57 +0200, rvanderluit <rvanderluit@...>, escribi¨®: thanks for responding. all i've seen on here has been positive so i wasn't expecting such headaches. |
Re: CCDs and NVRAM
¿ªÔÆÌåÓýYou can download V14? ? Caleb Radecky |
Manager, Online Products & Services ? From: [email protected] <[email protected]> On Behalf Of
Troy Garner
Sent: Friday, May 20, 2022 17:05 To: [email protected] Subject: Re: [crestron] CCDs and NVRAM ? [Edited Message Follows] Can Crestron please figure out an appropriate spot for all the CCD SDK downloads? ? Crestron Service Provider - TBD Enterprises Inc. |
Re: CCDs and NVRAM
Can Crestron please figure out an appropriate spot for all the CCD SDK downloads?
The one that most people reference on the developer site still hosts v8, and secretly v14 has been added to a random product page? I've asked about a more recent public download of the CCD SDK for years. Where are all the versions v9 through v13 though, and how is anybody supposed to find out about this stuff?... edit: And where are the release notes in the v14.0000.0008 download? It exists in the others. :/ -- ?
Crestron Service Provider - TBD Enterprises Inc.
|