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