Anytime Help Center

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Support
  • Guest
  • Log In
English (US)
US English (US)
DE German
CN Chinese
MX Spanish (Mexico)
Chinese (Simplified)
  • AKG
    Microphones Wireless Integrated Systems Automatic Mixers Headphones Discontinued Products (AKG) General AKG Inquiries Certifications (AKG)
  • AMX
    Networked A/V Distribution (AVoIP) Traditional A/V Distribution Video Signal Processing Architectural Connectivity User Interfaces Control Processing Power (AMX) Programming (AMX) Software (AMX) Discontinued Products (AMX) General AMX Inquiries Certifications (AMX)
  • BSS
    Soundweb™ Omni Soundweb™ London Soundweb™ Contrio™ Software (BSS) Discontinued Products (BSS) General BSS Inquiries Certifications (BSS)
  • Crown
    CDi DriveCore Series CDi Series Commercial Series ComTech Series DCi DriveCore Series I-Tech HD Series XLC series XLi Series XLS DriveCore 2 Series XTi 2 Series Discontinued Products (Crown) Software (Crown) General Crown Inquiries Certifications (Crown)
  • dbx
    CX Series 500 Series DriveRack Personal Monitor Control ZonePRO Zone Controllers FeedBack Suppression Microphone Preamps Dynamics Processors Crossovers Equalizers Software (dbx) Discontinued Products (dbx) General dbx Inquiries Certifications (dbx)
  • Flux::
    Immersive Processing Analysis Subscriptions
  • JBL
    Cinema Sound Installed Live Portable Tour Sound Recording & Broadcast Software (JBL) Discontinued Products (JBL) Video Manual Series (JBL) General JBL Inquiries Certifications (JBL)
  • Lexicon
    Plugins Effects Processors Cinema Discontinued Products (Lexicon) Video Manual Series (Lexicon) General Lexicon Inquiries Certifications (Lexicon)
  • Martin
    Atomic ELP ERA Exterior MAC P3 VC VDO Tools Discontinued Products (Martin) General Martin Inquiries Certifications (Martin)
  • Soundcraft
    Digital Analog Connected Analog Only Discontinued Products (Soundcraft) Video Manual Series (Soundcraft) General Soundcraft Inquiries Certifications (Soundcraft)
  • General HARMAN Inquiries
    Dante
+ More
  • Home
  • AMX
  • Programming (AMX)
  • Programming

577 - Send_Level Does Not Seem To Be Working

Written by Will Fraser

Updated at January 7th, 2026

Table of Contents

Question:   Symptoms and Causes: Resolution:

Question:  

Do you ever find that SEND_LEVEL does not behave as expected - it just doesn't send the level when you think it should?


Symptoms and Causes:

SEND_LEVEL is a "smart" command.  The master tracks the last level value sent and won't send it again.  This is actually a feature - it allows a programmer to put a naked SEND_LEVEL in your code without having to track whether it's changed or not.

For example, you can write:

DEFINE_PROGRAM SEND_LEVEL <device>,<level>,<value>

Instead of:

DEFINE_PROGRAM

IF (<new value> <> <old value>)

{

<old value> = <new value>

SEND_LEVEL <device>,<level>,<new value>

}

In Axcess, the master tracks what was sent by line number - each SEND_LEVEL statement is tracked separately.  If you have a number of SEND_LEVELs throughout your code, they just may not work because at each specific SEND_LEVEL, the same value was sent as the last time on that particular line.

In NetLinx, the master's device manager tracks what was last sent to a particular level on a device.  This allows a bit more flexibility.


Resolution:

In Axcess systems, it is critical that:

  1. The Device parameter must not be a variable.
  2. The Level parameter must not be a variable.
  3. The Value parameter MUST be a variable.

In addition, it is highly recommended that you have only one SEND_LEVEL in your program for each device, level pair.  This will be in your DEFINE_PROGRAM section.

​For example:

DEFINE_DEVICE

VOL = 96 (* volume device *)

TP = 128 (* touch panel device *)

DEFINE_VARIABLE

TP_L1 (* variable to store touch panel level 1 *)

DEFINE_START

(* tell master to store touch panel level 1 in TP_L1 *)

CREATE_LEVEL TP, 1, TP_L1

DEFINE_PROGRAM

(* send level from tp level 1 to vol levels 1 & 2 *)

SEND_LEVEL VOL, 1, TP_L1

SEND_LEVEL VOL, 2, TP_L1

(* end *)

While it is not as critical to program this way in NetLinx, you still need to be aware that if you have sent a particular value to a particular DEVLEV, a send level that sends that same value again will not work until a different level value is sent to the DEVLEV, or until the device goes off-line, and the master realizes the level has reset to 0 (and you're not sending a value of 0).

Related Videos

questions guide

Was this article helpful?

Yes
No
Give feedback about this article

Table of Contents

Question:   Symptoms and Causes: Resolution:

Related Articles

  • AMX Subroutine Name Length
  • How To Send DGX Shell Commands From NetLinx Code
  • How to use #IF_DEFINED to set pre-compile conditions
  • Using a NetLinx Master to Monitoring a System
  • Using an Active Bargraph to Control Levels by Touching the Bargraph

Related Articles

  • AMX Subroutine Name Length
  • How To Send DGX Shell Commands From NetLinx Code
  • How to use #IF_DEFINED to set pre-compile conditions
  • Using a NetLinx Master to Monitoring a System
  • Using an Active Bargraph to Control Levels by Touching the Bargraph
Copyright © HARMAN Professional. All rights reserved. Privacy Policy | Terms of Use
Expand