KiwiSDR received from SEEED, cape apparently not working [works now, bad software install by Seeed?]

No https on port 8073.
Using SSH I couldn't see any recognizable KiwiSDR tasks by running the "ps" command or "top"

Looking at DMESG (attached) I see the cape is recognized, but the loader reports it fails to load Kiwi-SDR software.

It is probably failing to get a DHCP ethernet address was because I am running some known-reliable IPv4 software on my routers - I can fix that problem once the beaglebone http server is running...

Is the cape dead? Is there any "fix-it" type debug help available?

Thanks
ScreenCapture006.png
1082 x 1043 - 213K

Comments

  • jksjks
    edited October 12
    More interesting than dmesg output would be the Kiwi daemon log. What do you get from doing:
    cdp
    ml (that's the lowercase letter 'L' as in "make log")

  • Here is the output
    -------------------------------------------------
    login as: root
    Debian GNU/Linux 8
    BeagleBoard.org Debian Image 2016-05-13
    Support/FAQ: http://elinux.org/Beagleboard:BeagleBoneBlack_Debian
    Last login: Thu Oct 12 09:32:20 2017 from 192.168.1.76

    root@kiwisdr:~# cdp
    -bash: cdp: command not found
    root@kiwisdr:~# ml
    -bash: ml: command not found

    root@kiwisdr:~#
    root@kiwisdr:~# cd /bin
    root@kiwisdr:/bin# cdp
    -bash: cdp: command not found

    root@kiwisdr:/bin# cd /usr/bin
    root@kiwisdr:/usr/bin# cdp
    -bash: cdp: command not found


  • jksjks
    edited October 12
    Wow, something is dreadfully wrong. Could be a case of Seeed having shipped the Beagle without the Kiwi software installed. We've seen this once before. It shouldn't happen because the Kiwi and Beagle are supposed to be tested as a unit.

    Okay, let's try a few things please.
    cd
    ls
    Do you see a directory called Beagle_SDR_GPS in the ls command output? If not then the software was never installed. Did they include a micro-SD card in the box? Follow the printed directions included in the box to flash the Beagle from the sd card. Basically, with the power unplugged, insert the sd card into the Beagle. This is a little difficult to do if you have already installed the Kiwi in the enclosure. Disconnect the Ethernet. Power up the Kiwi. You should see a "back-and-forth" pattern in the LEDs as the image is copied. Wait for the LEDs to go completely off and the Beagle to power down. Should take 5 minutes or so. Remove the sd card (very important). Reattach cables and power up again.

  • jksjks
    edited October 12
    The reason 'cdp' and 'ml' are not found is because they are aliases that are setup by the /root/.bashrc file. But if that file was never created by the Kiwi software installation process (or is simply the Debian default) then those aliases won't exist.

  • Thanks for the explanation. Here is my output from ls /root
    ------------------------------------------------
    root@kiwisdr:~# cd
    root@kiwisdr:~# ls -al
    total 28
    drwx------  5 root root  4096 Oct 12 09:48 .
    drwxr-xr-x 21 root root  4096 Jan  1  2000 ..
    -rw-------  1 root root   666 Aug 10  2016 .bash_history
    -rw-r--r--  1 root root     0 Oct 12 09:18 .bashrc
    -rw-r--r--  1 root root     0 Oct 12 09:18 .bashrc.local
    -rw-------  1 root root   153 Oct 12 09:48 .joe_state
    -rw-r--r--  1 root root     0 Oct 12 09:18 .profile
    drwxr-xr-x  2 root root  4096 Jul 25  2016 .ssh
    drwxr-xr-x 21  501 staff 4096 Oct 12 09:18 Beagle_SDR_GPS
    drwxr-xr-x  2 root root  4096 Oct 12 09:18 kiwi.config
    root@kiwisdr:~#

  • The .bashrc files are zero length. That's not good. Maybe a failed partial software install? Could you try a "cd Beagle_SDR_GPS" and a "ls -al" and let's see how the files there are. In that directory try using the "k" command, or perhaps "./k" will be necessary. This will run the Kiwi server directly.

  • root@kiwisdr:~# cd Beagle_SDR_GPS/
    root@kiwisdr:~/Beagle_SDR_GPS# ls -al
    total 5744
    drwxr-xr-x 21  501 staff    4096 Oct 12 09:18 .
    drwx------  5 root root     4096 Oct 12 09:48 ..
    -rw-r--r--  1 root root        5 Oct 12 09:18 .comp_ctr
    drwxr-xr-x  8 root root     4096 Oct 12 09:08 .git
    -rw-r--r--  1 root root  2192115 Oct 12 09:08 KiwiSDR.bit
    -rw-r--r--  1 root root    19406 Oct 12 09:08 Makefile
    -rw-r--r--  1 root root     6317 Oct 12 09:08 README.md
    -rw-r--r--  1 root root     1013 Oct 12 09:08 _COPYRIGHT
    -rw-r--r--  1 root root       52 Oct 12 09:08 _LICENSE
    drwxr-xr-x  3  501 staff    4096 Aug 10  2016 arch
    -rw-r--r--  1 root root    30057 Oct 12 09:08 cfg.c
    -rw-r--r--  1 root root     9964 Oct 12 09:08 cfg.h
    -rw-r--r--  1 root root     7604 Oct 12 09:08 clk.c
    -rw-r--r--  1 root root     2066 Oct 12 09:08 clk.h
    -rw-r--r--  1 root root      975 Oct 12 09:08 config.h
    -rw-r--r--  1 root root     7027 Oct 12 09:08 dx.c
    -rw-r--r--  1 root root     1761 Oct 12 09:08 dx.h
    drwxr-xr-x  3  501 staff    4096 Oct 12 09:10 e_cpu
    drwxr-xr-x 13  501 staff    4096 Oct 12 09:17 extensions
    -rw-r--r--  1 root root     4976 Oct 12 09:08 fpga.c
    lrwxrwxrwx  1 root root        1 Oct 12 09:08 g -> k
    drwxr-xr-x  2  501 staff    4096 Oct 12 09:08 gps
    -rwxr-xr-x  1 root root     2765 Oct 12 09:08 k
    lrwxrwxrwx  1 root root        1 Oct 12 09:08 kiwi -> k
    -rwxr-xr-x  1 root root  3793284 Oct 12 09:17 kiwi.bin
    -rw-r--r--  1 root root     5597 Oct 12 09:08 kiwi.config
    -rw-r--r--  1 root root     5440 Oct 12 09:10 kiwi.gen.h
    -rw-r--r--  1 root root     5469 Oct 12 09:08 kiwi.h
    -rwxr-xr-x  1 root root        0 Oct 12 09:18 kiwid.bin
    -rw-r--r--  1 root root     8406 Oct 12 09:08 main.cpp
    lrwxrwxrwx  1 root root        1 Oct 12 09:08 n -> k
    -rw-r--r--  1 root root    16325 Oct 12 09:08 net.c
    -rw-r--r--  1 root root     2992 Oct 12 09:08 net.h
    lrwxrwxrwx  1 root root        1 Oct 12 09:08 ng -> k
    drwxr-xr-x  2 root root     4096 Oct 12 09:18 obj
    drwxr-xr-x  2 root root     4096 Oct 12 09:16 obj_O3
    drwxr-xr-x  2 root root     4096 Oct 12 09:17 obj_keep
    drwxr-xr-x  8  501 staff    4096 Oct 12 09:08 pkgs
    drwxr-xr-x  3  501 staff    4096 Aug 10  2016 platform
    drwxr-xr-x  3  501 staff    4096 Oct 12 09:08 pru
    drwxr-xr-x  4  501 staff    4096 Oct 12 09:08 rx
    -rw-r--r--  1 root root     1907 Oct 12 09:08 stats.c
    -rw-r--r--  1 root root    10079 Oct 12 09:08 str.c
    -rw-r--r--  1 root root     2681 Oct 12 09:08 str.h
    drwxr-xr-x  2  501 staff    4096 Oct 12 09:08 support
    drwxr-xr-x  2  501 staff    4096 Oct 12 09:08 tools
    -rw-r--r--  1 root root     2498 Oct 12 09:08 types.h
    drwxr-xr-x  2  501 staff    4096 Oct 12 09:08 ui
    drwxr-xr-x  3  501 staff    4096 Oct 12 09:08 unix_env
    -rwxr-xr-x  1 root root      289 Oct 12 09:08 up
    -rw-r--r--  1 root root     9832 Oct 12 09:08 update.cpp
    drwxr-xr-x  6  501 staff    4096 Oct 12 09:08 verilog
    drwxr-xr-x 13 root root     4096 Oct 12 09:08 verilog.ip
    drwxr-xr-x  6  501 staff    4096 Oct 12 09:17 web
    root@kiwisdr:~/Beagle_SDR_GPS# ./k
    DEBIAN 8
    USE_SPIDEV
    LOAD_SPI = no
    load kiwi device tree
    load kiwi-P device tree
    ./k: 114: ./k: kiwi.bin: not found
    root@kiwisdr:~/Beagle_SDR_GPS#

    root@kiwisdr:~/Beagle_SDR_GPS# ./k
    DEBIAN 8
    USE_SPIDEV
    LOAD_SPI = no
    ./k: 114: ./k: kiwi.bin: not found
    root@kiwisdr:~/Beagle_SDR_GPS#


  • Incidentally, my board serial number is 3003, which might indicate that SEEED's initialization might be failing because of a new batch (3000-on)
  • jksjks
    edited October 12 Accepted Answer
    Okay, one more thing to check before doing a re-flash: what's the output from the "df -h" command? I want to see if you (somehow) have a full filesystem. That could cause zero-length files although it's hard to imagine how that could have happened.

    You could also try a full rebuild before the re-flash just to see what happens. I don't recommend leaving it this way if it works because you don't know what other files might still be zero length or damaged. But it would still be interesting to know. Try this in the Beagle_SDR_GPS directory:
    make clean_dist
    make
    make install
    ./k


  • I am make ing a new compilation now. Will reboot and test it. Should I try the SD card as received from SEEED, or download the latest distribution?

    --------------------------------------------------------------------------------------------------------------------
    root@kiwisdr:~/Beagle_SDR_GPS# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    udev             10M     0   10M   0% /dev
    tmpfs            99M  8.3M   91M   9% /run
    /dev/mmcblk0p1  3.5G  748M  2.6G  23% /
    tmpfs           247M     0  247M   0% /dev/shm
    tmpfs           5.0M     0  5.0M   0% /run/lock
    tmpfs           247M     0  247M   0% /sys/fs/cgroup
    root@kiwisdr:~/Beagle_SDR_GPS#

  • New compilation is now running http server after reboot.
    I just get a photo of the board, no waterfalls, but I can at least start to look through the /admin pages to figure out if something needs to be initialized.

    Thanks for your help!
  • The filesystem looks normal -- around 750 MB used.

    So one possible problem is that there is corruption on the sd card Seeed sent you *if* that's the one they used to flash your Beagle. I'm not exactly sure how they do this. It's possible the sd cards are mass duplicated in a separate process.

    You could download the Kiwi image file onto a different known-good sd card and reflash from that. It's a bit of a pain unless you have some experience. We have some suggestions here: http://kiwisdr.com/quickstart/index.html#id-dload

    Instead of using a pc or Mac you could use the Beagle itself to create the new "flasher" sd card as long as the Kiwi has a working Internet connection (see if you can "ping google.com" from the Beagle shell). The instructions above show how to download a script that does all the work for you.


  • Hmm, that's not right. You should get a waterfall and audio without having to configure anything with the /admin interface.

    I would just go with a reflash from a newly downloaded image file onto a different sd card at this point. I'm going to try building a flasher sd card with the above script file on the Beagle to make sure the process still works.

  • ---> Under Firefox all is working well <--- Palemoon was not displaying the spectra, but Firefox is OK.

    This is strange, as I have been accessing KiwiSDR on the web with Palemoon and not having any troubles. My problem, I will look into it.

    The ADMIN panel says I have the latest distribution --> Installed version: v1.136, built Oct 12 2017 20:22:24
    Small (only 4Gig) SD cards have been in short supply for some time. I may have some 16G around, which should be small enough to work OK. Good idea to keep the SEEED intact. Since the Internet connectivity is good, I will create a new card and flash it. But not now. Mentally weary at this point :) Thanks for all your help.


    ps: Incidentally, I think I will try and shield the receiver in a metal case, as the number of "birdies" I am seeing from the Beaglebone (etc) is excessive


  • jksjks
    edited October 12
    If you remove the zero-length files then the next "make install" will create them from the Kiwi software distribution. That way you'll get the aliases working which you may or may not care about. Something like this:
    cd
    rm .bashrc .bashrc.local .profile
    cd Beagle_SDR_GPS
    make install

    sd cards 2G and up should work. Doesn't have to be 4 GB exactly. The image file is only 800 MB or so.

    Seeed is about to offer a metal case for sale. But it is unfortunately being delayed by the supplier of the little fan that goes inside.

    It's been pretty well established that the birdies are from Ethernet. There is not a fix that works for everyone. It seems to be a combination of short cables, type 31 or 43 toroids on the cables and a modern Ethernet switch that uses transmitter power reduction to minimize the RFI (see the IEEE 802.3az standard that talks about sensing the cable length and adjusting the transmitter power accordingly: https://en.wikipedia.org/wiki/Energy-Efficient_Ethernet).

    The exact path(s) of the RFI can be difficult to determine. It isn't the Ethernet coupling into the Kiwi directly as much as it is the Ethernet RFI getting into the antenna. Especially with active antennas where the RFI from the Ethernet cables jumps to the antenna coax (if fed with coax) and rides up the outside shield of the coax and is seen by the E-field probe of the antenna. Adding toroids to the antenna coax a few meters away from the probe element should help.

  • BashRC (etc) were created by the first make install I performed. That's why I rebooted before testing that build..

    Birdies turned out to be RFI. Perhaps from a neighbor's solar system? Once I get them under control I will look at the ethernet. Am already using Cat7 double-shielded cables for all my connections throughout the lab, but only Netgear Prosafe switches. I will look into your suggestions in more detail. VLF is my primary interest. The most worrying RFI peaks at 298KHz, and is least problem on the loop antenna.

  • I have hit another problem with the software install (I think).

    When I insert a 32Gig FAT32 formatted SD card and try to do a backup the KiwiSDR is failing to look for the correct partitions to back up.

    At least that is my interpretation. I want to do a backup while the system is running, and certainly before I try a new flash. Is it possible execute the script in SSH?


    Here is the error message from the KiwiADMIN page:
    KiwiSDR: copy eMMC image to micro-SD card
    Version: [1.20151007: gpt partitions with raw boot...]
    -----------------------------
    include /root/Beagle_SDR_GPS/tools/kiwiSDR-SOC.sh
    Unmounting Partitions
    -----------------------------
    copying: [/dev/mmcblk0] -> [/dev/mmcblk1]
    lsblk:
    NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
    mmcblk0boot0 179:8 0 2M 1 disk
    mmcblk0boot1 179:16 0 2M 1 disk
    mmcblk0 179:0 0 3.6G 0 disk
    `-mmcblk0p1 179:1 0 3.6G 0 part /
    -----------------------------
    df -h | grep rootfs:
    -----------------------------
    Error: [/dev/mmcblk1] does not exist
    writing to [/dev/mmcblk1] failed...
    -----------------------------
    write failure
    error code 1
    ADMIN: system returned 1

  • jksjks
    Accepted Answer
    The output of the "lsblk" command in the script shows the sd card (mmcblk1) is not being seen. Sometimes when you first insert an sd card it doesn't get sensed properly. Try just pushing it "in" and releasing so it pops out partially. Then click it in and try the backup again, and see if mmcblk1 is reported by lsblk.


  • Thank you so much, jks. it was a silly error of mine. From the script output I assumed that the root filesystem was the wrong name and not the MMC unrecognized. Backup completed in 2:20 once I popped the card out, then in again :)
Sign In or Register to comment.