User Tools

Site Tools


WIO G-Semaphore

User pagesRob Versluis

Just a fun semaphore not related to the real semaphores found along railroad tracks.


A WIOesp based stand alone semaphore.
The Lolin D32 is selected because it has an onboard battery management for charging and discharging.

The WIO type should be set to Servo and NeoPixel will be activated on demand for the WS2811 color LED.


The 3D files for the semaphore:

Note 1: Print all components separately.
Note 2: Rotate the pole in Cura by 45° to fit on the print bed, and disable support structures.


PETG is selected for outdoor usage.

Part Color
Bottom Grey
Top Grey
Pole Military green
Arm White
Warn board White
Arm Red Red
Warn Red Red



Component Lolin D32 pin Remark
Servo PWM 12 A 270 Ohm resistor should be inserted between servo and Lolin D32
Servo(+) BAT
Servo(-) GND
WS2811 Data 0
WS2811(+) BAT
WS2811(-) GND
3V7 Battery(+) - Connect to the flip switch
3V7 Battery(-) GND
Flip switch BAT Other switch connection goes to the Battery(+)
Electrolytic capacitor 100µF (+) BAT Optional for stabilise servo movements.
Electrolytic capacitor 100µF (-) GND
The Hall is optional and will trigger IOScript 99
Hall(+) BAT
Hall(-) GND
Hall(S) 36 A 10k pull up resistor should placed over Hall(+) and Hall(S)


Li-Ion 3V7 example common use for wireless telephones:


IOScript ON:

00 1 S 000 000 0 02
00 1 P 000 100 0 01 255 000 000


IOScript OFF:

00 1 S 000 060 0 02
00 1 P 000 100 0 01 000 255 000



The Hall will flip between and It are Just copies of the IOScripts for port zero.

Signal Setup


Fiels Value Remark
Interface ID WIO
Node ID 41 WIO setup dependent.
RED Address:Port 1:0 All other addresses and ports should be remain zero.
Control Default
Type Macro To trigger IOScript on the WIO.


Fiels Value Remark
Signal type Main Semaphore or Light SVG Theme dependent.
Aspects 2


  • Switch the D32 on before connecting the USB for charging the battery!
  • Not all photos and images represent the latest developments of the semaphore.
  • Use 0,05mm² decoder wire for the WS2811.
  • The standard servo arm must be cut to fit.
  • Print the pole without support to be able to push wires for the WS2811 through it.
    Just do not watch it when the top layers are printed. :)


LED Wiring

Use decoder wires for the RGB LED.

  1. Push the wires through the pole from top to bottom.
  2. Fiddle the wires through the pole foot on the bottom plate.
  3. Push the pole in the foot, and make sure the wires can still be moved.


Brass Tube

If the PETG pole is not 100% straight, a brass tube of ø4mm can be inserted to straighten it.
The tube is wide enough for the wiring.

robvrs/g-semaphore-en.txt · Last modified: 2022/09/26 14:06 by rjversluis