That alone did not resolve the issue, but adding `dtoverlay=` directly
above the `dtoverlay=draws,alsaname=udrc` line, then moving the entire DRAWS block to be above `dtparam=audio=on` seems to have things working. Can you explain why I would need the `dtoverlay=` line? Thanks for the help! On Wed, Dec 4, 2019 at 10:44 AM Ryan Matthew Headley <headley.ryan@gmail.com> wrote:
-- William KI4HDU
|
|
Ryan Matthew Headley
Place dtoverlay= directly above
dtoverlay=draws,alsaname=udrc in /boot/config.txt
On Wed, Dec 4, 2019 at 9:13 AM William McKeehan <ki4hdu@...> wrote: Is there a guide for setting up the DRAWS hat with Buster? -- *************************** Ryan Matthew Headley 1705 Granby Road Cayce, SC 29033 USA mobile - +1803-386-1799
|
|
Is there a guide for setting up the DRAWS hat with Buster?
I started with a clean image, and tried to enable the DRAWS by adding `dtoverlay=draws` to the /boot/config.txt file, but when the pi starts, `aplay -l` does not list the draws audio device and the GPS devices (ttySC0 and pps0) are also not available. The hat appears to be installed: /proc/device-tree/hat/name: hat
/proc/device-tree/hat/product: Digital Radio Amateur Work Station
/proc/device-tree/hat/product_id: 0x0004
/proc/device-tree/hat/product_ver: 0x0204
/proc/device-tree/hat/uuid: 7b87530a-0975-43cc-bbc0-203350f4c6e9
/proc/device-tree/hat/vendor: NW Digital Radio
I added the dtoverlay to the end of the /boot/config.txt file: # Additional overlays and parameters are documented /boot/overlays/README
# Enable audio (loads snd_bcm2835)
dtparam=audio=on
[pi4]
# Enable DRM VC4 V3D driver on top of the dispmanx display stack
dtoverlay=vc4-fkms-v3d
max_framebuffers=2
[all]
dtoverlay=vc4-fkms-v3d
# DRAWS related:
# this adds the udrc driver to the device tree
dtoverlay=draws,alsaname=udrc
# https://www.raspberrypi.org/documentation/configuration/config-txt/overclocking.md
force_turbo=1
but don't see the audio device: **** List of PLAYBACK Hardware Devices ****
card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
Subdevices: 7/7
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 IEC958/HDMI [bcm2835 IEC958/HDMI]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: ALSA [bcm2835 ALSA], device 2: bcm2835 IEC958/HDMI1 [bcm2835 IEC958/HDMI1]
Subdevices: 1/1
Subdevice #0: subdevice #0
If someone could point me to some debugging steps, I'd appreciate it. Thanks! William KI4HDU
|
|
Ryan Matthew Headley
Basil,
You asked that I email you directly, but I do not have your email address. Everything I can find in forum only shows 'basil@...'
|
|
Jim,
toggle quoted messageShow quoted text
Yes that's exactly the problem! The chk_conflict.sh script was left over from when the DRAWS drivers were installed with DKMS (Dynamic Kernel Module Support). At that time the AutoSense-Pi drivers were over writing the DRAWS drivers. That was all fixed with the acceptance of Anna's matches for the tlv320aic codec which supported the DRAWS hat back in early summer. The chk_conflict.sh script has been removed and there is no reference to it in prog_refresh.sh. I've updated the n7nix repo with the required changes. Thanks for figuring this out! Nice work! /Basil Jim Erickson <jim@va7shg.ca> writes:
I think I have a repeatable set of steps that I can perform to make the DRAWS disappear. I’ve done it three times with the same results. Here they are. Please comment on changes to steps or outputs that you’d like to see at particular steps.
|
|
I think I have a repeatable set of steps that I can perform to make the DRAWS disappear. I’ve done it three times with the same results. Here they are. Please comment on changes to steps or outputs that you’d like to see at particular steps.
• card 1: udrc [udrc], device 0: bcm2835-i2s-tlv320aic32x4-hifi tlv320aic32x4-hifi-0 [] • Subdevices: 1/1 • Subdevice #0: subdevice #0 pi@ve7tgz-rpi4:~ $ ./n7nix/bin/prog_refresh.sh Update scripts in n7nix directory Already up to date. Check udrc driver conflict for Kernel release: 4.19.66-v7l+ === chk1: snd-soc-tlv320aic32x4-i2c.ko exists, removing === chk2: snd-soc-tlv320aic32x4.ko exists, removing === Loaded module check snd_soc_tlv320aic32x4_i2c 16384 9 snd_soc_tlv320aic32x4 40960 1 snd_soc_tlv320aic32x4_i2c snd_soc_core 192512 5 vc4,snd_soc_simple_card_utils,snd_soc_bcm2835_i2s,snd_soc_tlv320aic32x4,snd_soc_simple_card snd_pcm 102400 6 vc4,snd_pcm_dmaengine,snd_soc_bcm2835_i2s,snd_soc_tlv320aic32x4,snd_bcm2835,snd_soc_core snd 73728 12 snd_compress,snd_timer,snd_soc_tlv320aic32x4,snd_bcm2835,snd_soc_core,snd_pcm === Sound card check OK After a reboot now, when I look for urdc, it’s not listed and I only have card 0, the on board sound. pi@ve7tgz-rpi4:~ $ aplay -l Hope this helps, and let men know if I can provide any other information. ------ 73, Jim VA7SHG - Phone VE7TGZ/VA7TGZ - Other
|
|
Ryan Matthew Headley <headley.ryan@gmail.com> writes:
I will get all of that together tomorrow.Thanks. With a little patience we will figure this out. I'm focusing on the drivers loading and enumerating the hardware sometimes and not others. Just booting your system without running any config scripts and looking at the output of 'aplay -l' should help us understand what is going on. There is no point in even running the configuration scripts if the drivers haven't loaded. I'll put that in the getting started guide. /Basil n7nix I did check that the udrc was appearing is alsa. I will send you
|
|
Ryan Matthew Headley
I will get all of that together tomorrow. I did check that the udrc was appearing is alsa. I will send you everything tomorrow.
On Tue, 3 Dec 2019, 17:33 Basil Gunn, <basil@...> wrote:
|
|
Something is going wrong from the very beginning.What OS & program are you using to flash the microSD card? I have done three straight flashes on the NW Digital image. I haveI'm trying to help you which is difficult if you don't do what I ask you to do. See previous post. Before you run any configuration scripts determine if the drivers have enumerated the hardware by running aplay -l (from previous post) If you do NOT see udrc with this command there is no script that will fix that problem. ~/n7nix/git pull (not in instructions, but recommended in forums)In an email addressed to me only can you copy the entire console output of running app_config.sh core? If you use the script command it will put all console output into a file. See previous post. ~/bin/ax25-startPlease follow the instructions I previously gave you. There is no use in running the config script if the DRAWS hat is not enumerated. There are only three possibilities:I don't think so as I test it often 2)There is a problem in the config scriptsPossibly. If you share your console output I will have a chance to understand the problem 3)There is a problem with the DRAW hat itselfPossibly but unlikely given the symptoms you have supplied.
|
|
Ryan Matthew Headley
Something is going wrong from the very beginning.
I have done three straight flashes on the NW Digital image. I have followed the steps in 'Getting Started' to the letter. I have powered the hat with 13.8v and had consistent good CPU temps. ~/n7nix/git pull (not in instructions, but recommended in forums) ~/n7nix/config/app_config.sh core reboot ~/n7nix/config/cfgcheck.sh shows that I have not run app_config.sh core ~/bin/ax25-start ~/n7nix/debug/btest -P udr0 shows that udr0 does not exist. There are only three possibilities: 1)There is a problem in the image 2)There is a problem in the config scripts 3)There is a problem with the DRAW hat itself
|
|
I see that, thanks Basil. I’ve got the 12v connector here too. I’ll power it up with that and verify the power and throttling.
toggle quoted messageShow quoted text
As I said, I needed to update to the bleeding edge kernel (Nov 29) for it to be recognized. I think I was on 4.19.75 prior and it would not recognize the DRAWS hat. ------ 73, Jim VA7SHG - Phone VE7TGZ/VA7TGZ - Other
|
|
The DRAWS drivers are loaded & running fine.
toggle quoted messageShow quoted text
Your RPi is currently under voltage & running throttled. Either get a better 5V supply or think about powering the unit with DRAWS 12 V connector. Jim Erickson <jim@va7shg.ca> writes:
Here’s my ./showudrc.sh output. ---- throttle
|
|
Here’s my ./showudrc.sh output.
toggle quoted messageShow quoted text
pi@rpi4-draws:~/n7nix/bin $ ./showudrc.sh ==== Sound Card ==== udrc card number line: card 1: udrc [udrc], device 0: bcm2835-i2s-tlv320aic32x4-hifi tlv320aic32x4-hifi-0 [bcm2835-i2s-tlv320aic32x4-hifi tlv320aic32x4-hifi-0] udrc is sound card #1 ==== ALSA Controls for Radio Tansmit ==== LO Driver Gain L:[0.00dB] R:[0.00dB] PCM L:[-2.00dB] R:[-2.00dB] DAC Playback PT L:[P3] R:[P3] LO Playback CM [Full Chip] ==== ALSA Controls for Radio Receive ==== ADC Level L:[0.00dB] R:[0.00dB] IN1 L:[Off] R:[Off] IN2 L:[10 kOhm] R:[10 kOhm] ==== Pi Ver ==== Unknown pi version: c03112 Model: Raspberry Pi 4 Model B Rev 1.2 Revision : c03112 ==== udrc Ver ==== Found a DRAWS HAT ID EEPROM Name: hat Product: Digital Radio Amateur Work Station Product ID: 0x0004 Product ver: 0x0106 UUID: 1f6fcb33-c9b8-493a-a1ca-4f2490a7ef31 Vendor: NW Digital Radio ==== sys Ver ==== ----- image version 2019 12 02 21:08:55 PST: app_config.sh: core config script FINISHED ----- /proc/version Linux version 4.19.86-v7l+ (dom@buildbot) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611)) #1283 SMP Fri Nov 29 18:37:40 GMT 2019 ----- /etc/*version: 10.2 ----- /etc/*release PRETTY_NAME="Raspbian GNU/Linux 10 (buster)" NAME="Raspbian GNU/Linux" VERSION_ID="10" VERSION="10 (buster)" VERSION_CODENAME=buster ID=raspbian ID_LIKE=debian HOME_URL="http://www.raspbian.org/" SUPPORT_URL="http://www.raspbian.org/RaspbianForums" BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs" ----- lsb_release No LSB modules are available. Distributor ID: Raspbian Description: Raspbian GNU/Linux 10 (buster) Release: 10 Codename: buster ---- systemd Static hostname: rpi4-draws Icon name: computer Machine ID: 7e4231d722ba465997fa343389ae3aa3 Boot ID: 716ccd2985fd4835a235bb1fdd2684fc Operating System: Raspbian GNU/Linux 10 (buster) Kernel: Linux 4.19.86-v7l+ Architecture: arm ---- modules snd_soc_tlv320aic32x4_i2c 16384 51 snd_soc_tlv320aic32x4 40960 1 snd_soc_tlv320aic32x4_i2c snd_soc_core 192512 4 snd_soc_simple_card_utils,snd_soc_bcm2835_i2s,snd_soc_tlv320aic32x4,snd_soc_simple_card snd_pcm 102400 7 snd_pcm_dmaengine,snd_soc_bcm2835_i2s,snd_soc_tlv320aic32x4,snd_bcm2835,snd_soc_core snd 73728 14 snd_compress,snd_timer,snd_soc_tlv320aic32x4,snd_bcm2835,snd_soc_core,snd_pcm ---- kernel |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-==================-==============-============-================================= ii raspberrypi-kernel 1.20190925+1-1 armhf Raspberry Pi bootloader ---- Codec drivers Found: snd-soc-tlv320aic32x4-i2c.ko, OK Found: snd-soc-tlv320aic32x4.ko, OK Directory: /proc/device-tree/soc/i2c@7e804000/tlv320aic32x4@18 exists and status is okay ---- syslog ---- dmesg ----- Dire Wolf version 1.4 ==== Filesystem ==== /dev/root 15G 6.5G 7.4G 47% / ==== boot config ==== # Enable audio (loads snd_bcm2835) #dtparam=audio=on [pi4] # Enable DRM VC4 V3D driver on top of the dispmanx display stack dtoverlay= dtoverlay=draws,alsaname=udrc force_turbo=1 #dtoverlay=vc4-fkms-v3d #max_framebuffers=2 [all] # Enable audio (loads snd_bcm2835) dtparam=audio=on ---- gpsd /usr/local/sbin/gpsd gpsd: 3.19 (revision 3.19) ● gpsd.service - GPS (Global Positioning System) Daemon Loaded: loaded (/lib/systemd/system/gpsd.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2019-12-03 13:00:56 PST; 3min 5s ago Main PID: 556 (gpsd) Tasks: 3 (limit: 4915) Memory: 1.5M CGroup: /system.slice/gpsd.service └─556 /usr/local/sbin/gpsd -n /dev/ttySC0 /dev/pps0 Dec 03 13:00:56 rpi4-draws systemd[1]: Starting GPS (Global Positioning Sys…n... Dec 03 13:00:56 rpi4-draws systemd[1]: Started GPS (Global Positioning Syst…mon. Hint: Some lines were ellipsized, use -l to show in full. ---- chrony crw-rw---- 1 root root 241, 0 Dec 3 13:00 /dev/pps0 crw------- 1 root root 241, 1 Dec 3 13:00 /dev/pps1 crw-rw---- 1 root dialout 235, 0 Dec 3 13:00 /dev/ttySC0 crw-rw---- 1 root dialout 235, 1 Dec 3 13:00 /dev/ttySC1 -- chrony sources 210 Number of sources = 6 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== #? GPS 0 3 0 - +0ns[ +0ns] +/- 0ns #? PPS 0 3 0 - +0ns[ +0ns] +/- 0ns ^* time.srv.ualberta.ca 2 6 77 9 +2701us[+2757us] +/- 53ms ^+ bhs-g5-a9.qc.ca 2 6 77 9 -3680us[-3625us] +/- 67ms ^- draco.spiderspace.co.uk 2 6 75 7 +99ms[ +99ms] +/- 136ms ^? 2606:4700:f1::1 0 6 0 - +0ns[ +0ns] +/- 0ns -- chrony tracking Reference ID : 81800C14 (time.srv.ualberta.ca) Stratum : 3 Ref time (UTC) : Tue Dec 03 21:03:53 2019 System time : 0.000110119 seconds slow of NTP time Last offset : +0.000055461 seconds RMS offset : 0.000055461 seconds Frequency : 23.552 ppm fast Residual freq : +3.169 ppm Skew : 5.066 ppm Root delay : 0.033467785 seconds Root dispersion : 0.037183590 seconds Update interval : 64.4 seconds Leap status : Normal -- chrony sourcestats 210 Number of sources = 6 Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev ============================================================================== GPS 0 0 0 +0.000 2000.000 +0ns 4000ms PPS 0 0 0 +0.000 2000.000 +0ns 4000ms time.srv.ualberta.ca 6 4 136 +4.005 46.475 +2649us 784us bhs-g5-a9.qc.ca 6 4 135 -0.866 102.083 -3281us 1522us draco.spiderspace.co.uk 5 3 136 +687.671 5279.156 +102ms 7614us 2606:4700:f1::1 0 0 0 +0.000 2000.000 +0ns 4000ms ---- sensors -rw-r--r-- 1 root root 171 Dec 1 15:46 /etc/sensors.d/draws rpi_volt-isa-0000 Adapter: ISA adapter in0: N/A ALARM (LCRIT) ads1015-i2c-1-48 Adapter: bcm2835 I2C adapter +12V: +0.00 V in5: +2.26 V User ADC 1: +0.00 V User ADC 2: +0.00 V ---- throttle temp=46.0'C throttled=0x50005 ---- locale Locale country codes do not match: WiFi: US, iw: CA, X11: US. core_config.sh has been run 1 time(s) ------ 73, Jim VA7SHG - Phone VE7TGZ/VA7TGZ - Other
|
|
I actually have mine working now. I struggled last night with my RPi4 and Buster. It would get recognized immediately following these instructions:
toggle quoted messageShow quoted text
But then after some configuring and updating (getting ax.25 working as well as the HF programs using your scripts), eventually the UDRC would disappear. I got it recognized last night again by updating to the bleeding edge kernel with sudo rpi-update: Linux rpi4-draws 4.19.86-v7l+ #1283 SMP Fri Nov 29 18:37:40 GMT 2019 armv7l GNU/Linux And currently my DRAWS is recognized. I haven’t gotten any further configuring or testing things out. Power Supply is currently a USB-C cord plugged into the USB port of my RigRunner 4004U. Thanks Jim ------ 73, Jim VA7SHG - Phone VE7TGZ/VA7TGZ - Other
|
|
A note on the Power Supply:
toggle quoted messageShow quoted text
DRAWS is designed for a nominal 12V Input. 9-15VDC is the recommended range. There is a 16V Tranzorb on the Input which provides over voltage and reverse protection (if fused properly). Your 15V Supply should be fine. Bryan K7UDR
On Dec 3, 2019, at 12:09 PM, Basil Gunn <basil@pacabunga.com> wrote:
|
|
Jim Erickson <jim@va7shg.ca> writes:
I feel like I suffer from a similar problem. Working image, thenPlease send me the output of showudrc.sh Also the make & model number of the power supply you are using to power your RPi. Thanks, /Basil
|
|
/boot/config.txt is exactly as it was from the image with a single change.The driver modules not loading can only happen at boot time. Every time you make any change to your system & reboot run aplay -l to easily see if the DRAWS codec has been enumerated ie. the drivers have loaded & are binding to the hardware. The core_config.sh has only been run so many times after the problemDon't do that. In my past attempts (now on my fourth new image), I would load andWhen configuring a new image get the latest scripts before doing any configuration. cd cd n7nix git pull With the caveat of the original problem of theIs it possible to turn the voltage down on your power supply to something around 13.8V instead of 15V? What is the make & model number of your power supply/wall wart? Also could you please try something. With a new image & without changing or configuring anything boot & then run aplay -l to verify DRAWS drivers are loaded. Let it run for some time, more than an hour, then run aplay -l before and after reboot. Also please open another console window & run this command to monitor the CPU temp: watch -n 10 vcgencmd measure_temp I am beginning to think that the best path for me is to run a clean imageYou are making the assumption that the image config is the problem. I run that config on a half dozen systems that have been working continuously for several months without a problem. On Tue, Dec 3, 2019 at 2:08 PM Basil Gunn <basil@pacabunga.com> wrote:
|
|
I feel like I suffer from a similar problem. Working image, then something happens, I wish I knew what, and then I can’t get my DRAWS recognized.
toggle quoted messageShow quoted text
This has happened on both a RPi4 and RPi3B+. ------ 73, Jim VA7SHG - Phone VE7TGZ/VA7TGZ - Other
|
|
Ryan Matthew Headley
I am running a fan external to the package which is blowing over the whole thing. /boot/config.txt is exactly as it was from the image with a single change. The on-board audio is commented out. I get the exact same results either way. The core_config.sh has only been run so many times after the problem began in an effort to fix it. In my past attempts (now on my fourth new image), I would load and configure everything. With the caveat of the original problem of the thread, everything worked; until it suddenly stopped--independent of any config change on my part. I am beginning to think that the best path for me is to run a clean image of Raspbian and load and configure everything as suits my specific purposes. I just do not want to stuck again with a a functional system that inexplicably ceases to function in a week or so.
On Tue, Dec 3, 2019 at 2:08 PM Basil Gunn <basil@...> wrote:
-- *************************** Ryan Matthew Headley 1705 Granby Road Cayce, SC 29033 USA mobile - +1803-386-1799
|
|
Your hardware is fine.
Your power supply is over voltage > +12V: +15.09 V You are running a Pi 4 with a very cool CPU core temp. Are running a fan? None of the required tlv320aic modules required by DRAWS are loading most likely because you edit /boot/config.txt and you have some syntax error on one of the lines. The core_config.sh script is only made to be run once. core_config.sh has been run 7 time(s) Why are you re-running the core_config.sh script? FYI, I loaded a new image on an additional SD card, and DRAWS wasSo what you are saying is a clean image works then you edit some config files & now DRAWS overlay modules don't get loaded? In order for me to understand what it is that makes that happen learn to use the Linux script command which will capture everything that you type and send me the file with all your terminal output. script command in Linux with Examples https://www.geeksforgeeks.org/script-command-in-linux-with-examples/ I do need a persistent install though. I cannot keep flashing a newI will set up an RPi 4 with a new image to see if I replicate what you are doing. /Basil Ryan Matthew Headley <headley.ryan@gmail.com> writes: The hat is seated properly. Here is the information you requested.
|
|