Kiwi BBAI software installation instructions [updated 4-Mar-24]

12467

Comments

  • Thanks that would work.
    I was sort of looking for a command I could run for a short time to check maximum's over that time when I'm testing things.
    I should probably look for the temperature commands specific to the AI then try that direct.
  • cat /sys/devices/virtual/thermal/thermal_zone0/temp
  • edited February 2020
    Thanks Jim,
    Something about wanting to use "logger" and "watch" stops me sending it the log I can look at (quickly) while at work.

    I can work with
    root@kiwi:~# while true; do logger --size 3 -n 1.2.3.4 `ct`; sleep 30; done

    I only cut the temperature string down to make it quicker to read, I should learn how to divide it as part of the logging but I'm only "coding by copy-paste" .
    That also doesn't print any local log so saves wear if running short duration.

    --On reflection this is spamming out the AI setup thread again (not intentional) so I'll not complain if John wants to split this off--
  • @jks Maybe stupid question. Can I use for power connection my KiwiSDR with BB-AI USB type C cable? I have good cable with support 5A current.
  • edited February 2020
    Anecdotal -

    I did try powering through the USB-C and was not happy with the component heating behind the input, it also does not take advantage of the DC filtering on the Kiwi.
    If you try it measure temperatures and noise levels.
    I can't remember exactly what was heating but the thermal image just "looked wrong".
    rz3dvp
  • It should work, but it is technically out-of-spec w.r.t. current draw on the P9-7,8 pins, although I don't think it's a big deal. What worries me more is the heat dissipation of the or-ing diodes especially since we discovered they are placed on the PCB directly under the PMIC (which has enough thermal dissipation problems of its own). My complaints are summarized here: https://github.com/beagleboard/beaglebone-ai/issues/10#issuecomment-533700514

    In short, try it and see how it goes. Put a small heatsink on the PMIC if you can.
    rz3dvp
  • edited February 2020
    I just got a new kiwiSDR and BBAI. I have followed the instructions to install and update but am getting a failure. The kiwiSDR starts up then fails with a kernel panic

    SYS_PANIC: "fopen Makefile.1" No such file or directory (net/update.cpp, line 179)

    Then it fails and restarts, Any idea on what to do or what more info is needed to help with the problem?

    73

    Steve KD2OM


    UPDATE: It was that it wasn't in the root directory when I did the git clone to get the files. Once I signed in, I issued an sudo -i which put in the /root directory. After that everything worked correctly.
  • edited May 2020
    Hi,

    It trying to get the Kiwi working on the BBAI I end up with this in response to "make install" (Re: Instructions at the top of this thread.)

    make[1]: Entering directory '/root/Beagle_SDR_GPS'
    clang++-7 -Dv1_390 @../build/gen/Makefile.inc -c -o ../build/obj/prussdrv.o pru/prussdrv.cpp
    clang: error: no such file or directory: '@../build/gen/Makefile.inc'
    Makefile:772: recipe for target '../build/obj/prussdrv.o' failed
    make[1]: *** [../build/obj/prussdrv.o] Error 1
    make[1]: Leaving directory '/root/Beagle_SDR_GPS'
    Makefile:891: recipe for target 'install' failed
    make: *** [install] Error 2

    * * *
    What's been done:
    - Update the system using the instructions at the start of this thread, (e.g. "beagleboard.org/upgrade")
    - from the root shell, in the "root" directory I've done the git clone and from the "Beagle_SDR_GPS" directory done the make clean and install

    The first time I did this it took over 30 minutes to get the point where it stalled - but now it takes just about 30 seconds

    I've gone through steps mentioned in previous threads to repair installs/upgrades, but the result is exactly the same.

    I'm clearly missing something obvious and I'm open to suggestions.

    TNX and 73
  • edited May 2020
    Further to KA7OEI's post, I have a new BBAI and have encountered the same error when trying to install a Kiwi today. Installation in 2019 went without a hitch.

    make[2]: Leaving directory '/root/Beagle_SDR_GPS'
    clang++-7 -Dv1_390 @../build/gen/Makefile.inc -c -o ../build/obj/prussdrv.o pru/prussdrv.cpp
    clang: error: no such file or directory: '@../build/gen/Makefile.inc'
    make[1]: *** [Makefile:772: ../build/obj/prussdrv.o] Error 1
    make[1]: Leaving directory '/root/Beagle_SDR_GPS'
    make: *** [Makefile:892: install] Error 2
  • jksjks
    edited May 2020
    Do a plain "make" followed by a "make install". The instructions have been updated to say "make clean; make; make install".
  • Now working. Thanks John for your excellent support.
  • edited May 2020
    Thanks, John, for the clarification in the build/install steps: I re-did things (other than delete/rename the old build directory and then do a Git Pull) and it now gets all of the way through, with no errors - but it simply finishes with this:


    sent 323 bytes received 12 bytes 670.00 bytes/sec
    total size is 24,532,443 speedup is 73,231.17
    systemctl enable kiwid.service
    Synchronizing state of kiwid.service with SysV service script with /lib/systemd/systemd-sysv-install.
    Executing: /lib/systemd/systemd-sysv-install enable kiwid
    make[1]: Leaving directory '/root/Beagle_SDR_GPS'
    root@beaglebone:~/Beagle_SDR_GPS#


    with no "reboot now" prompt.

    If I do reboot from the command line, the system reboots normally (the default debian password is unchanged) but it's clear that the KiwiSDR service isn't starting - nothing related to it found running using top, ps or by grepping the dmesg results.


    I will admit that I haven't done more extensive trouble-shooting just yet, just in case there is something else that might be suggested be checked.

    Thanks for what you do.
  • You'll only be prompted for reboot after the first ever install is done.

    To check for messages from the server that might indicate why it has not started do: "cdp", "ms". You might have to give multiple "ms" commands as there is a delay after restart or reboot before the server is run. Also try "ku" to get the server running (followed by "ms" to check).
  • Apparently something still isn't right:

    A "ku" gives me this:

    systemctl --full --lines=100 stop kiwid.service || true
    systemctl --full --lines=100 start kiwid.service || true


    An "ms" yields this:

    May 06 05:29:15 beaglebone systemd[1]: Starting kiwi daemon...
    May 06 05:29:15 beaglebone kiwid[30321]: BBAI USE_SPIDEV
    May 06 05:29:15 beaglebone kiwid[30321]: Starting kiwid
    May 06 05:29:16 beaglebone kiwid[30321]: Start kiwid: OK
    May 06 05:29:16 beaglebone kiwid[30321]: Wed May 6 05:29:16 UTC 2020
    May 06 05:29:16 beaglebone systemd[1]: Started kiwi daemon.
    May 06 05:29:17 beaglebone kiwid[30328]: 00:00:00.014 KiwiSDR v1.390 --------------------------------
    May 06 05:29:17 beaglebone kiwid[30328]: 00:00:00.018 compiled: May 5 2020 15:22:42 on beaglebone
    May 06 05:29:17 beaglebone kiwid[30328]: 00:00:00.021 -debian 9
    May 06 05:29:17 beaglebone kiwid[30328]: 00:00:00.021 /etc/debian_version 9.12
    May 06 05:29:17 beaglebone kiwid[30328]: 00:00:00.021 background mode: delaying start 30 secs...


    Which will simply hang. On "top" in another window I see that "kiwid" will appear and disappear every 60-90 seconds. After about 10 minutes I did a ^C and got this:

    Makefile:1017: recipe for target 'status' failed
    make: [status] Interrupt (ignored)


    FWIW, connecting to port 80 I do get the Cloud 9 stuff - but this was there before I attempted to install the Kiwi software.

    * * *

    I'm beginning to think that I need to find the original factory image and start again, demonstrating the very definition of insanity.

    Clint
  • It sounds like kiwid is in a crash-loop. In this case the "ms" command is not useful because it just shows you the hung state of the last kiwid run.

    Instead, do "msl | tail -100" (msl = "make short log"). This will show the last 100 lines of all the kiwid related messages from the global syslog.
  • Thanks for that suggestion - here is what repeats again and again in the 100 lines:

    May 6 20:18:39 beaglebone kiwid: 00:00:00.623 KiwiSDR v1.390 --------------------------------------------------------------------
    May 6 20:18:39 beaglebone kiwid: 00:00:00.623 compiled: May 5 2020 15:22:42 on beaglebone
    May 6 20:18:39 beaglebone kiwid: 00:00:00.623 -debian 9
    May 6 20:18:39 beaglebone kiwid: 00:00:00.624 /etc/debian_version 9.12
    May 6 20:18:39 beaglebone kiwid: 00:00:00.624 background mode: delaying start 30 secs...
    May 6 20:19:09 beaglebone kiwid: 00:00:30.750 reading configuration from file /root/kiwi.config/kiwi.json: 49 tokens
    May 6 20:19:09 beaglebone kiwid: 00:00:30.750 reading configuration from file /root/kiwi.config/admin.json: 25 tokens
    May 6 20:19:09 beaglebone kiwid: 00:00:30.750 EEPROM check: open /sys/bus/i2c/devices/3-0054/eeprom No such file or directory
    May 6 20:19:09 beaglebone kiwid: 00:00:30.750 can't read serial number from EEPROM and no configuration override
    May 6 20:19:09 beaglebone kiwid: 00:00:30.812 reading configuration from file /root/kiwi.config/dx.json: 7108 tokens
    May 6 20:19:09 beaglebone kiwid: 00:00:30.813 890 dx entries
    May 6 20:19:09 beaglebone kiwid: 00:00:30.828 .... firmware: SDR_RX4_WF4
    May 6 20:19:09 beaglebone kiwid: 00:00:30.828 .... firmware: rx_chans=4 wf_chans=4
    May 6 20:19:09 beaglebone kiwid: 00:00:30.828 .... firmware: NRX bufs=4 samps=170 loop=85 rem=0
    May 6 20:19:09 beaglebone kiwid: 00:00:30.828 .... firmware: NWF xfer=9 samps=911 rpt=50 loop=18 rem=11
    May 6 20:19:09 beaglebone kiwid: 00:00:30.829 .... listening on default port 8073/8073 for "openwebrx"
    May 6 20:19:09 beaglebone kiwid: 00:00:30.830 .... webserver for "openwebrx" on port [::]:8073
    May 6 20:19:09 beaglebone kiwid: 00:00:31.070 .... ### using SPI_DEV
    May 6 20:19:09 beaglebone kiwid: SYS_PANIC: "open spidev" No such file or directory (platform/beaglebone/spi_dev.cpp, line 154) No such file or directory
    May 6 20:19:09 beaglebone kiwid: sys_panic: backtrace 0 0x8c2d4 /usr/local/bin/kiwid() [0x8c2d4]
    May 6 20:19:09 beaglebone kiwid: sys_panic: backtrace 1 0x8c4a4 /usr/local/bin/kiwid() [0x8c4a4]
    May 6 20:19:09 beaglebone kiwid: sys_panic: backtrace 2 0x2eae4 /usr/local/bin/kiwid() [0x2eae4]
    May 6 20:19:09 beaglebone kiwid: sys_panic: backtrace 3 0x862fc /usr/local/bin/kiwid() [0x862fc]
    May 6 20:19:09 beaglebone kiwid: sys_panic: backtrace 4 0x1e1b8 /usr/local/bin/kiwid() [0x1e1b8]
    May 6 20:19:09 beaglebone kiwid: sys_panic: backtrace 5 0xb68e24aa /lib/arm-linux-gnueabihf/libc.so.6(__libc_start_main+0x9d) [0xb68e24aa]


    Clearly, something is amiss.

    Clint
  • jksjks
    edited May 2020
    Okay, now we're getting somewhere. The last few comments of this topic are relevant: http://forum.kiwisdr.com/discussion/comment/9486

    In particular, do:
    cdp
    mst
    make install_kiwi_device_tree
    reboot
    
    The problem is this: If you get the Kiwi software successfully running on an AI, then subsequently update the Beagle software by following the instructions at beagleboard.org/upgrade, and that update installs a new kernel, then the kernel-related changes made by the Kiwi installation process the first time it was run are overwritten. The Kiwi Makefile does not account for repeated Beagle kernel updates. But does offer a way of doing it manually ("make install_kiwi_device_tree; reboot"). So I will update the instructions to mention this fact. I had forgotten about this issue entirely.
  • John,

    That did the trick - thanks for the help and all that you do.

    Clint
  • edited May 2020
    Following the instructions the output of make install is:
    make[1]: Entering directory '/root/Beagle_SDR_GPS'
    disable window system
    systemctl stop lightdm.service
    Failed to stop lightdm.service: Unit lightdm.service not loaded.
    make[1]: *** [Makefile:817: /root/kiwi.config/.do_once.dep] Error 5
    make[1]: Leaving directory '/root/Beagle_SDR_GPS'
    make: *** [Makefile:892: install] Error 2

    The output of version.sh is:
    git:/opt/scripts/:[029041f6866049997bbfd2c7667b3c6e8c95201c]
    model:[BeagleBoard.org_BeagleBone_AI]
    dogtag:[BeagleBoard.org Debian Buster IoT Image 2020-04-06]
    UBOOT: Booted Device-Tree:[am5729-beagleboneai.dts]
    kernel:[4.19.94-ti-r43]

    [edit on]
    in the Makefile the sys version is hardcoded
    DIR_DTB = dtb-$(SYS_MAJ).$(SYS_MIN)-ti
    install_kiwi_device_tree:
    	@echo "install Kiwi device tree to configure GPIO pins"
    	@echo $(SYS_MAJ).$(SYS_MIN) $(SYS)
    	cp platform/beaglebone_AI/am5729-beagleboneai-kiwisdr-cape.dts /opt/source/$(DIR_DTB)/src/arm
    	(cd /opt/source/$(DIR_DTB); make)
    	cp /opt/source/dtb-4.14-ti/src/arm/am5729-beagleboneai-kiwisdr-cape.dtb /boot/dtbs/$(SYS)
    	cp /opt/source/dtb-4.14-ti/src/arm/am5729-beagleboneai-kiwisdr-cape.dtb /boot/dtbs/$(SYS)/am5729-beagleboneai.dtb
    	@touch $(REBOOT)

    Changing it to 4.19 solved the issue.

    I suppose this was to assure the update from 4.14, but what if it is executed in a 4.19 after kernel update done before the installation of the kiwi package?
    [edit off]


    Any suggestion?
    73,

    GL
  • Just change the hardcoded "dtb-4.14-ti" to "$(DIR_DTB)". That's what I've done for the next release.
    iw2nkerz3dvp
  • I've successfully updated the BBAI and built the kiwiSDR code. Initially the kiwi build complained but manually running the 'clang' line worked and a second try resulted in a running SDR. I'm now working on cooling along the lines of @iw2nke. However, I did the build from beats and pieces in the above thread where @jks says " Do a plain "make" followed by a "make install". The instructions have been updated to say "make clean; make; make install"."
    My silly question is "Where are the instructions?". Is there a file repository on this forum I don't know about?

    n6gn
  • edited May 2020
    Instructions = Very first post (in this thread).
  • the very first post are all I ever used for all of my BBAI sustems
  • Funny, the first post I see is from Powernumpty with no reference to instructions:

    "Kiwi BBAI software Alpha test instructions

    Powernumpty
    February 6
    Thanks that would work.
    I was sort of looking for a command I could run for a short time to check maximum's over that time when I'm testing things.
    I should probably look for the temperature commands specific to the AI then try that direct."
  • edited May 2020
    http://forum.kiwisdr.com/discussion/1743/kiwi-bbai-software-alpha-test-instructions/p1

    Or scroll to the bottom, look for Blue page numbers "<< 1 2 3 4 >>", go to 1.
    WA2ZKD
  • edited June 2020
    Update. Purchased a BBAI to replace a BBG. The installation process failed at 'make install'. It was looking for lightdm service to disable, which was not installed with my flasher image. So I installed it with 'sudo apt install lightdm', and then 'make install' was content to disable it. Now running. I hope this is helpful.
  • Thanks. Will fix Makefile in next release to ignore a failed "systemctl {stop,disable} lightdm.service".
    G0LUJ
  • I have a fan capes for sale....
  • I have one of the Newark fan capes and at nominal room temperature (70F) it is barely capable of keeping the CPU at an acceptable temperature when it's running at 1.5 Gig.

    The main problem with it - like many similar fans - is that it just can't push the warm air away from the vicinity of the heat producing devices. Adding some additional headers (Adafruit) to add more spacing between the fan and the Kiwi helped a bit, but more help is needed in the form of even a modest fan pulling in "outside" air and pushing it past, between the boards.

    Clint
    PowernumptyWA2TP
Sign In or Register to comment.