From 556b4c2954e6836e74da339e8273b8277049f442 Mon Sep 17 00:00:00 2001 From: Egor Savkin Date: Thu, 6 Apr 2023 16:43:52 +0800 Subject: [PATCH] Add Booster instructions and fix small issues Signed-off-by: Egor Savkin --- src/SUMMARY.md | 1 + src/build_test_firmware.md | 2 +- src/extra/CONFIG.TXT | 1 + src/extra/booster.json | 16 ++++++ src/extra/booster_template.ods | Bin 0 -> 22687 bytes src/extra/dds_for_booster.py | 39 ++++++++++++++ src/hw/booster.md | 93 ++++++++++++++++++++++++++++++++ src/hw/mcx_ttl.md | 4 +- src/hw/mirny_almazny.md | 4 +- src/hw/stabilizer.md | 4 +- src/img/50ohm_parallel_load.jpg | Bin 0 -> 91531 bytes 11 files changed, 157 insertions(+), 7 deletions(-) create mode 100644 src/extra/CONFIG.TXT create mode 100644 src/extra/booster.json create mode 100644 src/extra/booster_template.ods create mode 100644 src/extra/dds_for_booster.py create mode 100644 src/hw/booster.md create mode 100644 src/img/50ohm_parallel_load.jpg diff --git a/src/SUMMARY.md b/src/SUMMARY.md index f9fb97f..d7f5dd8 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -14,3 +14,4 @@ - [Sinara 6302 Grabber](./hw/grabber.md) - [Sinara 7210 Clocker](./hw/clocker.md) - [Sinara 8452 DSP Stabilizer](./hw/stabilizer.md) + - [Sinara 9805 RF Power Amplifier Booster](./hw/booster.md) diff --git a/src/build_test_firmware.md b/src/build_test_firmware.md index aa44fd1..577fc92 100644 --- a/src/build_test_firmware.md +++ b/src/build_test_firmware.md @@ -54,7 +54,7 @@ artiq_ddb_template -o device_db.py .json nix build -L --impure --expr 'let fl = builtins.getFlake "git+file://"; in (fl.makeArtiqZynqPackage {target="kasli_soc"; variant="[master, standalone, satellite]"; json=;}).kasli_soc-[master, standalone, satellite]-sd' # copy `results/boot.bin` to the SD card # insert SD card to the Kasli-SoC and boot -artiq_coremgmt -D 192.168.1.56 config write -s ip 192.168.1.75 +artiq_coremgmt -D 192.168.1.56 config write -s ip 192.168.1.75 # or just place extra/CONFIG.TXT near the boot.bin on SD card # update firmware artiq_coremgmt config write -f boot result/boot.bin # reboot via power supply diff --git a/src/extra/CONFIG.TXT b/src/extra/CONFIG.TXT new file mode 100644 index 0000000..180275f --- /dev/null +++ b/src/extra/CONFIG.TXT @@ -0,0 +1 @@ +ip=192.168.1.75 diff --git a/src/extra/booster.json b/src/extra/booster.json new file mode 100644 index 0000000..ac8981b --- /dev/null +++ b/src/extra/booster.json @@ -0,0 +1,16 @@ +{ + "target": "kasli", + "min_artiq_version": "7.0", + "variant": "booster", + "hw_rev": "v2.0", + "base": "standalone", + "core_addr": "192.168.1.42", + "peripherals": [ + { + "type": "urukul", + "dds": "ad9910", + "ports": [0, 1], + "clk_sel": 2 + } + ] +} diff --git a/src/extra/booster_template.ods b/src/extra/booster_template.ods new file mode 100644 index 0000000000000000000000000000000000000000..8ecb5d1422c112083437861557a4f80388ec41bb GIT binary patch literal 22687 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 literal 0 HcmV?d00001 diff --git a/src/extra/dds_for_booster.py b/src/extra/dds_for_booster.py new file mode 100644 index 0000000..f144827 --- /dev/null +++ b/src/extra/dds_for_booster.py @@ -0,0 +1,39 @@ +from artiq.experiment import * + +class DDSPhase(EnvExperiment): + def build(self): + self.setattr_device("core") + self.rf0 = self.get_device("urukul0_ch0") # -5dBm for input transform + self.rf1 = self.get_device("urukul0_ch1") # -20dBm + self.rf2 = self.get_device("urukul0_ch2") # -40~dBm for output at 0dB (with external 20db attenuator) + self.rf3 = self.get_device("urukul0_ch3") # -3.18dB for output at 33dB + + @kernel + def run(self): + self.core.reset() + self.rf0.cpld.init() + + self.rf0.init() + self.rf0.set_att(16.) # -5dBm for input transform + + self.rf3.init() + #self.rf3.set_att(14.) # -3.18dBm for 33dBm + self.rf3.set_att(23.) # -8.18dBm? doesnt trip! + + self.rf1.init() + self.rf1.set_att(31.) + + self.rf2.init() + self.rf2.set_att(30.) + + freq = 200 * MHz + + self.rf0.set(freq, phase=0.) + self.rf1.set(freq, phase=0.) + self.rf2.set(freq, phase=0.) + self.rf3.set(freq, phase=0.) + + self.rf0.sw.on() + self.rf1.sw.on() + self.rf2.sw.on() + self.rf3.sw.on() diff --git a/src/hw/booster.md b/src/hw/booster.md new file mode 100644 index 0000000..079661d --- /dev/null +++ b/src/hw/booster.md @@ -0,0 +1,93 @@ +# Sinara 9805 RF Power Amplifier "Booster" + +* [Firmware](https://github.com/quartiq/booster) +* [Documentation](https://quartiq.de/booster/) +* [Wiki](https://github.com/sinara-hw/Booster/wiki) + +## Firmware + +### Flashing + +```shell +git clone git@github.com:quartiq/booster.git +cd booster +nix-shell -p rustup cargo rustc dfu-util +cargo install cargo-binutils +rustup component add llvm-tools-preview +cargo build --release +cargo objcopy -- -O binary booster.bin +# enter dfu mode by either serial terminal or +# press `DFU Bootloader` button while rebooting +dfu-util -a 0 -s 0x08000000:leave --download booster.bin +``` + +### Basic setup via USB + +1. `nix-shell -p cutecom mosquitto appimage-run` +2. Install and run `cutecom`: `nix-shell -p cutecom` +3. Create mosquitto config `mosquitto.conf` with your bound address: + ``` + bind_address 192.168.1.123 + allow_anonymous true + ``` +4. `mosquitto -c mosquitto.conf -d` +5. Connect to the Booster via `/dev/ttyACMX` port, baud 9600 +6. Send `help` command to check if it works +7. Enter commands (change details if necessary): + ```shell + write broker-address 192.168.1.123 + # only if you need static IP address + write gateway 192.168.1.1 + write ip-address 192.168.1.142 + write netmask 255.255.255.0 + # apply changes and wait until it fully rebooted + reset + ``` +8. Check the Booster connects to your broker. +9. Download AppImage from [MQTT Explorer](https://mqtt-explorer.com/) +10. Run it with `appimage-run /path/to/MQTT-Explorer-XXX.AppImage` +11. Connect to your MQTT broker + +## Calibration + +1. Assemble Kasli with one Urukul, build and flash firmware for it with [booster.json](../extra/booster.json) +2. Run [dds_for_booster.py](../extra/dds_for_booster.py) experiment once +3. Attach parallel 50 Ohm load to the oscilloscope, as shown on the picture: ![](../img/50ohm_parallel_load.jpg), +4. Configure oscilloscope for 1M Ohm impedance +5. Attach attenuator to the Urukul's RF2 +6. `cd py/` +7. Enable channels: `python -m booster --broker 192.168.1.123 --prefix dt/sinara/booster/xx-xx-xx-xx-xx-xx --channel N tune=0.1` +8. Use [online calculator](https://www.analog.com/en/design-center/interactive-design-tools/dbconvert.html) for Volts to dBm conversion +9. Using [booster_template](../extra/booster_template.ods) fill in `y0`, `y1`, `m`, `c`, values using instructions below +10. Update settings with the adjusted values +11. Save settings with `python -m booster --broker 192.168.1.123 --prefix dt/sinara/booster/xx-xx-xx-xx-xx-xx --channel N save` +12. Reboot and check settings are applied + +### Input power + +1. Connect Urukul's output (see booster template for exact ports) to the oscilloscope with load +2. Measure it's RMS, convert to dBm, put it to the measured cell +3. Connect Urukul's output to the Booster's input +4. Get the input value from telemetry (see booster template for exact path) +5. Do steps 1-4 for second Urukul's output +6. Fill in `slope` and `offset` from settings +7. Do steps 1-6 for every channel + +_Note: default setting and Urukul's measured values are usually the same across channels, so you can +extrapolate them for all channels._ + + +### Output and reflected power + +1. Connect Urukul's output (see booster template for exact ports) to the Booster's input +2. Connect Booster's output to the oscilloscope with load +3. Measure it's RMS, convert to dBm, put it to the measured cell +4. Get the output value from telemetry (see booster template for exact path) +5. Disconnect the Booster's output +6. Get the reflected value from telemetry +7. Do steps 1-6 for second Urukul's output +8. Fill in `slope` and `offset` from settings for output and reflected curves +9. Do steps 1-8 for every channel + +_Note: default setting values are usually the same across channels, so you can extrapolate them for all channels._ + diff --git a/src/hw/mcx_ttl.md b/src/hw/mcx_ttl.md index f765799..b9e679c 100644 --- a/src/hw/mcx_ttl.md +++ b/src/hw/mcx_ttl.md @@ -1,7 +1,7 @@ # Sinara 2238 MCX TTL card -[Wiki](https://github.com/sinara-hw/DIO_MCX/wiki) -[Datasheet](https://m-labs.hk/docs/sinara-datasheets/2238.pdf) +* [Wiki](https://github.com/sinara-hw/DIO_MCX/wiki) +* [Datasheet](https://m-labs.hk/docs/sinara-datasheets/2238.pdf) # JSON diff --git a/src/hw/mirny_almazny.md b/src/hw/mirny_almazny.md index 127fd1b..9032719 100644 --- a/src/hw/mirny_almazny.md +++ b/src/hw/mirny_almazny.md @@ -1,7 +1,7 @@ # Sinara 4456 synthesizer Mirny / Sinara 4457 Almazny Mezzanine card -[Wiki Mirny](https://github.com/sinara-hw/mirny/wiki) -[Wiki Almazny](https://github.com/sinara-hw/Almazny/wiki) +* [Wiki Mirny](https://github.com/sinara-hw/mirny/wiki) +* [Wiki Almazny](https://github.com/sinara-hw/Almazny/wiki) ## JSON diff --git a/src/hw/stabilizer.md b/src/hw/stabilizer.md index 2107ad3..b7e96a6 100644 --- a/src/hw/stabilizer.md +++ b/src/hw/stabilizer.md @@ -1,7 +1,7 @@ # Sinara 8452 DSP Stabilizer -[Wiki](https://github.com/sinara-hw/Stabilizer/wiki) -[QUARTIQ Manual](https://quartiq.de/stabilizer/) +* [Wiki](https://github.com/sinara-hw/Stabilizer/wiki) +* [QUARTIQ Manual](https://quartiq.de/stabilizer/) ## JSON diff --git a/src/img/50ohm_parallel_load.jpg b/src/img/50ohm_parallel_load.jpg new file mode 100644 index 0000000000000000000000000000000000000000..15b720f408ae6e05111277c5ea08dee74c497330 GIT binary patch literal 91531 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∾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 literal 0 HcmV?d00001