Screenshot a browser displaying the Scratch web app demoing Vernier's go direct sensors

Scratch 3.0 Official Extension for Vernier’s Go Direct Sensors


Extending Scratch 3.0, the visual programming language, to use sensor data from educational science hardware.

View project

Bocoup worked with Vernier, the science classroom sensor technology company, and Lifelong Kindergarten (“LLK”), the research group at MIT behind Scratch, to write an official Scratch 3.0 extension for Venier’s Bluetooth Low Energy physics sensors.


Vernier's Scratch 2.0 extensions integrated with the Go Direct line of sensors for classroom use in a variety of student lab experiments. The extensions enabled the output of Vernier sensors to be used as inputs in the Scratch programming language for children, connecting interactive programs to the physical word. The release of Scratch 3.0 in January 2019 came as a total rewrite from Adobe Flash to a modern JavaScript webapp and rendered Vernier’s Scratch 2.0 extensions obsolete. Lifelong Kindergarten also created a new official extensions library, containing extensions that are maintained internally by LLK, and require adherence LLK’s pedagogy and playtesting methodologies. In order to migrate from Scratch 2.0 to 3.0, Vernier required a new extension, and support onboarding into the new official extension workflow for Scratch 3.0.


Bocoup's past work on the Scratch 3.0 rewrite, experience with web hardware programming, and experience working with Lifelong Kindergarten, put us in a good position to help Vernier identify the transition steps from Scratch 2.0 to 3.0 and implement an official Scratch 3.0 extension for the Vernier Go Direct Force and Acceleration Sensor. We worked with Lifelong Kindergarten to iterate on the block design, and with Vernier to ensure we were covering existing use cases. We extended godirect.js, Vernier’s open source node library for device communication, to support Scratch Link, Scratch's cross platform application for Bluetooth communication, and in the process also helped improve Scratch Link’s support for godirect's communication protocol.


The Vernier Go Direct Force and Acceleration Scratch 3.0 Extension is the 5th Scratch hardware extension available, and the first one available from a third party integrator. Vernier was able to ship the extension within a few months of the Scratch 3.0 launch and ensure continuity for classrooms that use Vernier hardware. Through the course of developing this Scratch Extension, we extended Verniers open source software for communication with Go Force devices and helped patch a bug in Scratch Link that prevented communication with Go Direct devices. We also produced and documented a set of reusable design patterns for Vernier engineers to replicate for future Go Direct sensors.

Onboarding Vernier into the official Scratch 3.0 Extension development workflow and philosophy helped Vernier align with LLK pedagogy. By applying LLK’s “low floor” principle, the Go Direct Force and Acceleration Extension now uses gestures like “push”, “pull”, “tilt” and “shake” instead of raw sensor data. Focusing on these more understandable gestures empowers children to explore creative new uses for the sensors in the classroom. This improves student literacy with the lab equipment before students go on to explore more advanced projects. Simultaneously, schools that use Vernier devices in their science labs will now be able to use the same devices in programming classes with younger students.

We went to Bocoup because of their demonstrated success in the world of Scratch. From design to hand-off they delivered the knowledge, creativity, and technical expertise needed to meet our short-term goals and ultimately, the tools and knowledge we need to continue to grow the project into the future.

Ian Honohan, Software Development Manager, Vernier

Contact Us

We'd love to hear from you. Get in touch!


P.O. Box 961436
Boston, MA 02196