The KiwiSDR 2 online store is open for orders! Please visit kiwisdr.nz
Please visit kiwisdr.com (documentation) and kiwisdr.nz (online store)

jks

About

Username
jks
Joined
Visits
31,645
Last Active
Roles
Member, Administrator, Moderator
Points
308
  • Kiwi BBAI software installation instructions [updated 4-Mar-24]

    I am currently using a couple of those stacking headers with the extra-long 8.5mm tails. The trick is to insert the pins only partially into the AI headers. This is not difficult because the insertion force is so great. The problem is to get all 46 pins aligned and moving together without bending any. The Kiwi board can go flush onto the new headers as usual. It gives you about 12mm more spacing between the two boards.

    Not the best photo, but you can sort of get the idea. Also note the PMIC heatsink. It wasn't exactly what I wanted but is better than nothing. The random wires is a hack for the console serial port so I didn't have to wait on shipping for the special adapter cable from DigiKey. On the left going out of frame is the USB connection for the fan power.

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

    [updated 4-Mar-24]
    SUBSEQUENT UPDATES:
    If you subsequently update the Beagle software on your AI, and that update installs a new kernel,
    then you will have to reinstall the kernel-related Kiwi changes manually as follows.
    First, make sure you are running the latest Kiwi update.
    Then type:
    cdp
    mst
    make install_kiwi_device_tree
    reboot (not just a server restart, a full Beagle reboot)

    [updated 9-Feb-22]
    If you need to re-flash your BBAI with a Beagle Debian 9 factory image there are now instructions for doing so on the website: http://kiwisdr.com/quickstart/index.html#id-dload Afterwards, you will still need to follow the instructions below to install the Kiwi software. Currently there is no BBAI image file that already has the Kiwi software pre-installed.

    [updated 3-Jun-21]
    Do NOT power the Kiwi + BBAI combination from the Kiwi DC jack. The common-mode choke on the Kiwi board may not handle the combined current and can burn up. Power from the BBAI USB-C jack instead. The Kiwi board will receive power from the BBAI.

    [original message 10/2019]

    Using a BeagleBone AI with the KiwiSDR board is currently UNDER DEVELOPMENT and UNSUPPORTED.
    Only attempt the following if you have Linux, system/networking admin and electronics skills.
    Use at your own risk. We have NO RESPONSIBILITY if you burn up your BBAI and/or Kiwi due to improper cooling/operation.

    REQUIRED:
    You MUST monitor the BBAI cpu temperature via the Kiwi stats UI or shell commands. Try and keep the temp below 50C.
    You sometimes get weird behavior above 50C I've found even though 50C isn't really that hot.
    Use a 90 mm diameter or larger fan that moves *lots* of air. Point it at end of the board stack with the SMA connectors to maximize BBAI cpu cooling.
    You could wire the fan to the black/red wires of a very short, cutoff USB-A cable that plugs into the BBAI USB back by the sd card slot.
    Do NOT use the Kiwi metal enclosure with its stock 30mm fan. That fan will not move enough air across the cpu heatsink.
    See later posts in this thread for examples of modified enclosures that are reported to work.
    Use a 5V 3A minimum USB-C power supply.

    HARDWARE NOTES:
    BBAI WiFi has not been validated. Use Ethernet instead.
    More optimized cooling has not been finalized.
    e.g. smaller fan, different heatsinks, header risers to increase inter-board spacing, enclosure effects.
    Note that the micro sd card slot is inverted compared to the Beaglebone Black/Green (i.e. flip cards over compared to BBB/G).

    STATUS:
    14-channel mode can be enabled (BBAI only) on admin "mode" tab.
    14 simultaneous kiwirecorder connections can get audio underruns unless running at 1.5 GHz. This is being debugged.
    Running more than 6 WSPR extensions doesn't work as well as first thought. This is being debugged.
    Remember that you can put something like this in a bookmark:
    my_kiwi:8073/?ext=wspr,40m&mute&win2&ext=wspr,30m&mute&win3&ext=wspr,20m&mute etc.

    FIRST TIME SETUP:
    Find Ethernet ip address assigned by your DHCP. Login using ssh/PuTTY as "debian" "temppwd".
    "sudo bash" to get a root shell. With this Debian distro you cannot login as "root" [no password] anymore, i.e. it's more secure.

    Use the instructions at the following webpage to update/upgrade the BBAI software:
    Leave out the use of "sudo" as you are already root.

    Important: Do not install the TI deep learning tools listed at the end of the "update distribution components" section ("install -y ti-tidl mjpg-streamer-opencv-python").

    **Ignore** the sections about WiFi, USB and Cloud9. WiFi has not yet been tested with the Kiwi software.
    ====> https://beagleboard.org/upgrade

    After rebooting from the update login again and from a root shell do:
    cd [goes to /root]
    git clone https://github.com/jks-prv/Beagle_SDR_GPS.git
    cd Beagle_SDR_GPS
    make clean
    make
    make install

    Will take a while (up to 40 minutes) as many packages have to be installed prior to building the Kiwi software.
    Press the return key when prompted to reboot.
    Kiwi server should be running ~45 seconds after reboot.

    After the install/reboot the shortcut aliases in /root/.bashrc are available and also
    tools for monitoring the cpu temperature and tuning the frequency (see "BBAI" section of /root/.bashrc).

    Type "cf1" to set clock freq to 1 GHz from the default 500 MHz.
    Type "ct" to check cpu temp (divide by 1000 for deg C).
    Type "cm" for a continuous freq/temp monitoring.
    Type "ht" for a nice process viewer to see cpu usage.

    XXX Only use "cf15" to run at 1.5 GHz if you have sufficient cooling airflow! XXX
    Monitor your cpu temp carefully!
    PowernumptyWA2ZKDHB9TMCrz3dvp
  • IQ Display of VLF stations no longer stable? [fixed in v1.344]

    Okay, this change is in today's v1.344 update and seems to work. Thanks Glenn for spotting this.
    WA2ZKDHB9TMC
  • IQ Display of VLF stations no longer stable? [fixed in v1.344]

    Wow, I see what's going on. This has been broken since the new (more correct) FPGA register synchronization primitive was added back in August. Basically that change caused the software that sets the 48-bits of the receiver channel NCOs (SDR reception frequency) to fail as follows:

    1) The new primitive takes a few more clock cycles to correctly do its synchronization thing compared to the old method.
    2) The phase width of the receiver NCOs (i.e. not waterfall) was increased from 32 to 48-bits back in 2018 when it was realized this could be done at little cost and result in much more accurate frequency setting resolution of the SDR. E.g. you could now tune to the precise frequency of a VLF station in the presence of GPS clock-correction such that there was never any residual IQ display rotation (ionospheric conditions notwithstanding). There could possibly be some rotation with only a 32-bit NCO phase word. See: http://forum.kiwisdr.com/discussion/comment/5069
    3) Setting the 48-bit value is done in two parts by the software. The most significant 32-bits is transmitted first followed by the least significant 16-bits. Of course there is an intervening register to make sure all 48-bits are updated at the same time as seen by the NCO.
    4) The NOC phase word setting operation needs a synchronizer because a clock domain crossing occurs between the 16 MHz clock of the FPGA e_cpu and the 66 MHz clock of the NCO.
    5) The two phase word writes in e_cpu code occurred too close together such that the second 16-bits lsb write sometimes sent the wrong data if the synchronizer was still busy from the 32-bit write.

    So the fix is to simply increase the delay between the two synchronized writes in software. This exactly accounts for the observed jittery behavior in the IQ display.
    Powernumpty
  • Waterfall filtering? [added in v1.337]

    Today's v1.337 update adds waterfall filtering (averaging). The filtering methods and adjustments parallel those used for the spectrum filtering, although the range of slider values is slightly different based on practical experience. The waterfall and spectrum filtering are independently adjustable.
    PowernumptyHB9TMCG0LUJ