Forum Discussion
zwchan
New Contributor
28 days agoHi,
From what you described, you are trying to send commands "AT+CGMM\r" via UART0 DB9 RS-232 on an Arria 10 SoC Dev Kit using Linux on HPS. Is that correct?
By default, Arria 10 uses UART0 as the Linux console. You will need to make some changes to ensure UART0 is free out from the console.
- Base setup change required:
- UART0 -> AT commands
- UART1 -> Linux console (login + kernel messages) or tty0 -> Linux console
Note: tty0 does not mean UART0/1
- Important Notes: you will lose access for console on DB9 and only accessible via UART1/tty0
- Example Steps (move console to UART1 and enable UART0 for AT commands):
- Verify both UART0 and UART1 present
ls -l /dev/ttyS* - Expected to see "/dev/ttyS0" and "/dev/ttyS1" if both are present.
- Check the current console usage:
cat /proc/cmdline - if you see "console=ttyS0,115200", you must change it to UART1
- Editing DTS "socfpga_arria10_socdk_sdmmc.dts" to make sure both UART0 and UART1 are enable
&uart0 {
status = "okay";
};
&uart1 {
status = "okay";
}; - In Early boot stage(ROM/SPL), you will still have console access via UART0/DB9
- In U-Boot stage:
- move console to UART1
setenv bootargs console=ttyS1,115200 root=...
saveenv
- move console to UART1
- Rebuild with DTS changes .dtb "make dtbs"
- Deploy the new .dtb and reboot.
- After reboot, UART change will be applied as following.
- UART0(/dev/ttyS0) -> AT commands
- UART1(/dev/ttyS1) -> Linux console (login + kernel messages)
- Important Notes to take away:
- tty0 can host the console, but AT commands must always use /dev/ttySx for the actual UART
- Verify both UART0 and UART1 present