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 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?