Go Down

Topic: Problem caused by previous data flowing in (Read 1 time) previous topic - next topic


hi folks,

i was trying to send  data from an arduino to another using xbee modules. But what i observe on the receiver end is that i continuously keep getting '1's from the previous code which was burnt into the sender mote. Flushing does not help and the 1s just don't stop coming in from the serial COM port. What do i do? Please help.

Thanks in advance.



You change line 213 to read .....
Hang on, lost the mind link, you are just going to have to post your code sorry.


Jun 18, 2013, 08:59 am Last Edit: Jun 18, 2013, 09:07 am by pryan225 Reason: 1

Code: [Select]

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;

import gnu.io.CommPortIdentifier;
import gnu.io.SerialPort;
import gnu.io.SerialPortEvent;
import gnu.io.SerialPortEventListener;
import java.util.Enumeration;

public class SerialTest implements SerialPortEventListener {
SerialPort serialPort;
static PrintWriter print;

       /** The port we're normally going to use. */
private static final String PORT_NAMES[] = {
"/dev/tty.usbserial-A9007UX1", // Mac OS X
"/dev/ttyUSB0", // Linux
"COM15", // Windows
* A BufferedReader which will be fed by a InputStreamReader
* converting the bytes into characters
* making the displayed results codepage independent
private BufferedReader input;
/** The output stream to the port */
private OutputStream output;
/** Milliseconds to block while waiting for port open */
private static final int TIME_OUT = 2000;
/** Default bits per second for COM port. */
private static final int DATA_RATE = 9600;

public void initialize() {
CommPortIdentifier portId = null;
Enumeration portEnum = CommPortIdentifier.getPortIdentifiers();

//First, Find an instance of serial port as set in PORT_NAMES.
while (portEnum.hasMoreElements()) {
CommPortIdentifier currPortId = (CommPortIdentifier) portEnum.nextElement();
for (String portName : PORT_NAMES) {
if (currPortId.getName().equals(portName)) {
portId = currPortId;
if (portId == null) {
System.out.println("Could not find COM port.");

try {
// open serial port, and use class name for the appName.
serialPort = (SerialPort) portId.open(this.getClass().getName(),

// set port parameters

// open the streams
input = new BufferedReader(new InputStreamReader(serialPort.getInputStream()));
//output = serialPort.getOutputStream();

// add event listeners
} catch (Exception e) {

* This should be called when you stop using the port.
* This will prevent port locking on platforms like Linux.
public synchronized void close() {
if (serialPort != null) {

* Handle an event on the serial port. Read the data and print it.
public synchronized void serialEvent(SerialPortEvent oEvent) {
if (oEvent.getEventType() == SerialPortEvent.DATA_AVAILABLE) {
try {
//input = new BufferedReader(new InputStreamReader(serialPort.getInputStream()));
String inputLine=input.readLine();

} catch (Exception e) {
// Ignore all the other eventTypes, but you should consider the other ones.

public static void main(String[] args) throws Exception {
SerialTest main = new SerialTest();
Thread t=new Thread() {
public void run() {
//the following line will keep this app alive for 1000 seconds,
//waiting for events to occur and responding to them (printing incoming messages to console).
try {Thread.sleep(1000000);} catch (InterruptedException ie) {}




Jun 18, 2013, 09:01 am Last Edit: Jun 18, 2013, 09:03 am by Grumpy_Mike Reason: 1
Now read the how to use this foroum sticky and modify the post so it includes the proper code tags.

Anyway ths is Java code you said you had two arduino's talking?


yes it had the two Arduinos talking. and the code i pasted is of the receiver where i am printing the received values. Sorry... will modify the post.


Thanks for making the change.

However this is only a bit of the code and from what I can see it is not arduino code.

If it is arduino code then wee need it all so we can compile it.

It looks however like it is code outside my pay grade.


Hello thanks for replying. All i was doing was to follow the tutorial given here: http://playground.arduino.cc/Interfacing/Java


Well that tutorial is nothing to do with programming Arduinos so I am confused about what you are trying to do.

Go Up