Call us Now - 0034 938 760 191

Help

Welcome!

This community is for professionals and enthusiasts of our products and services. Share and discuss the best content and new marketing ideas, build your professional profile and become a better marketer together.

0

Serial communication M-Duino 38R+ with softwareSerial

Avatar
Sylvain Bernard


Hello, I am trying to reproduce the following code to communicate in serial.

https://www.industrialshields.com/es_ES/blog/blog-industrial-open-source-1/post/como-utilizar-la-libreria-de-software-serial-en-el-controlador-industrial-arduino-plc-99


On the M-Duino 38R + the RX (SO), TX (SI) pins are respectively 50, 51

So, I wired tx from the device to RX MDuino and rx from the device to tx from MDuino


For information, here is the device with which I tried to communicate with M-Duino : https://learn.sparkfun.com/tutorials/sparkfun-rfid-starter-kit-hookup-guide



// https://github.com/PaulStoffregen/SoftwareSerial
#include <SoftwareSerial.h>

// https://github.com/agmangas/SerialRFID #include <SerialRFID.h> const byte RX_PIN = 50;//PIN_SPI_MISO; const byte TX_PIN = 51;//PIN_SPI_MOSI; SoftwareSerial sSerial(RX_PIN, TX_PIN); // RX (SO), TX (SI) SerialRFID rfid(sSerial); char tag[SIZE_TAG_ID]; char matchTag[SIZE_TAG_ID] = "5C00CADB5A17"; //SoftwareSerial mySerial(50, 51); // RX (SO), TX (SI) void setup() { Serial.begin(9600); sSerial.begin(9600); Serial.println(); Serial.println(">> Starting SerialRFID example program"); } void loop() { if (rfid.readTag(tag, sizeof(tag))) { Serial.print("Tag: "); Serial.print(tag); Serial.println(); //if (SerialRFID::isEqualTag(tag, matchTag)) //{ // Serial.println(" / Match: OK"); //} //else //{ // Serial.println(" / Match: No"); //} } }

I tested the following code on the arduino mega (basic) and it works ...

Response arduino mega (basic)
>> Starting SerialRFID example program Tag: 4300926D45F9 Tag: 4300926D45F9


Is there something I don't understand?

Thank you in advance for your answer.



Avatar
Discard
2 Answers
0
Avatar
Sylvain Bernard
Best Answer

hello, thank you for your quick response.

12VDC power supply check - OK

I therefore tried to connect the GND of the external 12VDC power supply to the GND of the 5VDC output of M-DUINO, that did not change anything.


I specify that the device is connected to the 5VDC power supply of M-Duino


If you have other subjection, I am interested.


Here is the link of the diagram (M-Duino on the left in the pdf and arduino on the right in the pdf).

Lien vers mon shéma (one drive) : https://1drv.ms/u/s!AtNw4GbNMHxrkdMdCm1vlc5nWhEyjw?e=7dtlCl



Avatar
Discard
0
Avatar
Support Team
Best Answer

Hi Silvayn, 

let's check all the steps to achieve this simple communication: 


on your MDuino 38R+ the first thing you need for this testing purposes is to have the PLC connected to the external Power Supply Unit (12/24Vdc), it will not work only with the 5Vdc provided by the USB connection.


There are no switch available to able/disable the SPI connectivity, so that it's always operative. 


Regarding the connections, it's important to have also a common GND between both devices in order to have the same GND reference. 


I see no errors on the programming, the sketch is ok and also the RX pin used (50 - MISO) can be used for this purpose. 


Please let us know if your set up is as exposed and we keep in contact,

Avatar
Discard