I made my own versions of a speed controller for Lego PF motors after this product.

This module contains a commercial HW-70 PWM Motor Speed Controller Module.
It is based on the well known NE555 timer-IC to make a PWM ouput signal.


I bought a couple of these modules on AliExpress (for approx. 1€25 each) and made a small snapfit enclosure for it in FreeCad

On AliExpress you can also buy the PF connector and wire to make a DIY Lego PF connection cable.
When assembling the PF cable, remove the C1 and C2 contacts from the Bottom part of the connector
so that only 1 connector is required to connect both the battery box and the motor.

Because the output voltage cannot be reversed it is more suitable as an LED dimmer

Below is a modified design where the motor can be changed direction using a DPDT switch.

It fits in this larger snapfit enclosure

First of all the screw connector on the HW-70 Module is replaced by a header connector, after that all connections are soldered and tested

and mounted into the enclosure

To make the stripes on the potentiometer scale, color in the lines with a black marker and wipe it clean with alcohol, leaving the stripes.

For a guide on how to build this project, check out the tutorial at Instructables.
I also made a version based on an Arduino ProMini (or clone) and has a DRV8833 Motor driver module, a Rotary encoder and a 16 LED Neopixel Ring as forward/reverse speedindicator