
Bias control lt8364-linear two usb
OpenSiPM/sipm-linear-1mm
SiPM spectrometer using 16 individual 1mm element

Resonant scanning is essential for high-speed and in vivo laser scanning microscopy. However, resonant scanners are susceptible to jitter due to a mismatch between the mirror's mechanical oscillation and the data…
Pll ad9544 is an open-source printed circuit board by OpenSiPM, from the OpenSiPM/PLL repository on GitHub. It is a 4-layer board of 74.8 × 44.5 mm with 77 parts on 78 nets, routed with 405 tracks and 95 vias.
It is built around the ATSAMD21E18A-MUT, 24AA16-I/SN and AD9544BCPZ, with the AZ1117CH-1.8TRG1, MIC5317-3.3YM5-TR and NX2016SA-52MHZ-EXS00A-CS07103 among its other parts. Its parts include 32 capacitors, 26 resistors, 7 ICs, 5 connectors and 2 diodes. It belongs with the SAM D and SAM boards of this library.
Resonant scanning is essential for high-speed and in vivo laser scanning microscopy. However, resonant scanners are susceptible to jitter due to a mismatch between the mirror's mechanical oscillation and the data acquisition system's pixel sampling clock. If the digitizer samples at a fixed rate, the pixels on one line land in slightly different positions than on the next and the raw data appears shifted from line to line.
Our solution is to generate the digitizer sample clock from the resonant scanner's own sync signal using a PLL. Every line is then sampled at the same scanner phase, so the pixel grid follows the scanner rather than drifting against it. The method runs in real time, is entirely electrical and requires no software changes, so it can be easily incorporated into most existing microscopy systems.
This approach is described and validated in:
Ching-Roa VD, Huang CZ, Giacomelli MG. Suppression of Subpixel Jitter in Resonant Scanning Systems With Phase-locked Sampling. IEEE Transactions on Medical Imaging 43(6):2159–2168, 2024. doi:10.1109/TMI.2024.3358191 · PubMed 38265914
The repository is organized into separate folders: PLL_AD9544 contains the KiCAD design files for the board, Configuration Files contains the AD9544 register configurations and a script to convert them into EEPROM images, and EEPROM_writer together with PLL_EEPROM_upload.m are used to program the configuration onto the board.
This PCB receives the resonant scanner sync signal, locks to it using an Analog Devices AD9544 clock generator, and outputs a phase-locked sample clock for the digitizer and a line trigger. The AD9544 is referenced to a 52 MHz crystal, and its configuration is stored in a 24AA16 I2C EEPROM, which the AD9544 loads automatically at power-up. A SAMD21 microcontroller receives commands over USB and is used to program the EEPROM. Power is supplied over USB and regulated down to 3.3 V and 1.8 V, and a PLL LOCK LED indicates when the PLL has locked to the reference.
See: PLL_AD9544. Bill of materials

The AD9544 is configured through its registers, which are designed using the Analysis|Control|Evaluation(ACE) Software Version 1.10.2671.1118. Do not update it to newer versions as they are not tested with the AD9544 plug-in module. In ACE, set up the reference input, DPLL, output frequencies, and loop bandwidth. The ACE session can then be exported as a .cso file for the register settings.

The PLL LOCK LED is driven by the AD9544's M0 multifunction pin (M-pin), which is set up in ACE as a lock status output:

Use the ad9545_create_eeprom_bin.py script to generate bin files for EEPROM. Set fn in the script to your .cso file and run it from inside the Configuration Files folder (it needs bitarray.py and defaults.txt, which are in the same folder). It writes a .bin file with the same name as the .cso.
Sample files for 8 kHz and 12 kHz scanners are available in the Configuration Files folder (both .cso and ready-to-upload .bin files are included).
The approach does not depend on the AD9544. Other clock chips (for example, the AD9545) can do the same job. They need their own configuration files and EEPROM image, but the principle stays the same.
The EEPROM_writer folder contains the Arduino sketch for the SAMD21 microcontroller, which requires the I2C_eeprom library. On startup, the sketch reports the EEPROM size and the scanner frequency currently stored in it.
To program a configuration onto the board:
EEPROM_writer/EEPROM_writer.ino to the SAMD21 using the Arduino IDE.PLL_EEPROM_upload.m in MATLAB, set the path to your .bin file (e.g. Configuration Files/12kHz_LED.bin) and the board's COM port ('COMX'), and run the script. It sends the program command followed by the 1280-byte image, reads the EEPROM contents back and compares checksums. "Checksum of file matches uploaded data." means the upload succeeded.Go to https://jlcpcb.com, https://www.seeedstudio.com/fusion_pcb.html or the service of your choice, upload the Gerber files, and pay.
Gerber files can be generated from KiCAD using 'File -> Plot' or using the JLCPCB Fabrication Toolkit plugin (settings are included in PLL_AD9544/fabrication-toolkit-options.json).
The easiest way to assemble this board is using solder paste and a reflow oven or hotplate. The AD9544 comes in a 48-lead LFCSP package with an exposed ground pad, and most of the passives are 0402, so reflow is strongly recommended over hand soldering. If you're going to make several boards, paying for assembly of the passive and common components might be worthwhile.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 24 | 1uF | Capacitor_SMD:C_0402_1005Metric | C1, C2, C10, C13, C15, C17, C18, C19, C20, C21, C22, C23, C24, C25, C26, C27 +8 |
| 8 | 50 | Resistor_SMD:R_0402_1005Metric | R5, R6, R8, R9, R10, R22, R26, R27 |
| 5 | 5.1k | Resistor_SMD:R_0402_1005Metric | R2, R13, R14, R20, R21 |
| 4 | 0 | Resistor_SMD:R_0402_1005Metric | R1, R23, R24, R25 |
| 4 | MountingHole | MountingHole:MountingHole_2.5mm | H1, H2, H3, H4 |
| 3 | Conn_Coaxial | Connector_Coaxial:SMA_Amphenol_901-144_Vertical | J3, J4, J5 |
| 2 | 100k | Resistor_SMD:R_0402_1005Metric | R17, R18 |
| 2 | 15pF | Capacitor_SMD:C_0402_1005Metric | C11, C12 |
| 2 | 22uF | Capacitor_SMD:C_0603_1608Metric | C3, C4 |
| 2 | 3.9nF | Capacitor_SMD:C_0402_1005Metric | C14, C16 |
| 2 | 8.5 | Resistor_SMD:R_0402_1005Metric | R7, R15 |
| 2 | DNP | Capacitor_SMD:C_0402_1005Metric | C30, C31 |
| 2 | R_Small_US | Resistor_SMD:R_0402_1005Metric | R3, R4 |
| 2 | SN65LVDS2DBVR | IC_receiver:DBV5 | U5, U6 |
| 1 | 141.9 | Resistor_SMD:R_0402_1005Metric | R16 |
| 1 | 24AA16-I/SN | eeprom:SOIC8-N_MC_MCH | U3 |
| 1 | 68 | Resistor_SMD:R_0402_1005Metric | R19 |
| 1 | 750 | Resistor_SMD:R_0402_1005Metric | R11 |
| 1 | AD9544BCPZ | AD9544:CP-48-13_ADI | U4 |
| 1 | ATSAMD21E18A-MUT | qfpsamd21:TQFP32_MC_MCH | IC1 |
| 1 | AZ1117CH-1.8TRG1 | AZ1117CH-1.8TRG1:SOT-223_DIO | U2 |
| 1 | Conn_01x04 | Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Vertical_SMD_Pin1Left | J6 |
| 1 | MIC5317-3.3YM5-TR | 3.3vReg:SOT-23-5_M5_MCH | U1 |
| 1 | NX2016SA-52MHZ-EXS00A-CS07103 | Crystal:OSCCC200X160X50N | XTAL1 |
| 1 | PLL LOCK | LED_SMD:LED_0603_1608Metric | D2 |
| 1 | POWER | LED_SMD:LED_0603_1608Metric | D1 |
| 1 | USB1130-15-A_REVA | USB_B:OST_USB-B1HSB6 | J1 |
It measures 74.8 × 44.5 mm and has 4 copper layers, 1.6 mm thick.
77 parts, built around the ATSAMD21E18A-MUT, 24AA16-I/SN, AD9544BCPZ and AZ1117CH-1.8TRG1. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the OpenSiPM/PLL repository on GitHub, at the commit this page was made from: the board is PLL_AD9544/pll_ad9544.kicad_pcb and its schematic PLL_AD9544/pll_ad9544.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask OpenSiPM before reusing the design.

OpenSiPM/sipm-linear-1mm
SiPM spectrometer using 16 individual 1mm element


Mig-M27/Avionics-PCBs
Este repositório é usado para gerir as versões dos projetos KiCAD do sistema de Avionics da Porto Space Team. Está dividido em 2 secções: 1.




