Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

71 Commits

Repository files navigation

Measurements

Clock Skew Synchronization

Short Term (Startup) Clock Skew Synchronization

ResultSetupDescription
soft1, cap1, osc2, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, mean, caps, 20s
soft1, cap1, osc1, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, mean, caps, 5s
soft1, cap0, osc2, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, mean, 20s
soft1, cap0, osc1, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, mean, 5s
soft1, cap1, osc2, net2, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, mean, caps, 20s
soft13, cap1, osc2, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, mean, pitch 22, caps, 20s
soft2, cap0, osc2, net1, mcu1, func[1-4]-1, proAn[1-4]-1progressive mean, caps, 20s
soft2, cap0, osc1, net1, mcu1, func[1-4]-1, proAn[1-4]-1progressive mean, caps, 5s
soft2, cap0, osc2, net1, mcu1, func[1-4]-1, proAn[1-4]-1progressive mean, 20s
soft2, cap0, osc1, net1, mcu1, func[1-4]-1, proAn[1-4]-1progressive mean, 5s
soft3, cap1, osc2, net1, mcu1, func[1-4]-1, proAn[1-4]-1raw observation, caps, 20s
soft3, cap0, osc2, net1, mcu1, func[1-4]-1, proAn[1-4]-1raw observation, 20s
soft3, soft4 (particle 4), cap0, osc3, net1, mcu1, func[1-4]-1, proAn[1-4]-1particle 4 having linear regression, raw observation otherwise, 46s
soft4 cap0, osc4, net1, mcu1, func[1-4]-1, proAn[1-4]-1linear regression, overshooting, 98s, probe An. 3 and An. 4 mistakenly swapped
soft18 cap0, osc15, net1, mcu1, func[1-4]-1, proAn[1-4]-1linear regression, overshooting, 50s, pre-filled fifo
soft17 cap0, osc15, net1, mcu1, func[1-4]-1, proAn[1-4]-1linear regression, overshooting, 50s, empty fifo
soft17 cap0, osc16, net1, mcu1, func[1-4]-1, proAn[1-4]-1linear regression, overshooting, 89s, empty fifo
soft19 at address (2-4,1) otherwise soft16, cap0, osc16, net1, mcu1, func[1-4]-1, proAn[1-4]-1linear regression, overshooting, 89s, pre-filled fifo, fifo 40, outlier: 5*sigma
soft19 at address (2-4,1) otherwise soft16, cap0, osc16, net1, mcu1, func[1-4]-1, proAn[1-4]-1linear regression, overshooting, 89s, pre-filled fifo, fifo 40, outlier: 10*sigma
soft5 cap0, osc2, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, mean without outlier 2sigma, 20s
VideoSetupDescription
sync-method-mean-fifo40-pitch16soft10, mean, fifo 40, pitch 16
sync-method-mean-fifo8-pitch16soft10, mean, fifo 8, pitch 16
sync-method-mean-without-outlier-2sigma-fifo15-pitch16soft10, mean without outlier, 2*σ , fifo 15, pitch 16outlier: values beyond µ+/-f*σ are not considered when averaging
sync-method-mean-without-outlier-2sigma-fifo40-pitch-20soft10, mean without outlier, 2*σ, fifo 40, pitch 20outlier: values beyond µ+/-f*σ are not considered when averaging
sync-method-mean-without-outlier-2sigma-fifo40-pitch16soft10, mean without outlier, 2*σ, fifo 40, pitch 16outlier: values beyond µ+/-f*σ are not considered when averaging
sync-method-mean-without-marked-outlier-2sigma-fifo40-pitch0soft10, mean without marked outlier, 2 sigma, fifo 40, pitch 0marked outlier: marked when value enters the FiFo according to the current values in FiFo
sync-method-progressive-mean-pitch16soft10, progressive mean 50%/50%, pitch 16new = (old + new) / 2
sync-method-raw-observation-no-smoothing-pitch12soft10, no smoothing, pitch 12observed value is new value without any averaging
sync-method-linear-regression-least-square-fifo40-pitch0soft10, linear regression, fifo 40, pitch 0overshooting, outliers get too much weight
time-sync-sync-method-mean-fifo4-in-phase-shifting-pitch16soft10, mean, fifo 4, pitch 16, in phase shiftinglocal time ISR in phase shifting: 1st impl. approach

Long Term Clock Skew Synchronization

ResultSetupDescription
soft1, cap1, osc5, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, pitch 12, mean, caps, 2s
soft1, cap0, osc5, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, pitch 12, mean, 2s
soft5, cap0, osc5, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, pitch 12, mean, outlier 2sigma, 2s
soft6, cap1, osc5, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, pitch 16, mean, caps, 2s
soft7, cap1, osc5, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, pitch 20, mean, caps, 2s
soft13, cap1, osc7, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, pitch 22, mean, caps, 2s
soft8, cap1, osc5, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, pitch 24, mean, caps, 2s
soft9, cap1, osc5, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, pitch 28, mean, caps, 2s
soft15 node (1,1) - soft16 otherwise, cap1, osc19, net1, mcu1, func[1-4]-1, proAn[1-4]-1fifo 4, mean, oscillating OSCCAL, caps, 50s

Jitter Measurements

ResultSetupDescription
proAn1-2, soft11, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (2,1), pitch 0
proAn1-3, soft11, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (3,1), pitch 0
proAn1-4, soft11, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (4,1), pitch 0
proAn1-5, soft11, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (5,1), pitch 0
proAn1-6, soft11, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (6,1), pitch 0
proAn1-7, soft11, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (7,1), pitch 0
proAn1-8, soft11, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (8,1), pitch 0
proAn1-9, soft11, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (9,1), pitch 0
proAn1-10, soft11, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (10,1), pitch 0
proAn1-11, soft11, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (11,1), pitch 0
proAn1-12, soft11, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (12,1), pitch 0
proAn1-12, soft11, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (13,1), , pitch 0, long term
proAn1-2, soft12, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (1,1), pitch 18
proAn1-3, soft12, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (2,1), pitch 18
proAn1-4, soft12, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (3,1), pitch 18
proAn1-5, soft12, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (4,1), pitch 18
proAn1-6, soft12, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (5,1), pitch 18
proAn1-7, soft12, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (6,1), pitch 18
proAn1-8, soft12, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (7,1), pitch 18
proAn1-9, soft12, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (8,1), pitch 18
proAn1-10, soft12, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (9,1), pitch 18
proAn1-11, soft12, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (10,1), pitch 18
proAn1-12, soft12, cap1, osc6, net1, mcu1, hist1last time PDU falling edge jitter histogram, node (11,1), pitch 18
proAn1-13, soft12, cap0, osc8, net0, mcu1, hist1RC clock jitter after 40µ, (1x1) network
proAn1-13, soft12, cap1, osc8, net0, mcu1, hist1RC clock jitter after 40µs, (1x1) network, caps
proAn1-13, soft12, cap1, osc8, net1, mcu1, hist1RC clock jitter after 40µs, (1x12) network, caps
proAn1-13, soft17, cap0, osc17, net0, mcu1, hist1RC clock jitter after 40µs, (1x1) network
  • Expected discretization step of particle (12,1): +/- 63.5 * (1/8284000) = +/- 7.665µs
  • A pitch of 20-22 seems reasonable:
    • according package length distribution - 20
    • according trend 22
    • 16 too low, 28 too high

In-Phase Shifting

ResultSetupDescription
soft14, caps1, osc9, proAn[1-4]-14, proDig[4-15-1], net1, mcu1TODO

Actuation

ResultSetupDescription
soft14, caps1, osc11, proAn4-2, net1, mcu2simulataneous heat range command of both wires, Vcc at last particle, particles (7-12,1) crashed due to glitch
soft16, caps1, osc12, proDig[4-14]-2, proAn[1-4]-15, net1, mcu2experiment 1: simulataneous heat range command (left wire), switch from Vcc to GND at transmitter's actuator line
soft16, caps1, osc12, proDig[4-14]-2, proAn[1-4]-15, net1, mcu2experiment 1: simulataneous heat range command (left wire), switch from Vcc to GND at transmitter's actuator line
soft16, caps1, osc12, proDig[4-14]-2, proAn[1-4]-15, net1, mcu2experiment 1: simulataneous heat range command (left wire), switch from Vcc to GND at transmitter's actuator line
soft16, caps1, osc12, proDig[4-14]-2, proAn[1-4]-15, net1, mcu2experiment 1: simulataneous heat range command (left wire), switch from Vcc to GND at transmitter's actuator line
soft16, caps1, osc12, proDig[4-14]-2, proAn[1-4]-15, net1, mcu2experiment 1: simulataneous heat range command (left wire), switch from Vcc to GND at transmitter's actuator line
soft16, caps1, osc12, proDig[4-14]-2, proAn[1-4]-15, net1, mcu2experiment 1: simulataneous heat range command (left wire), switch from Vcc to GND at transmitter's actuator line
soft16, caps1, osc13, proDig[4-14]-2, proAn[1-4]-15, net1, mcu2experiment 1: simulataneous heat range command (left wire), switch from Vcc to GND at transmitter's actuator line
soft16, caps1, osc13, proDig[4-14]-2, proAn[1-4]-15, net1, mcu2experiment 1: simulataneous heat range command (left wire), switch from Vcc to GND at transmitter's actuator line

Boot Delay Measurement

ResultSetupDescription
soft16, caps0, osc14, proAn[1,2]-16, proDig[1-8]-16, net1, mcu2showing Vcc drop vs. boot delay

Discretization Measurements

ResultSetupDescription
soft16, caps0, osc18, proAn[1-4]-17, net1, mcu2showing discretization as trend, long term measurement with less sync pkg. to omit outlier in measurement

Setup Configurations

Particle Speed (internal RC osc.)

Particle IDApprox. Frequency [MHz]
18.178
28.180
38.191
48.211
58.241
68.254
78.279
88.284
98.386
108.303
118.355
128.382
  • Measurements taken with particles having room temperature.
  • Measured after powered 30sec.
  • Averaged 5sec (~7000 samples).
  • Measurements could be reproduced in a 2nd run.
  • Frequency is voltage dependent; values are understood to be "relative".
  • Vcc approx. 5v, see power supply of setup mcu1.

Order Setup in Measurements

Setup IDNetwork DimensionOrder P.IDAddressDetails
net0(1x1){6}{(1,1)}1st node only
net1(12x1){6, 3, 9, 1, 7, 4, 11, 2, 10, 5, 12, 8}{(1,1), (2,1), (3,1), (4,1), (5,1), (6,1), (7,1), (8,1), (9,1), (10,1), (11,1), (12,1)}order having good discrepancy in between subsequent particles' frequency
net2(12x1){6, 2, 10, 1, 8, 4, 12, 3, 9, 7, 11, 5}{(1,1), (2,1), (3,1), (4,1), (5,1), (6,1), (7,1), (8,1), (9,1), (10,1), (11,1), (12,1)}same as 1 but less discrepancy

Oscilloscope Measurement Notes

Setup IDCapture Duration[Sa/s]TriggerPre-Trigger [s]Time/Div.
osc12.5s - 7.5s5MAn. 1, 3.8v, rising local time ISR5500ms
osc20.7s - 20.7s5MAn. 1, 3.8v, rising local time ISR10.72s
osc31s - 46s2MAn. 1, 3.8v, rising local time ISR215s
osc4- 98s1MAn. 1, 3.8v, rising local time ISR4810s
osc50s - 2s5MAn. 1, 3.8v, rising local time ISR0100ms
osc67.8ms - 7.9ms10GAn. 1, 2.5v, 1st falling edge of transmission~7.87ms10µs
osc7-1s - 1s5MAn. 1, 3.8v, rising local time ISR0200ms
osc839.0µs - 40.1µs20GAn. 1, 2.5v, falling40µ20ns
osc9-50ms - 20ms5MDigital 4, TTL, falling010ms
osc10-25s - 25s2MAn. 1, 3.8v, rising local time ISR05s
osc11-1s - 1s2Mroll mode,-200ms
osc12-100ms - 100ms5MAn. 1, 2.549v, falling020ms
osc13-10ms - 10ms5MAn. 1, 2.549v, falling02ms
osc14-10ms - 40ms20MAn. 1, 2.0V, rising15m5ms
osc15- 49.7s1MAn. 1, 3.8v, rising local time ISR722.8m5s
osc16- 98s1MAn. 1, 3.8v, rising local time ISR010s
osc1740.16µs - 40.26µs20GAn. 1, 2.5v, falling40.165µ10ns
osc18-1s - 1s5MAn. 1, 3.8v, falling0200ms
  • Oscilloscope: Keysight MSO-S 354A Mixed Signal Oscilloscope 2.5GHz 20GSa/s 10-bit ADC infiniium S-Series
Setup IDFile NameProbe SetupNotes
file1all-12-ttclocks-plus-div16.setproDig[1-12] time tracking particle (1-12,1), proDig[13-15] pre-scaled (16) time tracking particle (1-4,1), net1all 12 local time tracking interval plus 4 times with prescaler 16 at particles (1-4,1)
file3fx-trend-20s.setproAn[1-4] time tracking particle ({1,4,7,12},1), net1local time tradking clock frequency trend, highlighting sync. at start, 20 sec., triggers an power on, single shot
file4fx-trend-46s.setproAn[1-4] time tracking particle ({1,4,7,12},1), net1local time tradking clock frequency trend, highlighting sync. at start, 46 sec., triggers an power on, single shot
file5fx-trend-5s.setproAn[1-4] time tracking particle ({1,4,7,12},1), net1local time tradking clock frequency trend, highlighting sync. at start, 5 sec., triggers an power on, single shot
file6fx-trend-98s.setproAn[1-4] time tracking particle ({1,4,7,12},1), net1local time tradking clock frequency trend, highlighting sync. at start, 98 sec, triggers an power on, single shot
file7fx-trend_long-term-2s.setproAn[1-4] time tracking particle ({1,4,7,12},1), net1local time tracking clock freuqency trend, highlighting long term sync., 2sec, triggers consecutive
file8fx-trend.setproAn[1-4] time tracking particle ({1,4,7,12},1), net1
file9jitter-clk-after-40us.setproAn[1-4] CLKOUT ({1,4,7,12},1), net1histrogram showing the cummulated (~8MHz= RC's clock jitter at 40µs after trigger
file10period-16x.setproAn[1-4] CLKOUT ({1,4,7,12},1), net1
file11rx-last-falling-edge-histogram.setproAn1 rx north of particle ({3-12},1), net1highlighting normal distribution of package duration and integer discretization among syncrhonizing particles
file12fx-trend-oscillating-osccal-step1-minmaxoffset8-50s.setproAn[1-4] time tracking particle ({1,4,7,12},1), netlong term sync. with oscillating MCU frequency of particle (1,1), highlichting automatic clock sekew adjustment
file13actuation-range-all-left-net1-caps1-trigger-particle2-left-actuator-2msdiv.setproAn[1-4] left actuator linehighlighting actuation start inaccuracy, 2ms div
file14actuation-range-all-left-net1-caps1-trigger-particle2-left-actuator-20msdiv.setproAn[1-4] left actuator linehighlighting actuation start inaccuracy, 20ms div
file15boot-delay-until-discovery-3x3-network.setproAn[1,3]-16, proDig[1-8]-16showing Vcc of 1st and last particle and discovrey start
file16fx-trend-oscillating-osccal-step1-minmaxoffset8-50s.setproAn[1-4]-1showing clock skew compensation when paticle (1,1) increments/decrements the OSCCAL value until OSCCAL +/- 8
file17fx-trend-98s-least-squares-fitting.setproAn[1-4]-1showing time tracking frequency trend of 98 seconds, setup used for least square fitting
Function Config IDFunction NameActionInput DataColor
func1-1f1trendAnalogue 1beige
func2-1f2trendAnalogue 2green
func3-1f3trendAnalogue 3blue
func4-1f4trendAnalogue 4purple
hist1-histogram max 1280 binsAnalogue 1cyan
Connection IDProbeInput DataCoupling
proAn1-1Analogue 1internal time tracking ISR: Particle 11MΩ, DC
proAn2-1Analogue 2internal time tracking ISR: Particle 41MΩ, DC
proAn3-1Analogue 3internal time tracking ISR: Particle 71MΩ, DC
proAn4-1Analogue 4internal time tracking ISR: Particle 121MΩ, DC
proAn1-2Analogue 1rx north, particle 2, address (2,1)1MΩ, DC
proAn1-3Analogue 1rx north, particle 3, address (3,1)1MΩ, DC
proAn1-4Analogue 1rx north, particle 4, address (4,1)1MΩ, DC
proAn1-5Analogue 1rx north, particle 5, address (5,1)1MΩ, DC
proAn1-6Analogue 1rx north, particle 6, address (6,1)1MΩ, DC
proAn1-7Analogue 1rx north, particle 7, address (7,1)1MΩ, DC
proAn1-8Analogue 1rx north, particle 8, address (8,1)1MΩ, DC
proAn1-9Analogue 1rx north, particle 9, address (9,1)1MΩ, DC
proAn1-10Analogue 1rx north, particle 10, address (10,1)1MΩ, DC
proAn1-11Analogue 1rx north, particle 11, address (11,1)1MΩ, DC
proAn1-12Analogue 1rx north, particle 12, address (12,1)1MΩ, DC
proAn1-13Analogue 1CLK out, particle 1, address (1,1)1MΩ, DC
proAn1-14Analogue 1internal time tracking ISR / 16: Particle 11MΩ, DC
proAn2-14Analogue 2internal time tracking ISR / 16: Particle 41MΩ, DC
proAn3-14Analogue 3internal time tracking ISR / 16: Particle 71MΩ, DC
proAn4-14Analogue 4internal time tracking ISR / 16: Particle 121MΩ, DC
proDig[4-15]-1Digital [4-15]internal time tracking ISR / 16: Particle 1TTL
proAn4-2Analogue 4Vcc at last particle, address (12,1)1MΩ, DC
proDig[4-14]-2Digital [4-14]transmitter before actuator, pulling Vcc to GND; dig. 4 at particle 1, ... dig. 14 at particle 111MΩ, DC
proAn[1-4]-15Analgogue [1-4]transmitter before actuator, pulling Vcc to GND; dig. 4 at particle 1, ... dig. 14 at particle 111MΩ, DC
proAn[1,3]-16Analogue [1,3]Vcc at (1,1) and (3,3) of a (3x3) network1MΩ, DC
proDig[1-8]-16Digital [1-8]RX at node ID [1-8]TTL
proAn[1-4]-17Analogue[1-4]internal time tracking ISR of (1,1),(2,1),(3,1),(4,1)1MΩ, DC

Capacitor Configurations

Setup IDCaps [µF]Configuration
cap0-no additional caps
cap1560each 2nd particle

Software Configuration

Setup IDAveraging Methodoutlier rejectionFiFo Size [Elements]PitchPhase ShiftingOther Configuration
soft1mean-412-baud1, time1
soft2progressive mean (75% of old value + 25 % new value)--12-baud1, time1
soft3raw observation--12-baud1, time1
soft4least square fitting-4012-baud1, time1
soft5mean without outlier2*σ412-baud1, time1
soft6mean-416-baud1, time1
soft7mean-420-baud1, time1
soft8mean-424-baud1, time1
soft9mean-428-baud1, time1
soft10-----baud1, time1
soft11mean-40-baud1, time1
soft12mean-418-baud1, time1
soft13mean-422-baud1, time1
soft14mean-422yes (final impl.)baud1, time1
soft15mean-40 (fixed issue)-baud1, time1, oscillating OSCCAL+/-8, increment on each time PDU having "isNextSyncPackageTimeUpdateRequest" flag set
soft16mean-40 (fixed issue)-baud1, time1
soft17least square fitting-400 (fixed issue)-baud1, time1
soft18least square fitting-40 (pre filled queue)0 (fixed issue)-baud1, time1
soft19least square fitting5*sigma40 (pre filled queue)0 (fixed issue)-baud1, time1
soft20least square fitting10*sigma40 (pre filled queue)0 (fixed issue)-baud1, time1
Setup IDManchester Clock Delay [MCU Cycles]Overtime Limit Short IntervalOvertime Limit Long Interval
baud110240.75 * 10241.25 * 1024
Setup IDLocal Time Tracking Delay [MCU Cycles]
time151 * baud1.ManchesterClockDelay (see baud1)
  • Pitch: Manually added offset to the observed baud rate delay.

Mircocontroller Configuration

Configuration IDDetailsFusesPower Supply
mcu1internal RC 8MHz, clk outFUSES = { .low = (FUSE_SUT_CKSEL0 & FUSE_SUT_CKSEL2 & FUSE_SUT_CKSEL3 & FUSE_SUT_CKSEL4 & FUSE_CKOUT), .high = HFUSE_DEFAULT, .extended = EFUSE_DEFAULT,};pwr1
mcu2internal RC 8MHz, clk outFUSES = { .low = (FUSE_SUT_CKSEL0 & FUSE_SUT_CKSEL2 & FUSE_SUT_CKSEL3 & FUSE_SUT_CKSEL4 & FUSE_CKOUT), .high = HFUSE_DEFAULT, .extended = EFUSE_DEFAULT,};pwr2

Power Supply

Configuratin IDSupplyDetails
pwr1AnkerUSB, max. DC 5V/3A
pwr2BK Precision(R) 15505.1V/3A

About

Evaluation Data

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Contributors