I have disabled console on the UART, but enabled UART swapping and turbo mode in config.txt.
I am hooking a scope to pins 8 and 10. It seems like pin 8 doesn't ever go high (idle.)
The serial devices exist, and are linked appropriately:
Code: Select all
[11:11] [email protected]:~ $ ls -l /dev/serial[01]
lrwxrwxrwx 1 root root 7 Dec 31 1969 /dev/serial0 -> ttyAMA0
lrwxrwxrwx 1 root root 5 Dec 31 1969 /dev/serial1 -> ttyS0
[11:11] [email protected]:~ $ groups
pi adm dialout cdrom sudo audio video plugdev games users input netdev gpio i2c spi
[11:11] [email protected]:~ $ ls -l /dev/ttyAMA0 /dev/ttyS0
crw-rw---- 1 root dialout 204, 64 Dec 29 11:10 /dev/ttyAMA0
crw-rw---- 1 root dialout 4, 64 Dec 29 11:10 /dev/ttyS0
Sending data from an external MCU to pin 10 (at 3.3V level -- it's a Teensy 3.2) shows on the scope, but I cannot read the data from the serial0 device. (I've also tried serial1, ttyS0, and ttyS1.)
In fact, as user in group "dialout," I get the error "device or resource busy" when trying to read them. I have to use "sudo" to even open the drivers.
When sending data from the MCU as a USB device, it works with the same test programs, so it's not a problem with the test software.
(I mainly use "dd if=x bs=1" but also minicom and the serial loopback test program from the other thread.)
I've heard that some boards are bad, and that could be the case here -- but given that "dd if=/dev/ttyAMA0 bs=1" returns "resource busy," I'm wondering whether something else is the matter?
Here is my cmdline.txt:
Code: Select all
dwc_otg.lpm_enable=0 console=tty1 root=PARTUUID=73230579-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
Code: Select all
# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details
# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1
# uncomment this if your display has a black border of unused pixels visible
# and your display can output without overscan
disable_overscan=1
# Enable audio (loads snd_bcm2835)
dtparam=audio=on
start_x=1
#gpu_mem=256
#hdmi_ignore_edid=0xa5000080
#hdmi_pixel_encoding=2
# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=2
#hdmi_mode=28
# Waveshare recommendations to make the 7" display go
max_usb_current=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt 1024 600 60 6 0 0 0
# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1
# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2
# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
config_hdmi_boost=2
# uncomment for composite PAL
#sdtv_mode=2
#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800
# Uncomment some or all of these to enable the optional hardware interfaces
dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on
# Uncomment this to enable the lirc-rpi module
#dtoverlay=lirc-rpi
dtoverlay=i2c-rtc,pcf8563
#dtoverlay=i2c-rtc,ds3231
# Additional overlays and parameters are documented /boot/overlays/README
#enable_dpi_lcd=1
#display_default_lcd=1
#dpi_group=2
#dpi_mode=87
#dpi_output_format=454661
#hdmi_timings=800 0 40 48 88 480 0 13 3 32 0 0 0 60 0 32000000 6
# Use the slower UART for Bluetooth
dtoverlay=pi3-miniuart-bt
enable_uart=1
force_turbo=1
dtoverlay=vc4-kms-v3d
If something else was using the port, wouldn't pin 8 go high / idle?
And if the problem was pin 8 shorted to ground, wouldn't input data on pin 10 at least be returned through the device?