I have quite a lot of them and do not want throw them away.
My issues are;
I do not know which board type I should be selecting in Arduino IDE ver 2.2.3.
However, I used "LOLIN(WEMOS) D1 ESP-WROOM-02" so far and was able to use its GPIO pins.
No matter what I do, I2C devices are not being detected. This board have dedicated marked pins for I2C, but I wonder if it is correct, or may be the board type I have selected is not correct to use I2C.
The model-specific board definitions such as "LOLIN(WEMOS) D1 ESP-WROOM-02" are convenient because they might provide the configuration that is appropriate for a specific model of board. However, if the manufacturer of the board model you are using hasn't added such a definition to the "esp8266" boards platform, you can always use the "Generic ESP8266 Module" board definition. When you select Tools > Board > esp8266 > Generic ESP8266 Module from the Arduino IDE menus, you will find that menus for all possible configuration options of the ESP8266 microcontroller are added under the IDE's Tools menu. The purpose of this board definition is to allow the platform to support any arbitrary ESP8266-based hardware.
In the first picture you shared, the headers have only been poked through the holes on the board. You will never get a reliable electrical connection by doing that. So if you haven't soldered the connections to the I2C pins, that is likely the cause of the problem.
I think I'd try with the WemosD1R1 - use Serial and digitalWrite to ping out "D3-D8".
And definitely solder that up (or if you have minigrabbers etc. - fine).