Netduino home hardware projects downloads community

Jump to content


The Netduino forums have been replaced by new forums at community.wildernesslabs.co. This site has been preserved for archival purposes only and the ability to make new accounts or posts has been turned off.

yxhu

Member Since 08 Jul 2015
Offline Last Active Aug 01 2015 02:47 AM
-----

Topics I've Started

Downgrade from 4.3.1 to 4.2.2.2

25 July 2015 - 06:13 AM

Hi Chris,
 
I have upgraded my ND2 to v4.3.1, unfortunately it didn't work well with VS2013. Basically I can't attach debugger to it after successful deploy via VS2013. I decided to downgraded. I have followed per instruction as described here:
 
 
Everything seems OK to me, however when I reattach the ND2 back to the PC, MFDeploy.exe was no longer able to detect it anymore.
If I flashed it back to 4.3.1, everything started to work again.
 
 
Any advises?
 
yx
 

Help on Netduino 2 Serial Communication to PC

18 July 2015 - 02:58 PM

Hi Chris,
 
I am new to this forums and this is my first post. Recently I have purchased a few ND2s. I setup a very small serial communication program and unfortunatey it didn't work as expected. Here is the setting:
 
On netduino, I am using COM4, the connection to the PC as:
 
ND            ----->  PC
 
SDA(RX)   ----     TX
SCL (TX)   ----     RX
 
 
Program runs on the ND:
 

private static SerialPort _serialPort;

public static void Main()
{
   _serialPort = new SerialPort("COM4", 9600, Parity.None, 8, StopBits.One);
   _serialPort.Open();

    System.Text.UTF8Encoding encoder = new System.Text.UTF8Encoding();
    byte[] bytesToSend  = encoder.GetBytes("abc");

    while(true){
       _serialPort.Write(bytesToSend, 0, bytesToSend.Length);
    }
}

 
 
Program runs on the PC:
 

public Program()
{
    _serialPort = new SerialPort();
    _serialPort.PortName     = "COM3";
    _serialPort.BaudRate     = 9600;
    _serialPort.DataBits     = 8;
    _serialPort.DiscardNull  = true;
    _serialPort.StopBits     = StopBits.One;
    _serialPort.Parity       = Parity.None;
    _serialPort.DataReceived += _serialPort_DataReceived;
    _serialPort.Open();
}

private void _serialPort_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
     var _buffer = new byte[_serialPort.BytesToRead];
      _serialPort.Read(_buffer, 0, _buffer.Length);

     Console.WriteLine(System.Text.ASCIIEncoding.UTF8.GetString(_buffer));
}

  
Basically, I wanted to let ND to keep sending string "abc" to the PC. After I have tried different Baud rates, i.e.  9600, 4800, 2400. I am always getting very wired result at PC end, please see the attached screenshot.

 

I suspect there might be the Baud rate mismatch. However, I have tripple checked my code, both sides have identical settings on the serial port.

 

I spent many hours googling with no luck.

 

 

On other weird thing was, I needed to set 'DiscardNull = true' on the PC end, otherwise I am getting massive '0x00' bytes from ND.

 

I am using VS2010, Micro Framework 4.2, Netdunio SDK 4.2.2.2. I started with VS2013, Micro Framework 4.3, and Netduino SDK 4.3.2.1, unforturnately I couldn't debug the program on ND. I always get error  "The debuging target is not in an initialized state; rebooting......", So I have reverted everything back to VS2010, then I could debug the program.

 

I have also attached the output from "Device capabilities" in the MSDeploy FYI.

 

 

 

 

 

 

 

 


home    hardware    projects    downloads    community    where to buy    contact Copyright © 2016 Wilderness Labs Inc.  |  Legal   |   CC BY-SA
This webpage is licensed under a Creative Commons Attribution-ShareAlike License.