Is there a way to read a digital input state on an XBee S6B using legacy RCI? How about SCI encapsulated RCI?

If this needs to be forced or scheduled, can I do this using RCI?

I could not find a working SCI/RCI syntax for this.

The easiest way I know of to gather a pin state, is to do a HTTP GET. For example:


1 Like

I think I found the syntax for this:

So the syntax works, but I only get back the indication that P0 is set as an input. This is the reply I get:

Do you have an example of how to do this using javascript or similar? Thanks!

import java.util.Scanner;

/* Can replace this with any base 64 encoder for basic authentication. For java 6

  • installations on Sun’s JRE you can use “sun.misc.BASE64Encoder” however this will
  • not work in some installations (using OpenJDK). Java mail
  • (javax.mail.internet.MimeUtility) also contains a Base 64 encoder in Java 6. A
  • public domain version exists at
    import org.apache.commons.codec.binary.Base64;


  • This is a stub class with a main method to run a Device Cloud web service.
    public class WebServiceRequest {
    private static final String username = “username”; // put your Device Cloud username here
    private static final String password = “password”; // put your Device Cloud password here


    • Run the web service request
      public static void main(String[] args) {
      HttpsURLConnection conn = null;

      try {
      // Create url to the Device Cloud server for a given web service request
      URL url = new URL(“”);
      conn = (HttpsURLConnection) url.openConnection();

       // Build authentication string
       String userpassword = username + ":" + password;
       // can change this to use a different base64 encoder
       String encodedAuthorization = Base64.encodeBase64String(userpassword.getBytes()).trim();
       // set request headers
       conn.setRequestProperty("Authorization", "Basic "
               + encodedAuthorization);

// Get input stream from response and convert to String
InputStream is = conn.getInputStream();

        Scanner isScanner = new Scanner(is);
        StringBuffer buf = new StringBuffer();
        while (isScanner.hasNextLine()) {
            buf.append(isScanner.nextLine() + "

String responseContent = buf.toString();

        // add line returns between tags to make it a bit more readable
        responseContent = responseContent.replaceAll("><", ">


        // Output response to standard out
    } catch (Exception e) {
        // Print any exceptions that occur
    } finally {
        if (conn != null)


Unfortunately, this only seems to show the setting and not the state. I am not able to find a means to query the state via SCI/RCI.