Replacing MasterFan MF120L with an beQuiet Silent Wings 3 fans

Recently was playing with the fan configurations to make my PC super quiet on idle. Noticed that biggest rattling sound comes from Master Liquid radiator fans even on low RPM.

Decided to change them.

Some googling led me to beQuiet Silent Wings 3 fans –

  • Virtually inaudible operation at max. 15.5dB(A)
  • 6-pole fan motor for less power consumption and vibration
  • Fluid-dynamic bearing enables super-long life span of 300,000h
  • Fan frame with funnel-shaped air inlets for extremely high air pressure

After replacement, You can instantly tell than Master Wings 3 are almost inaudible comparing to stock Master Fan MF120L. And MF120L is just a garbage with an RGB led on it.

Silent Wings 3
Silent Wings 3
Silent Wings 3 on a Master Cooler
Silent Wings 3 on a Master Cooler
Silent Wings 3 on a Master Cooler
Silent Wings 3 on a Master Cooler

Track Data Changes (SQL Server)

Works for SQL Server starting with 2008.
Enable change data capture for a database:
EXEC sys.sp_cdc_enable_db
Check if it is enabled:
SELECT [name], database_id, is_cdc_enabled  
FROM sys.databases
WHERE is_cdc_enabled = 1
Enable change data capture for a table:
EXEC sys.sp_cdc_enable_table
@source_schema = N‘dbo’,
@source_name= N‘MyTable’,
@role_name= NULL,
@filegroup_name = N‘CDC’,
@supports_net_changes = 0
Check if table is tracked:
SELECT [name], is_tracked_by_cdc  
FROM sys.tables
WHERE is_tracked_by_cdc=1
Select changes:
select * from [cdc].SchemaName_SourceTableName_CT
Cleanup tracked changes:
EXECUTE sys.sp_cdc_change_job
    @job_type = N‘cleanup’,
    @retention = 2880;  

Open command prompt from any folders context menu

There are many tools that can do that for You, but it easy to make it yourself.

When a user right-clicks a Shell object such as a file, the Shell displays a shortcut (context) menu. This menu contains a list of commands that the user can select to perform various actions on the item. These commands are also known as shortcut menu items or verbs. Shortcut menus can be customized.

What you have to do is just add some registry entry in [HKEY_CLASSES_ROOT\Folder\shell\.

All entries here are responsible for what menus to show when you press right menu button and open context menu for a folder.

Command cmd.exe /K \”cd /d %1\”” will open command prompt and navigate to current folder (%1 will by replaced by folder name You are opening context menu automatically )

More on this here.

Save this to any .reg file and execute it:

Windows Registry Editor Version 5.00

@=”C:\\Windows\\System32\\cmd.exe /K \”cd /d %1\””

PowerBuilder, disable system menu`s close button

ulong ll_parent_hwnd
ulong ll_sys_menu_hwnd
ulong ll_sys_menu_close_flags
ulong ll_ret

n_cst_numerical u_num

ll_parent_hwnd = Handle(this.parentwindow())

ll_sys_menu_hwnd = GetSystemMenu(ll_parent_hwnd, FALSE)

ll_sys_menu_close_flags = GetMenuState(ll_sys_menu_hwnd, SC_CLOSE, MF_BYCOMMAND )

ll_ret = u_num.of_bitwiseand(ll_sys_menu_close_flags , MF_DISABLED)

ib_close_prev_enabled = (ll_ret = 0)

If ib_close_prev_enabled Then
EnableMenuItem (ll_sys_menu_hwnd, SC_CLOSE, MF_BYCOMMAND + MF_DISABLED + MF_GRAYED)
End If


And to enable it later:

If ib_close_prev_enabled Then
EnableMenuItem (GetSystemMenu(handle(parentwindow()), FALSE), SC_CLOSE, MF_BYCOMMAND + MF_ENABLED)
End If


Sony Ericsson that have tx-rx connection

Sony Ericsson that have tx-rx connection:

A2618s, A2618sc, A2628s, A2628sc,
F500, F500i,
J200c, J200i, J300a, J300c, J300i,
K300a, K300c, K300i, K500c, K500i, K506c, K508i, K600, K608i, K700, K700c, K700i,
P800, P802, P900, P908, P910a, P910c, P910i,
R300d, R300LX, R300z, R310s, R310sc, R320s, R320sc, R380e, R380sc, R380s, R380WORLD, R520LX, R520m, R520mc,
S700c, S700i, S710a,
T200, T202, T20e, T20ec, T20s, T20sc, T238, T28s, T28sc, T28z, T28WORLD, T290a, T290c, T290i, T292a, T29s, T29sc, T300, T306, T310, T312, T316, T39m, T39mc, T60c, T60d, T608, T60LX, T610, T61c, T61d, T616, T618, T61LX, T61z, T628, T62u, T630, T637, T65, T68, T68i, T68ie,
V600i, V800,
Z1010, Z500a, Z502a, Z600, Z608, Z800i.

for J200i, J210i, J300i, K300i, K700, K700i, S700, S700i, F500, F500i, K500, K500i, T616, T628, T637, P800, P802, P900, P908, P910, T200, T202, T226, T226s, T230, T238, T290, T292, T300, T302, T306, T310, T312, T316, T20, T28, T29, T36, T39m, T39mc, R520, R520m, R520mc, T65s, T60c, T62u, T68i, T68m, T68mc, T68ie, z1010, T100, T102, T105, T106, T66, T600, R600, R600s, R600sc, A2618, A2628, A3618, Z200, Z300, Z500i, Z600, Z608, Z1010, S700, V600i, V800
Name Direction Description
1 ATMS Audio to mobile
2 AFMS/RTS Audio from mobile/RTS (connected to GND in cable?)
3 CTS/ONREQ CTS/Mobile Station On REQuest (connected to GND in cable?)
4 data in Data to mobile (Rx). (Tx for K300i)
5 data out Data from mobile (Tx). (Rx for K300i)
6 ACC in Accessory control to mobile. Used as Rx in some models (i.e. T68) for flashing.
7 ACC out Accessory control from mobile/handsfree sense. Used as Tx in some models (i.e. T68) for flashing.
8 AGND Audio signal ground + 0V reference
9 flash Flash memory voltage + Service (shorted to pin 11 in service cable)
10 DGND Digital ground
11 Vcc DC + for battery charging + External accessory powering

Pinout by Cruiser team:

Pin Signal Description

CTMS stands for Control To Mobile Station; CFMS stands for Control From Mobile Station; DTMS stands for Data To Mobile Station; DFMS stands for Data From Mobile Station

Standard cable is Sony Ericsson DCU-11


The (Tx)&(Rx) are reverse for K300i model, you must connect CTS & DGND together on board and connect the common wire to CTS(Pin3) in phone connector. If your cable is working fine then dont change it.

Essential toolkit from iFixIt

Love this toolkit. Nice packaging, tools seem quality made and should last more that one disassembly. Nice job iFixIt!

iFixIt tool kit
iFixIt tool kit
iFixIt tool kit
iFixIt tool kit
iFixIt tool kit
iFixIt tool kit

Kit Includes:
Custom iFixit Bit Driver
Angled Precision Tweezers
iFixit Opening Tool
iFixit Opening Picks set of 6
Suction Handle
Easy-to-Open Magnetized Case
Lid with Built-in Sorting Tray
Sixteen 4 mm Precision Screwdriver Bits:
Phillips – 000, 00, 0, 1
Pentalobe – P2, P5
Flathead – 1, 2.5, 4 mm
Torx – T4, T5
Torx Security – TR6, TR8, TR10
Tri-Point – Y000
SIM Eject Bit

Making an adjustable “lab” power supply from scrap

Had an old power supply board lying around that was ripped from dead/old printer. PSU model is CZ57PSE EPSON


To make it work one should connect PSC line to ground.

Schematics of similar power supply:

CZ57PSE schematics
CZ57PSE schematics

To regulate output, made an adjustable voltage regulator using LM2575 that was ripped of some dead router or something similar:


Finished power supply in a box:

Regulated power supply
Regulated power supply
Regulated power supply
Regulated power supply
Regulated power supply
Regulated power supply
Regulated power supply
Regulated power supply

ESP12E dev kit “cant autodetect firmware, because proper answer not received.”

After flashing NodeMCU dev kit to latest build could not connect to it with ESPlorer, error was – “cant autodetect firmware because proper answer not received.”.

It was because baud rate was changed in later firmware, after setting the baud rate to 115200 all was fixed.


Making old webcam to work on Windows 10

Was investigating some old Fujitsu Siemens Webcam for some project, but it did not work on Windows 10 – windows did not recognize and did not have any drivers for it.

Hardware ID in device manager shows:


Searching by vendor and PID did not help.

On PCB of the webcam, I found that it is SN9C120 + S0I766

Finally searching by SN9C120 that this may be same as HP Basic Starter Camera. That led me to this Microsoft Update page where finally I have found working* driver. This driver installed on Windows 10 without problems, but Camera app was still not working.

On the internet found some general app written on .NET 3.5 for camera capture and finally that was working fine.

If windows update site is not available, you can find the driver here.

*UPDATE good app to test web cam –

No more COM in PowerBuilder 12

Just for a reminder and possible workaround to wint a .NET dll: