• Dell Precision 3541 Review

    09/29/2019 at 02:10 0 comments

    I selected the Precision 3541 with the following configuration :

    • Intel i5-9400H
    • Intel GPU
    • 97Wh battery

    I upgraded to the following memory and SSD :

    One thing I was looking for was to be able to play 4K UHD HDR movies. I assume the on-board HDMI 2.0 would be able to support it. I should have done my research before as HDR is only supported on HDMI 2.0a.

    The Type-C port allows a lot of versatility. Using a Type-C to HDMI 2.0b adapter, I am able to play 4K UHD HDR 10bit @ 30Hz. The color space is reduced if the refresh rate is increased to 60Hz. See UPTab USB C to HDMI 2.0b Active HDR Adapter 4K 60Hz.

    Benchmark

    The i5-9400H is integrated with a 35W profile as listed in Intel TDP-down configuration. I was interested to find how this TDP-down was performed.

    By default the Turbo Boost Max Power is set to 35W. This limit can be changed with Intel Extreme Tuning Utility (XTU). 

    Summary :

    • Cinebench R20 @ 35W : 1758pts
      • Temp 86°C
      • Freq 3.30 GHz
    • Cinebench R20 @ 45W : 1892pts
      • Temp 94°C
      • Freq 3.63 GHz
    35W TDP
    45W TDP

    Increasing the TDP to 45W needs to be done manually. How it is reset to 35W is unknown. The configuration shown by Intel XTU shows 45W Turbo Boost Max Power but the system runs at 35W.

    Note on the cooling solution :

    • On Intel GPU system, there is only 1 heat pipe from the CPU to the fan assembly
    • The fan speed let the system heat up before ramping up. The balance between fan noise and heat is always a challenge.
    • Rising the laptop from the table leads to better temp : 78°C after Cinebench @ 35W

    Intel XTU shows the different CPU settings for the i5-9400H

  • Zotac EI751 Repasting

    12/09/2018 at 00:49 0 comments

    I got my EI751 at the beginning of 2016. After 2.5 years it was becoming a bit loud and hot.

    I got around to repasting it mid 2018, this is the log.

    I removed the screws holding the board down. This voids the warranty which is not ideal. It was quite tricky to pull the board out. I ended bending the enclosure where the antenna connector is. The top cover is actually screwed to the main shell, don't try forcing anything.

    The fan comes off with a bit of force as thermal pad sticks to the heatsink and the board. Have some thermal pad to replace the old one, 1.5mm tick should do it. The heatsink cover the CPU and the PCH.

    Testing with Intel XTU indicates thermal throttling and current limit throttling. Eventually a better cooling solution could be fitted ( would not use the standard case ). Then the actual power delivery may be the limiting factor. I may try to improve the cooling and build a custom case after I renew this computer.

    Prim95 load leads to thermal throttling and power limit throttling. With a better colling and increasing power limits, the boost clocks could be maintained.

    I wish there was more SATA slot as the single driver will not make the best media center. Improve cooling would go a long way to make this PC more silent to go by a TV.

    Intel I7 5775R - Intel XTU Tuning Control.

  • OpenWRT Bridge Firewalling

    07/17/2016 at 22:27 3 comments

    I configured my OpenVPN to connect 2 network at layer 2. Since broadcast goes across the tunnel and the 2 network have their own dhcp server for their respective gateway. The dhcp packet should be filtered.

    iptables -I zone_lan_forward -o br-lan -m physdev --physdev-out tap0 -p udp --dport 67:68 --sport 67:68 -j REJECT
    iptables -I zone_lan_forward -i br-lan -m physdev --physdev-in tap0 -p udp --dport 67:68 --sport 67:68 -j REJECT

    The system should be configured to enable bridge firewalling in /etc/sysctrl.config

    net.bridge.bridge-nf-call-iptables=1
    I configured the above setting on my custom OpenWRT 15.05 image and run into some issues.
    sysctl: error: 'net.bridge.bridge-nf-call-iptables' is an unknown key
    xt_physdev: Unknown symbol br_netfilter_enable (err 0)
    nf_conntrack: table full, dropping packet
    

    I would like to avoid changing my kernel on my device, just adding kernel module.

    Since I build my own image with only certain packages, the kernel doesn't have support for everything. On a clean build with the default configuration, the kernel only has CONFIG_BRIDGE=y. Support for bridge firewall is not enabled,CONFIG_BRIDGE_NETFILTER is not set.

    The kernel configuration can be change to generate net/bridge/br_netfilter.ko module for the system which has it missing. OpenWRT doesn't have a package for that kernel module. It would need to be copied manually.

    Add bridge firewalling support to iptables with iptables-mod-extra. The kmod-ipt-extra will have xt_physdev module because CONFIG_BRIDGE_NETFILTER is enabled in the kernel.

    How does default OpenWRT image has the support for bridge firewalling in their images ?

    OpenWRT enables all packages to be build which configure the kernel configuration with the required dependencies. When enabling ebtables package, the kernel configuration is overwritten with CONFIG_BRIDGE_NETFILTER=y.

    build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.36/.config.old:CONFIG_BRIDGE=y
    build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.36/.config.old:CONFIG_BRIDGE_NETFILTER=y
    build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.36/.config:CONFIG_BRIDGE_NETFILTER=y
    build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.36/.config:CONFIG_BRIDGE=y
    build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.36/.config.override:CONFIG_BRIDGE=m
    build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.36/.config.override:CONFIG_BRIDGE_NETFILTER=y
    build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.36/.config.target:CONFIG_BRIDGE=y
    build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.36/.config.target:CONFIG_BRIDGE_NETFILTER=m
    build_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/linux-3.18.36/.config:CONFIG_BRIDGE_NETFILTER=m
    build_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/linux-3.18.36/.config:CONFIG_BRIDGE=m
    

    I guess I will be need to be more careful when using opkg --force-depends option in the future. Once I have generated my image, I should use the matching SDK so I don't cause some kernel panic on the system.