#84 Solve UART encoding corruption

已关闭
Michael Schloh von Bennewitz4 年前创建 · 1 条评论

Solve UART encoding corruption

Problem environment

When routing log output to the UART serial pins, the connection is decoded by the connecting device.

Steps to reproduce

  1. Program an EVK with the serial io (uart) demo
  2. Program the same firmware to a sendcomm
  3. Read text output from each device
  4. Compare the decoded signals in TTY

Expected result

In each case, the decoded text is ASCII readable.

Actual result

Only the EVK device produces readable characters, while the sendcomm is corrupted.

Workaround A

Use the ASF SERCOM USART callback driver instead of Serial I/O.

Workaround B

--- src/config/config_clocks.h.orig	2020-11-17 23:35:01.389451806 +0100
+++ src/config/config_clocks.h	2020-11-17 23:35:23.279607582 +0100
@@ -1,4 +1,4 @@
 #define CONF_CLOCK_GCLK_0_RUN_IN_STANDBY false
-#define CONF_CLOCK_GCLK_0_CLOCK_SOURCE SYSTEM_CLOCK_SOURCE_DFLL
-#define CONF_CLOCK_GCLK_0_PRESCALER 6
+#define CONF_CLOCK_GCLK_0_CLOCK_SOURCE SYSTEM_CLOCK_SOURCE_OSC16M
+#define CONF_CLOCK_GCLK_0_PRESCALER 1
 #define CONF_CLOCK_GCLK_0_OUTPUT_ENABLE false

Severity level

This is high priority because clear UART decoded text is mandatory.

# Solve UART encoding corruption ## Problem environment When routing log output to the UART serial pins, the connection is decoded by the connecting device. ## Steps to reproduce 1. Program an EVK with the serial io (uart) demo 1. Program the same firmware to a sendcomm 1. Read text output from each device 1. Compare the decoded signals in TTY ## Expected result In each case, the decoded text is ASCII readable. ## Actual result Only the EVK device produces readable characters, while the sendcomm is corrupted. ## Workaround A Use the ASF SERCOM USART callback driver instead of Serial I/O. ## Workaround B ``` --- src/config/config_clocks.h.orig 2020-11-17 23:35:01.389451806 +0100 +++ src/config/config_clocks.h 2020-11-17 23:35:23.279607582 +0100 @@ -1,4 +1,4 @@ #define CONF_CLOCK_GCLK_0_RUN_IN_STANDBY false -#define CONF_CLOCK_GCLK_0_CLOCK_SOURCE SYSTEM_CLOCK_SOURCE_DFLL -#define CONF_CLOCK_GCLK_0_PRESCALER 6 +#define CONF_CLOCK_GCLK_0_CLOCK_SOURCE SYSTEM_CLOCK_SOURCE_OSC16M +#define CONF_CLOCK_GCLK_0_PRESCALER 1 #define CONF_CLOCK_GCLK_0_OUTPUT_ENABLE false ``` ## Severity level This is **high priority** because clear UART decoded text is mandatory.
Michael Schloh von Bennewitz 添加了标签
bug
4 年前
Michael Schloh von Bennewitz 添加了标签
help wanted
4 年前
Michael Schloh von Bennewitz 4 年前 添加了里程碑 Conditional integration of samples

This bug was not dependent on power supply choice as falsely indicated (reference to #83) but rather it is dependent on #118 relating to choice of external low frequency crystal and its load capacitance.

This bug is resolved by the same changes that resolved #118.

This bug was not dependent on power supply choice as falsely indicated (reference to #83) but rather it is dependent on #118 relating to choice of external low frequency crystal and its load capacitance. This bug is resolved by the same changes that resolved #118.
登陆 并参与到对话中。
未指派成员
1 名参与者
到期时间

未设置到期时间。

依赖于
#83 Ensure power detour matches MLS
NLNetfound/dsendcomm
正在加载...
取消
保存
这个人很懒,什么都没留下。