@Override
	public ByteBuffer getMessage() {
		
		buffer.clear();
		buffer.order(ByteOrder.LITTLE_ENDIAN);
		buffer.putShort((short) 0xaaa6);  // sig
		buffer.putShort((short) 40); // byte len
		buffer.put((byte) 1);  // rcmNodeId;
		buffer.put((byte) 0);  // reserved
		
		for (short val : pwm) {
			buffer.putShort(val);
		}
		
		for (byte val : relay) {
			buffer.put(val);
		}
		
		for (byte val : solenoid) {
			buffer.put(val);
		}
		
		for (byte val : led) {
			buffer.put(val);
		}
		
		buffer.put((byte) 0);  // empty
		
		
		short checksum = (short) Utilities.checksum(buffer, 0, 38);
		buffer.putShort(checksum);
		return buffer;
	}