UART-Replicate problems

Hi there,

I am an authentic rookie. I know!
I don’t know how to program ++ C.
I really like XOD because it has the potential available to make it much easier for enthusiasts like me who are not in this area.

I try to follow the examples and tutorials I find to understand and apply XOD.

Today I tried to follow the example of serial communication between 2 Arduinos:
https://xod.io/docs/guide/uart-led-control/

However I have encountered difficulties such as this error that I do not understand. I followed all the steps. Mute plate and the result is the same …

According to what I understand there is a problem with a library

C: \ Users \ gcabr \ Documents \ XOD \ __ packages __ \ packages \ arduino \ hardware \ avr \ 1.8.1 \ libraries \ SoftwareSerial

I am trying to communicate with 2 Arduino Uno boards

Can anyone give a brief explanation of how to proceed and identify / eliminate these types of problems?

You need to scroll back to see what the first error is in the output to determine what is wrong.

Hi there. I got the same problem. The list of issues is below. So it seems the “parse-tabular
gabbapeople/uart-led-control/parse-tabular” has some problems.
Splits the incoming string line into parts depending on delimiter character. Outputs the specified part of string line

“C:\Users\sergey.salenko\xod\packages\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino5/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega32u4 -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_LEONARDO -DARDUINO_ARCH_AVR -DUSB_VID=0x2341 -DUSB_PID=0x8036 “-DUSB_MANUFACTURER=“Unknown”” “-DUSB_PRODUCT=“Arduino Leonardo”” “-IC:\Users\sergey.salenko\xod\packages\packages\arduino\hardware\avr\1.8.2\cores\arduino” “-IC:\Users\sergey.salenko\xod\packages\packages\arduino\hardware\avr\1.8.2\variants\leonardo” “-IC:\Users\SERGEY~1.SAL\AppData\Local\Temp\xod_temp_sketchbookZiRuHp\libraries\LiquidCrystal\src” “-IC:\Users\sergey.salenko\xod\packages\packages\arduino\hardware\avr\1.8.2\libraries\SoftwareSerial\src” “C:\Users\SERGEY~1.SAL\AppData\Local\Temp\arduino-sketch-31AAEA4A16F46DA43B7143027E591672\sketch\xod_1591989068867_sketch.ino.cpp” -o “C:\Users\SERGEY~1.SAL\AppData\Local\Temp\arduino-sketch-31AAEA4A16F46DA43B7143027E591672\sketch\xod_1591989068867_sketch.ino.cpp.o”

C:\Users\SERGEY~1.SAL\AppData\Local\Temp\xod_temp_sketchbookZiRuHp\xod_1591989068867_sketch\xod_1591989068867_sketch.ino: In function ‘void xod::gabbapeople__uart_led_control__parse_tabular::evaluate(xod::gabbapeople__uart_led_control__parse_tabular::Context)’:
C:\Users\SERGEY~1.SAL\AppData\Local\Temp\xod_temp_sketchbookZiRuHp\xod_1591989068867_sketch\xod_1591989068867_sketch.ino:2432:15: error: ‘output_PRT’ was not declared in this scope
emitValue<output_PRT>(ctx,XString(&state->view));
^~~~~~~~~~

C:\Users\SERGEY~1.SAL\AppData\Local\Temp\xod_temp_sketchbookZiRuHp\xod_1591989068867_sketch\xod_1591989068867_sketch.ino:2432:15: note: suggested alternative: ‘output_OUT’
emitValue<output_PRT>(ctx,XString(&state->view));
^~~~~~~~~~
output_OUT
C:\Users\SERGEY~1.SAL\AppData\Local\Temp\xod_temp_sketchbookZiRuHp\xod_1591989068867_sketch\xod_1591989068867_sketch.ino:2432:52: error: no matching function for call to ‘emitValue< >(xod::gabbapeople__uart_led_control__parse_tabular::ContextObject*&, xod::XString)’
emitValue<output_PRT>(ctx,XString(&state->view));
^
C:\Users\SERGEY~1.SAL\AppData\Local\Temp\xod_temp_sketchbookZiRuHp\xod_1591989068867_sketch\xod_1591989068867_sketch.ino:2411:33: note: candidate: template void xod::gabbapeople__uart_led_control__parse_tabular::emitValue(xod::gabbapeople__uart_led_control__parse_tabular::Context, typename xod::gabbapeople__uart_led_control__parse_tabular::ValueType::T)
template void emitValue(Context ctx, typename ValueType::T val) {
^~~~~~~~~
C:\Users\SERGEY~1.SAL\AppData\Local\Temp\xod_temp_sketchbookZiRuHp\xod_1591989068867_sketch\xod_1591989068867_sketch.ino:2411:33: note: template argument deduction/substitution failed:

C:\Users\SERGEY~1.SAL\AppData\Local\Temp\xod_temp_sketchbookZiRuHp\xod_1591989068867_sketch\xod_1591989068867_sketch.ino:2432:52: error: template argument 1 is invalid
emitValue<output_PRT>(ctx,XString(&state->view));
^

Multiple libraries were found for “SoftwareSerial.h”
Used: C:\Users\sergey.salenko\xod_packages_\packages\arduino\hardware\avr\1.8.2\libraries\SoftwareSerial
Multiple libraries were found for “LiquidCrystal.h”
Used: C:\Users\SERGEY~1.SAL\AppData\Local\Temp\xod_temp_sketchbookZiRuHp\libraries\LiquidCrystal

Using library LiquidCrystal at version 1.0.4 in folder: C:\Users\SERGEY~1.SAL\AppData\Local\Temp\xod_temp_sketchbookZiRuHp\libraries\LiquidCrystal
Using library SoftwareSerial at version 1.0 in folder: C:\Users\sergey.salenko\xod_packages_\packages\arduino\hardware\avr\1.8.2\libraries\SoftwareSerial

Error: exit status 1
Compilation failed.
Compilation failed
Command Process exited with code 1
The generated C++ code contains errors. It can be due to a bad node implementation or if your board is not compatible with XOD runtime code. The original compiler error message is above. Fix C++ errors to continue. If you believe it is a bug, report the problem to XOD developers.

There is a problem with the parse-tabular node. The name of the output in code (output_PRT) doesn’t match the name of the output pin (OUT). Easily fixed by changing the name of the output pin from OUT to PRT.

Great!!! Thanks a lot!!! It works now. You are my hero now, Dear Wayland!

1 Like

@wayland, @talyanninza
Thx for pointing out the error. I fixed it and updated the library.

2 Likes