todonax.blogg.se

Crestron simpl volume string
Crestron simpl volume string









* SIMPL is a Turing-complete language except for its ephemeral strings and its limit on logic solutions exceding 1,000 logic waves. In my very first Crestron tech support call as an Essentials-level programmer, I was chastised by Rich Sasson for using the Clock Driver symbol, a technique taught to me in Essentials training not two months before. The Clock Driver symbol has the unfortunate side effect of continuously syncing the clocks of Cresnet touchpanels, which generates huge amounts of Cresnet traffic on systems with many Cresnet touchpanels. p serves as a replacement for the Clock Driver symbol. The other SIMPL+ modules in Crescendo are similarly low-activity and used for string parsing-with the exception of p, which is a necessary evil and actually runs an infinite loop.

crestron simpl volume string

Both modules are also low activity: p only executes upon an input switch, Menu p only executes upon a menu selection or interface context change. Menu p is a complex conditional (provide a navigable menu given an interface context and a set of meta signals). p is a string parsing module (find the first instance of a character in a string array and return the index). In both cases, creating SIMPL-only versions of these modules would be possible, * but their implementations require hundreds or thousands of symbols. The Crescendo Framework core modules only have two SIMPL+ dependencies: Switcher.umc requires p and Menu Controller.umc requires Menu p. In a future post, I will rewrite the module using only SIMPL and demonstrate that it is feature-identical (actually feature-superior) to the SIMPL+ version. The entire purpose of the house volume module was analog ramping, and the module replaced a few hundred symbols with a bulky, preemptible while loop. (Similarly, never use SIMPL realtime symbols such as a One Shot when symbols such as a Logic Wave Pulse will suffice.)

crestron simpl volume string

Specifically, avoid the use of PULSE, WAIT, and DELAY in SIMPL+.

crestron simpl volume string crestron simpl volume string

Specifically, never let SIMPL+ input a ramp control block, process it, and output a discrete value.

  • Prefer SIMPL+ for complex conditionals.
  • The general rule for using SIMPL+ is: Use SIMPL+ where one module can replace thousands of SIMPL symbols. The module could have been programmed entirely in SIMPL, and it should have been programmed entirely in SIMPL. My previous post on SIMPL+ array bounds checks avoided the broader question of the appropriateness of SIMPL+ for a house volume module in the first place.











    Crestron simpl volume string