QProbe - Getting One, Building, Downloads

Parent Category: Tools Category: QProbe - a QBUS signal adapter Written by Administrator

In case you find QProbe useful, you can get it. Either you build yourself from the attached files, or you order it.

Sadly in 2021 electronic components clearly increased in price. A kit is 140€, ready build and tested it is 220€.


QProbe consists of these physical modules

 For the THT ("through-the-hole") components see the 2nd attached BOM.

qprobe top

Verifying PCB operation before main assembly:

PCB operation can be verify with this minimum procedure:

  1. Solder in capacitor C2 and C3 (to stabilize 3.3Volt), solder in sockets and plug in 180 ohm pull-up terminators RN32, RN34, RN36, RN38, RN40, RN42.
  2. populate the JTAG connector J2, and DIP switch SW1, set switch #1 to ON, all others OFF (LEDs show QBUS signals without additional logic).
  3. Apply +5V power to the legs of C2, verify C3 has 3.3 V. Temporarily insert (do not solder!) a 1.8mm LED at position D4 "+5V", cathode (short leg) toward the board edge. It should shine.
  4. you have 3.3V now, program the CPLD (see below).
  5. with all pull-up terminators installed, you can "assert" (activate) a QBUS signal by touching its pad on the breakout field with a GND wire (the pulldowns are optional in this step). The LED should shine. The schematic tells you LED labels and assigned signals. E.g.: DAL00 = ADDR00 is D6, DMR is D59.


CPLD programming

You need to program the two CPLDs. These are Intel (ex Altera) EPM240T100.
For programming you need

Workflow in Quartus-Programmer's GUI for CPLD1, before repeating for CPLD2:

qprobe quartusprogrammer


Component assembly

There's not much to say for the soldering part. Just several 100s pins  ...

LED assembly

I printed  the LED body on an Prusa MK3S in out-of-the-box configuration (mid of 2020).

Filament was the one delivered with the printer, "PLA Silver made for Prusa Research", Prusa's order number FLM-PLA-175-SLV.

Printing quality was "0.10mm DETAIL". The only special setting was a larger "Print Settings/Support material/Contact Z distance" of 0.2 instead of 0.1, to allow easier remove of struts.

Attached is a screenshot of PrusaSlicer.

It's important to print the STL rotated, with LED openings down to the headbed. This way pin holes remain open, and you have minimal struts to remove.

qprobe ledbody struts

LED orientation

To make the orientation fool-proof: The anode pin of a LED is on the ROUND side of the LED body, and when looking onto the front goes to the LEFT.
The cathode pin is on the SQUARE side and goes to the RIGHT.

qprobe led orientation


qprobe panel leds back qprobe panel cross

If you like to test the LEDs (china stuff?) before mounting: apply +5V to the QProbe, and use the "+5V" LED position as test adapter.

LED mount

Mounting the LEDs into the body onto the PCB is the hard part, at least laborious. (Don't blame me, you wanted to build the kit!)

Best proceed in these steps:

  1. Open the pin holes in the 3D body with a 1mm drill. Press the nuts into the LED print and test-mount with 4 screws, then unscrew.
  2. Clean the LED holes in the 3D print.
  3. Test insert all LEDs, you may have to push them into the 3D print with some force.
  4. The front panel PCB is just snapped onto the 60 LEDs. It will need rework, open the LED holes with a 2mm drill.
  5. Repeat 2-4 until the front panel fits correctly.
  6. Insert only the lower LED row (IAK..+12V) in to the LED body.
  7. Bend the LED pins in a 90° degree, but with 2.5 mm distance to the LED body's edge!
  8. Fiddle all the LED pins into the PCB. You'll need some tool to keep the PCB and LED body in place.
    I used my Prusa-Printer to move the LEDs toward the PCB in controlled way:

    qprobe ledbody mount prusa
    Here the LED body is tied to the x-Axis slightly rotated (black helper adapter). Then the x-Axis is moved slowly downward under manual control, you can insert the LED pins one-by-one into the PCB then.
  9. Finally screw the LED body to the PCB again. Sort out the bended LED pins, then you can do a first function test before soldering (see below).
  10. Solder the lower LED row.
  11. Insert LEDs into the upper row. Best pre-bend the pins into a wide 180° arc, then "roll" them through the 3D body into their pin holes.


qprobe leds panel



To finally verify your build again, plug in at least pullup bus termination resistor packs, apply +5V power to the board and set the CPLD mode switches #1 and #2 to ON (LED shows bussignals directly, and "DATA is a copy of ADDRESS"). Then touch each QBUS signal pin with a GND wire to assert them one-by-one (QBUS signals are inverted: a logic 1 is presented by 0 volt signal level). Verify the selected LEDs are shining. For BDAL<15:0>, both an ADDR and a DATA LED are active together if switch #2 is ON.

When you set all DIP switches to the OFF position, you have additional LED logic. For IRQ, UIAK, DMR,DMG and SACK this means: short pulses are elongated to 100ms. So if scatching these siangal pins with your GND wire, you should see no flicker anymore but a steady light.

Download this file (qprobe-bom_jlcpcb.csv)qprobe-bom_jlcpcb.csv[SMD Bill Of Material for JLCPCB]8 kB
Download this file (qprobe-front.zip)qprobe-front.zip[Gerber files for LED front panel]11 kB
Download this file (qprobe-ledbody-prusaslicer.jpg)qprobe-ledbody-prusaslicer.jpg[LED body 3D print PrusaSlicer screenshot]357 kB
Download this file (qprobe-ledbody.stl)qprobe-ledbody.stl[LED body 3D print]612 kB
Download this file (QProbe-lowerleds-bender.stl)QProbe-lowerleds-bender.stl[Helper to bend lower LED pins 3D print]72 kB
Download this file (qprobe-top-pos.csv)qprobe-top-pos.csv[SMD positions JLCPCB. "CPL" = "Component Placement List"]3 kB
Download this file (qprobe.zip)qprobe.zip[Gerber files for main PCB]789 kB
Download this file (QProbeCPLD1.pof)QProbeCPLD1.pof[Binary pattern for CPLD1]7 kB
Download this file (QProbeCPLD2.pof)QProbeCPLD2.pof[Binary pattern for CPLD2]7 kB
Download this file (schematic.pdf)schematic.pdf[QProbe schematic]570 kB