LiquidCrystal_I2C.h

I moved to SCL-D5 SDA-D6, and inserted Wire.pins(12, 14); at top of setup() function.
I2cScanner finds 0x3F correctly, and HELLO WORLD is displayed.
This means either D1 or D2 pin isn’t connected.

Then I did the LED test: D1/D2 - (+)LED(-) - 330Ohm - GND; sketch blinks pin 5 and 4.
D1 blinks correctly, but D2 remains off all the time.
If I use a jumper wire to connect LED(+) to NodeMCU’s header (where “D2” is printed), it also doesn’t blink.
If I use a jumper wire to connect LED(+) to ESP-12E’s GPIO4 pin (on the raised chip), the LED blinks.
Thus, the faulty connection is between ESP12-E and NodeMCU PCB.