# Revision history [back]

### ER_BUS_BAD_ VALUE_TYPE from Signal() with multiple arguments

Hi,

I am trying to send a signal with multiple arguments; an integer and a string. But I am getting an error from BusObject::Signal() method like below.

   2.153 ****** ERROR ALLJOYN external14312     ...re\src\Message_Gen.cc:1030 |
VALUE_TYPE


I added a signal to the interface like this.

testIntf->AddSignal("DeviceStatusChanged", "us", "Branch,DeviceStatus", 0);


When I print an XML of the interface I get this.

<interface name="com.se.Bus.Discovery">
<signal name="DeviceStatusChanged">
<arg name="Branch" type="u" direction="out"/>
<arg name="DeviceStatus" type="s" direction="out"/>
</signal>


I sent a signal like this.

MsgArg deviceStatusChangedArg("(us)", i + 1, deviceStatusArray[i]);
uint8_t flags = 0;
busObject->Signal(NULL, s_sessionId, *deviceStatusChangedSignalMember, &deviceStatusChangedArg, 2, 0, flags);


If I print the MsgArg before sending the signal, I get this.

<struct>
<uint32>5</uint32>
<string>Inactive</string>
</struct>


Does anyone know what I miss here? When I tried the same thing with a single argument it worked perfectly.