From 1e663dad9ea457c618b7942179055319fcfcdfe4 Mon Sep 17 00:00:00 2001 From: "Matthias P. Braendli" Date: Thu, 13 Apr 2023 16:26:55 +0200 Subject: Assemble TX FE and update comments --- README-4m.md | 14 ++++++++++---- kicad-dart-70/ant_switch.kicad_sch | 8 ++++++-- kicad-dart-70/baseband.kicad_sch | 4 ++-- kicad-dart-70/control.kicad_sch | 2 +- kicad-dart-70/frontend_70.kicad_sch | 22 ++++++++++++++++------ kicad-dart-70/kicad-dart-70.kicad_prl | 2 +- kicad-dart-70/kicad-dart-70.kicad_sch | 2 +- kicad-dart-70/pa_70.kicad_sch | 2 +- kicad-dart-70/usbaudio.kicad_sch | 2 +- sw/dart-70/src/main.rs | 2 +- sw/dart-70/src/state.rs | 2 +- 11 files changed, 41 insertions(+), 21 deletions(-) diff --git a/README-4m.md b/README-4m.md index e6a9cb9..bcf10fa 100644 --- a/README-4m.md +++ b/README-4m.md @@ -45,13 +45,19 @@ Transmit gain: ## TODO +* Measure driver output +* Measure antenna switch insertion loss +* Fix AGC * Firmware: - * Adapt clk settings for 11MHz IF * Handle VOX PTT * Implement CW macros -* Add silkscreen info for headers, pinouts and testpoints -* Clearance for ethernet magnetics -* Placement and clearance for front connectors + +## Rev. 0 Insights + +* TX Frontend: + * The amplifier is actually frequency selective enough that we can entirely + drop the input filter. + * Instead, we want a trim cap for C120, slightly smaller than 22pF ## Notes diff --git a/kicad-dart-70/ant_switch.kicad_sch b/kicad-dart-70/ant_switch.kicad_sch index 8a688f4..1e0f9fa 100644 --- a/kicad-dart-70/ant_switch.kicad_sch +++ b/kicad-dart-70/ant_switch.kicad_sch @@ -6,7 +6,7 @@ (title_block (title "DART-70 TRX") - (date "2023-04-07") + (date "2023-04-10") (rev "1") (company "HB9EGM") (comment 1 "A 4m Band SSB/CW Transceiver") @@ -1015,12 +1015,16 @@ (uuid f971c761-1290-4687-adad-e0546cf92762) ) + (text "Rev. 0 Assembled\nR165, R166 = 160R\nR170 = 91R" (at 85.09 149.86 0) + (effects (font (size 1 1)) (justify left bottom)) + (uuid 55d0830d-42f7-443f-8d32-61d4940b3031) + ) (text "Offer either +V on TX or +V on RX\non antenna connector to control external\npreamp or PA." (at 220.98 52.07 0) (effects (font (size 1.27 1.27)) (justify left bottom)) (uuid 69907678-12f7-4380-91bd-fa3caa6922b6) ) - (text "First try without fitting neither D1 nor D2, and then see if isolation is enough.\n\n+VTX 9V: Q1A conducting, V_{PIN}=0V, D4 blocking, D2 conducting, D1 blocking, D3 conducting. Antenna connected to TX.\n+VTX 0V: Q1B conducting, V_{PIN}=9V, D4 conducting, D2 blocking, D1 conducting, D3 blocking. Antenna connected to RX.\n\nBAT18: approx 1pF with 2V reverse voltage; 0.5Ohm at 10mA forward current, 0.8V drop.\n\n(9V - 5V - 0.8V) / 8mA = 400 Ohm" + (text "First try without fitting neither D24 nor D25, and then see if isolation is enough.\n\n+VTX 9V: Q31A conducting, V_{PIN} low, D26 blocking, D24 conducting, D25 blocking, D27 conducting. Antenna connected to TX.\n+VTX 0V: Q31B conducting, V_{PIN} high, D26 conducting, D24 blocking, D25 conducting, D27 blocking. Antenna connected to RX.\n\nBAT18: approx 1pF with 2V reverse voltage; 0.5Ohm at 10mA forward current, 0.8V drop.\n\n(9V - 5V - 0.8V) / 8mA = 400 Ohm" (at 85.09 127 0) (effects (font (size 1.27 1.27)) (justify left bottom)) (uuid d437a213-62ef-4c36-8319-8e53f14fca2d) diff --git a/kicad-dart-70/baseband.kicad_sch b/kicad-dart-70/baseband.kicad_sch index b1292f5..e28eba5 100644 --- a/kicad-dart-70/baseband.kicad_sch +++ b/kicad-dart-70/baseband.kicad_sch @@ -6,7 +6,7 @@ (title_block (title "DART-70 TRX") - (date "2023-04-07") + (date "2023-04-10") (rev "1") (company "HB9EGM") (comment 1 "A 4m Band SSB/CW Transceiver") @@ -8451,7 +8451,7 @@ (property "Reference" "C48" (at 140.97 198.1199 0) (effects (font (size 1.27 1.27)) (justify left)) ) - (property "Value" "4.7uF" (at 140.97 200.6599 0) + (property "Value" "2.2uF" (at 140.97 200.6599 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Footprint" "Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder" (at 138.1252 195.58 0) diff --git a/kicad-dart-70/control.kicad_sch b/kicad-dart-70/control.kicad_sch index 030bd35..18888e6 100644 --- a/kicad-dart-70/control.kicad_sch +++ b/kicad-dart-70/control.kicad_sch @@ -6,7 +6,7 @@ (title_block (title "DART-70 TRX") - (date "2023-04-07") + (date "2023-04-10") (rev "1") (company "HB9EGM") (comment 1 "A 4m Band SSB/CW Transceiver") diff --git a/kicad-dart-70/frontend_70.kicad_sch b/kicad-dart-70/frontend_70.kicad_sch index 41d4d5a..b863106 100644 --- a/kicad-dart-70/frontend_70.kicad_sch +++ b/kicad-dart-70/frontend_70.kicad_sch @@ -6,7 +6,7 @@ (title_block (title "DART-70 TRX") - (date "2023-04-07") + (date "2023-04-10") (rev "1") (company "HB9EGM") (comment 1 "A 4m Band SSB/CW Transceiver") @@ -2127,6 +2127,11 @@ (effects (font (size 1.27 1.27)) (justify left bottom)) (uuid 260b3d6d-8cd9-4800-8937-c0409e2ee02d) ) + (text "Rev.0 assembled with\nC133 shorted, no output filter\n" + (at 264.16 163.83 0) + (effects (font (size 0.8 0.8)) (justify left bottom)) + (uuid 26bb5a1d-db2c-4a6b-9eba-d7e2ac5d1f96) + ) (text "Calculated values for\n3rd order Chebychev, shunt first\nPassband 66MHz .. 74MHz, Bandpass Ripple 0.2dB:\n\nshunt 488pF 10nH\nseries 4.7pF 1150uH (12T on 8mm former, 12mm length, 41cm wire length)\n\nThis was too low in frequency" (at 23.495 96.52 0) (effects (font (size 1 1)) (justify left bottom)) @@ -2140,9 +2145,9 @@ (effects (font (size 1.27 1.27)) (justify left bottom)) (uuid 49280407-40ca-40ad-b550-c8e0a5ba5bec) ) - (text "TODO\nfind bias point for BSV52\n aim for I_{C} = 10mA" - (at 88.9 194.31 0) - (effects (font (size 2 2)) (justify left bottom)) + (text "Bias point for BSV52\n aim for I_{C} = 10mA\n with R135=4.7k, measure 0.45V V_{E}, I_{C} = 37mA\n with R135=5.6k, same\nLeft 5.6k\n " + (at 129.54 180.975 0) + (effects (font (size 1.2 1.2)) (justify left bottom)) (uuid 4c91f99c-b34d-4969-97d5-5270c851233c) ) (text "http://w7zoi.net/lna50.pdf\n\nChange R_{B} to have 4V at top gate.\n\nDecrease R_{S} to have I_{D} around 5 to 6 mA.\nTry 68 Ohm." @@ -2164,6 +2169,11 @@ (effects (font (size 1.27 1.27)) (justify left bottom)) (uuid a30cddd0-0438-4b2d-9649-32a0ca0524d8) ) + (text "Rev. 0\nassembled\nC98, C102 = 33pF\nC97, C104 = 5pF\nC100 = 4pF\nMeasured -6dB at 70MHz with LQW inductors.\nThen used 5T air coils on 6mm former. Oscillation at 76MHz due to L36.\nReplaced L36 by BLM 0603 ferrite.\nBodged in a JZ trim cap instead of C120, tune to 70MHz" + (at 53.975 184.785 0) + (effects (font (size 1 1)) (justify left bottom)) + (uuid aa2e1f3c-d617-48f8-9213-95c523ebe363) + ) (text "0.1V" (at 201.93 151.13 0) (effects (font (size 1.27 1.27)) (justify left bottom)) (uuid b4920cd9-e2c8-4eb6-ae7f-eeaebfb2a089) @@ -5624,10 +5634,10 @@ (symbol (lib_id "Device:R") (at 170.18 154.94 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (fields_autoplaced) (uuid ea787026-7b61-4bb4-bd75-934472c94939) - (property "Reference" "R130" (at 172.72 153.6699 0) + (property "Reference" "R130" (at 172.72 154.305 0) (effects (font (size 1.27 1.27)) (justify right)) ) - (property "Value" "DNF" (at 172.72 156.2099 0) + (property "Value" "3M" (at 172.72 156.845 0) (effects (font (size 1.27 1.27)) (justify right)) ) (property "Footprint" "Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder" (at 171.958 154.94 90) diff --git a/kicad-dart-70/kicad-dart-70.kicad_prl b/kicad-dart-70/kicad-dart-70.kicad_prl index 871f084..5a85b3c 100644 --- a/kicad-dart-70/kicad-dart-70.kicad_prl +++ b/kicad-dart-70/kicad-dart-70.kicad_prl @@ -1,6 +1,6 @@ { "board": { - "active_layer": 0, + "active_layer": 37, "active_layer_preset": "", "auto_track_width": true, "hidden_netclasses": [], diff --git a/kicad-dart-70/kicad-dart-70.kicad_sch b/kicad-dart-70/kicad-dart-70.kicad_sch index ec9fad0..d809b80 100644 --- a/kicad-dart-70/kicad-dart-70.kicad_sch +++ b/kicad-dart-70/kicad-dart-70.kicad_sch @@ -6,7 +6,7 @@ (title_block (title "DART-70 TRX") - (date "2023-04-07") + (date "2023-04-10") (rev "1") (company "HB9EGM") (comment 1 "A 4m Band SSB/CW Transceiver") diff --git a/kicad-dart-70/pa_70.kicad_sch b/kicad-dart-70/pa_70.kicad_sch index c689133..6659232 100644 --- a/kicad-dart-70/pa_70.kicad_sch +++ b/kicad-dart-70/pa_70.kicad_sch @@ -6,7 +6,7 @@ (title_block (title "DART-70 TRX") - (date "2023-04-07") + (date "2023-04-10") (rev "1") (company "HB9EGM") (comment 1 "A 4m Band SSB/CW Transceiver") diff --git a/kicad-dart-70/usbaudio.kicad_sch b/kicad-dart-70/usbaudio.kicad_sch index 465604a..ab80f7d 100644 --- a/kicad-dart-70/usbaudio.kicad_sch +++ b/kicad-dart-70/usbaudio.kicad_sch @@ -6,7 +6,7 @@ (title_block (title "DART-70 TRX") - (date "2023-04-07") + (date "2023-04-10") (rev "1") (company "HB9EGM") (comment 1 "A 4m Band SSB/CW Transceiver") diff --git a/sw/dart-70/src/main.rs b/sw/dart-70/src/main.rs index 7d6a789..77f6044 100644 --- a/sw/dart-70/src/main.rs +++ b/sw/dart-70/src/main.rs @@ -260,7 +260,7 @@ fn main() -> ! { let encoder_count : u16 = qei.count(); if encoder_count != last_encoder_count { - let delta = encoder_count.wrapping_sub(last_encoder_count); + let delta = last_encoder_count.wrapping_sub(encoder_count); let delta = if delta > 0x7FFF { delta as i32 - 0x10000 } else { delta as i32 }; let require_bfo_update = cortex_m::interrupt::free(|_cs| { diff --git a/sw/dart-70/src/state.rs b/sw/dart-70/src/state.rs index 38db150..c38f75d 100644 --- a/sw/dart-70/src/state.rs +++ b/sw/dart-70/src/state.rs @@ -1,7 +1,7 @@ pub const VHF_BAND_EDGE : u32 = 70_000_000; pub const VHF_INITIAL_VFO : u32 = 70_300_000; // Values below are measured with the assembled XTAL filter -pub const XTAL_FILT_FREQ : u32 = 11_057_510; +pub const XTAL_FILT_FREQ : u32 = 11_057_500; pub const BFO_LSB : u32 = XTAL_FILT_FREQ + 1_400; pub const BFO_USB : u32 = XTAL_FILT_FREQ - 1_400; pub const BFO_CW : u32 = XTAL_FILT_FREQ - 1_400; -- cgit v1.2.3