This is a fork of the firmware of Pluto+ combined with datvplutofrm from F5OEO/F5UII
Original repositories are: https://github.com/plutoplus/plutoplus https://github.com/F5OEO/datvplutofrm
This is a software-defined radio platform that supports DVB transmission, it also supports Gigabit Ethernet and Micro SD card.
The design inherited from the well-known ADI ADALM-PLUTO with several improvements.
[TOC]
Feature | Details |
---|---|
SOC | Zynq7zc010 with 28k LUTs |
ADC/DAC | AD9363(Can hack to AD9361 or AD9364) with 2 Transmit, 2 Receive channel |
RF Range | 70MHZ~6GHZ |
Ref Clock | VCTCXO 40MHZ 0.5ppm, with external clock input |
RAM | 512MB |
FLASH | 32MB, SD Card |
Connections | USB:2.0 support OTG |
Ethernet:1Gb | |
DC IN | 5V +-0.5V-2A microUSB |
Pluto+ has full schematics open sourced. You can find this in sch folder.
** PLEASE NOTE ** This software is experimental and I accept no liability for any damage that may occur to your Plutoplus by using it
The firmware/ folder contains pre-compiled binaries based on pluto firmware v0.33 and the latest datvplutofrm f5uii-master branch which I have successfully loaded on my Pluto+ (with minimal testing). It was built using Ubuntu 22.04.
Simply download the pluto.frm file and copy to the PlutoSDR drive on your computer, then eject the drive (the usual Pluto firmware upgrade method). LED1 (green) will flash rapidly for around 10 minutes and then the Plutoplus will reboot into the new firmware.
If you device is not responding anymore, you have to apply DFU procedure to unbrick it.
-
Download the firmware and unzip it.
-
Install dfu utility
-
Make Device enter DFU mode. There is a howto section below on the details steps.
-
Run DFU utility with the following command:
sudo dfu-util -a boot.dfu -D ./boot.dfu sudo dfu-util -a firmware.dfu -D ./pluto.dfu
-
Install pre-requisite components
sudo apt-get install git build-essential ccache device-tree-compiler dfu-util fakeroot help2man libncurses5 libncurses5-dev libtinfo5 libtinfo-dev libssl-dev mtools rsync u-boot-tools bc python cpio zip unzip file wget flex bison libidn11-dev
-
Install Vivado 2019.1 from https://www.xilinx.com/support/download.html. Make sure that you install the correct version of Vivado, the current supported version is 2019.1
-
Clone this repo
-
Download the source code:
cd plutoplusdvb git submodule update --init --recursive
-
Run the patch.sh script to apply diffs to each submodule
scripts/patch.sh
If any patches fail to apply, please let me know as compiling will likely fail
-
Configure paths and add DVB support (assumes Vivado is installed in default location of /tools/Vivado):
source datvplutofrm/sourceme.ggm
-
Build the code:
cd ..\plutosdr-fw make
-
Once complete, firmware is located in build directory
In the event of any errors, please search the internet on PlutoSDR firmware build. It is identical.
To update your repo to the latest version, you must first revert the patches, run the update and then apply the latest patches as follows:
scripts/revert.sh
git pull
git submodule update --recursive
scripts/apply.sh
There is description on PCB on the jumpers.
Please note that all IO levels are 1.8V.
- When using the official ADI-PlutoSDR firmware, please connect to URST-MI052.
- When using Pluto+ firmware and need to support Ethernet, please connect URST-MIO46
- When using SD card to boot, please connect SD-H to 1V8
- When using JTAG to debug, please connect JTAG# to GND
- Please connect EXCLK to GND when using external reference clock input
PTT drives optocouplers through GPIO0 (MI00), which requires an external relay or control circuit.
- Remove the screws and open up the device.
- Short URST with MIO52, see the Jumper images for details.
- Press DFU while power the device
You can connect a cable to input an external high-precision reference clock for AD9363 through the IPEX interface. The main level should not exceed 3.3V, and the EXCLK jumper needs to be connected to GND to turn off the built-in clock. (Check Jumper image for details)
The frequency of the 40M clock can be fine-tuned by adjusting the adjustable resistor next to the VCTCXO. You need to have a reference signal source and frequency meter when adjusting.
Connect SD-H jumper to 1V8. Check Jumper image for details. We don't have SD image yet. And we will support it later.