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?




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

  • Here is the output
    login as: root
    Debian GNU/Linux 8 Debian Image 2016-05-13
    Last login: Thu Oct 12 09:32:20 2017 from

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

    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 2017
    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.
    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 2017
    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

  • 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
    -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
    LOAD_SPI = no
    load kiwi device tree
    load kiwi-P device tree
    ./k: 114: ./k: kiwi.bin: not found

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

  • 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 2017
    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 install

  • 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

  • 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:

    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" 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 2017
    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:
    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:

    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/
    Unmounting Partitions
    copying: [/dev/mmcblk0] -> [/dev/mmcblk1]
    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

  • 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 :)
  • I just received SN 3098 direct from Seeed.  I'm getting a similar issue re connectivity so that is why I'm posting in this thread.  I've used several power supplies - bench type 3 amp with current limit at max and another 5v 2.5 amp supply, with the same results.  Ethernet port LEDS - the orange is solid the green flashes. There is solid blue LED just next to the port.  I'm unable to access it on my network using the  kiwisdr.local:8073 method. I have another Kiwi here on 8173 and that connects fine using this method (win7).  Port scanning shows no new ip and the kiwi ip locating software fails to find either kiwi.  Looking at the 4 blue LEDS they just give 2 flashes then a pause - repeating - which implies no ip assigned I believe. When powering up all 4 sequentially light,  a few flashes then back to the 2 repeated flashes.

    I read the posts in this series but I am not at all conversant in how to look at the various directories and files that have been mentioned - Is there something simple I can do from my windows 7 system to explore this issue or ??  It's very disappointing as one reason I bought the complete unit was that it came with the software all loaded so I wouldn't have to mess with any of these tiny cards etc.  Any help or guidance would be appreciated.

    Thanks, Don
  • jksjks
    edited March 2018
    When you say "looking at the 4 blue LEDS they just give 2 flashes" do you mean just the left (outer) single LED double flashes or all 4 of them flash together? If it's just the left one that's the default pattern Debian/Linux is setup to give if the Kiwi software did not successfully start.

    In that case I would just try re-flashing the Beagle using the supplied sd card. Should take you 5 minutes. We've had a few cases where Seeed had not pre-installed the software for whatever reason. That isn't supposed to happen though. The Kiwi kits are supposed to be 100% tested before they go out the door which should catch a missing software install.

    If you are able to ssh or PuTTY into the Beagle as root then you can use the commands "cdp" and "ms" to see why the Kiwi server isn't running.

    Note that the "kiwisdr.local" MDNS thing might get confused if there are multiple Kiwis on the same local network. In that case the second Kiwi booted is supposed to be reachable as "kiwisdr-2.local". I think that's how my Mac saw it the last time I tried using more than one. But I'm not 100% sure how Windows will react.

  • It was the left outer single LED double flash...

    I did re install everything and to my relief, it came up and is doing fine. At least 4 other KIWI's in that shipment all booted up fine, it was just mine that was gibbled somehow.

    Thanks, Don
Sign In or Register to comment.