Introducing the PrawnBlaster: A USD$4 pseudoclock

339 views
Skip to first unread message

Philip Starkey

unread,
May 29, 2021, 9:11:01 PM5/29/21
to the labscript suite
Hi Everyone,

I'd like to announce the release of a new pseudoclock for the labscript-suite, the PrawnBlaster.

Designed to run on the USD$4 Raspberry Pi Pico microcontroller released a few months ago, the PrawnBlaster is an exciting evolution of the PineBlaster pseudoclock we released 8 years ago. The PrawnBlaster costs a tenth of the PineBlaster, supports twice the number of instructions, has comparable timing specifications, can be easily referenced to an external frequency source, can monitor the length of labscript suite waits, and can be configured to run as 4 independent pseudoclocks. Yes - we really have developed something that costs USD$1/pseudoclock!

PrawnBlaster Specs
  • Configurable as 1, 2, 3, or 4 truly independent pseudoclocks. Each pseudoclock has it's own independent instruction set - there need be no synchronisation between pseudoclock instructions. It is equivalent to having up to 4 PineBlaster boards on a single chip!
  • 30,000 instructions (each with up to 2^32 repetitions) if configured as a single pseudoclock. Instructions are spread evenly amongst pseudoclocks if configured between 2 and 4 pseudoclocks (15,000, 10,000, and 7,500 respectively).
  • Minimum pulse half-period 50ns (if internal clock running at 100MHz).
  • Maximum pulse half-period ~42.9 seconds (if internal clock running at 100MHz).
  • Half-period resolution (between the minimum and maximum pulse half-period) of 10ns (if internal clock running at 100MHz).
  • Support for hardware triggers (can be used as a secondary pseudoclock in the labscript-suite).
  • Support for up to 100 retriggers mid-execution (labscript-suite waits) per independent pseudoclock.
  • Support for timeouts on those waits (with maximum length 42.9 seconds).
  • Ability to internally monitor the length of those waits (+/- 10ns) if used as the master pseudoclock (no need to use an NI card as a labscript-suite wait monitor).
  • Can be referenced to an external frequency source.
  • Internal clock frequency can be set up to 133 MHz (scale the above timing specs accordingly).
I want to give special thanks to David Meyer for doing so much testing of the PrawnBlaster and helping me work out the bugs in the firmware. It would not be as polished without his help.

Support for the PrawnBlaster has already been added to the development branch of labscript-suite/labscript-devices and the firmware for the Raspberry Pi Pico can be found at labscript-suite/PrawnBlaster. Further details on the hardware (pinout, clock source, etc.) can also be found in the PrawnBlaster repository.

I hope this device is useful for many of you in the future!

Cheers,
Phil

Francisco Salces Carcoba

unread,
May 29, 2021, 9:45:48 PM5/29/21
to labscri...@googlegroups.com
Thanks Phil, this sounds amazing! I will definitely try it for 4 bucks... 

Paco

--
You received this message because you are subscribed to the Google Groups "the labscript suite" group.
To unsubscribe from this group and stop receiving emails from it, send an email to labscriptsuit...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/labscriptsuite/6717a6b9-7bc7-4fc8-9fb3-946e28354b7en%40googlegroups.com.

Eric Norrgard

unread,
Jun 11, 2021, 11:07:30 AM6/11/21
to the labscript suite
Thanks Phil, sounds neat.  Apart from pinout, is there anything special about the Pico board?  I have a Raspberry Pi 3B looking for something to do.

-Eric

Philip Starkey

unread,
Jun 11, 2021, 11:00:04 PM6/11/21
to labscri...@googlegroups.com
Hi Eric,

Despite both being made by the Raspberry Pi Foundation, the Pico is a completely different product. It's much more like an Arduino microcontroller than a Pi. This is what lets us get the precise timing necessary for a pseudoclock. Unfortunately the Pi just doesn't have the hardware necessary.

There are other companies who have created Pico compatible products that use the same Raspberry Pi RP2040 chip (like the Pimoroni Pico Lipo) but these are typically more expensive than the Pico and have features we don't need for the PrawnBlaster. That said, the PrawnBlaster code should run on any RP2040 based board as long as it has sufficient GPIO pins.

Hope that answers your question. Sorry that the Pi is not an option. You could probably run the labscript suite software (BLACS/runmanager/etc.) on a Pi to control a PrawnBlaster/Pico and/or other hardware devices though!

Cheers,
Phil

You received this message because you are subscribed to a topic in the Google Groups "the labscript suite" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/labscriptsuite/BThyMkkILsM/unsubscribe.
To unsubscribe from this group and all its topics, send an email to labscriptsuit...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/labscriptsuite/d1fbc218-388a-43e4-a681-05f2f2939152n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages