Welcome, Guest
You have to register before you can post on our site.



Search Forums

(Advanced Search)

Forum Statistics
» Members: 471
» Latest member: Adamcar123
» Forum threads: 181
» Forum posts: 1 036

Full Statistics

Online Users
There are currently 32 online users.
» 0 Member(s) | 30 Guest(s)
Bing, Google

Latest Threads
Mailcow-dockerized system...
Forum: Other
Last Post: Ashus
28.6.2021 01:25
» Replies: 0
» Views: 89
How to add an OpenWRT dev...
Forum: Guides / Návody
Last Post: Ashus
2.4.2021 03:21
» Replies: 0
» Views: 555
RamDisk - cause of BSOD P...
Forum: Other
Last Post: Ashus
27.8.2020 12:54
» Replies: 0
» Views: 1 056
OpenWRT 19.07.7 squashfs ...
Forum: Other
Last Post: Ashus
15.2.2020 04:38
» Replies: 0
» Views: 4 699
Call Of Duty: PHP Rules C...
Forum: Game tools
Last Post: Donatosdog
8.8.2018 04:52
» Replies: 72
» Views: 80 800
Proxy Guard
Forum: Bash scripts
Last Post: Donatosdog
8.8.2018 04:24
» Replies: 1
» Views: 5 623
Find apps blocking APK in...
Forum: Guides / Návody
Last Post: Donatosdog
8.8.2018 01:44
» Replies: 4
» Views: 7 356
Google AdSense Extension ...
Forum: Other
Last Post: SaRan
18.7.2018 07:42
» Replies: 34
» Views: 51 102
Call Of Duty: PHP RCon 2....
Forum: Game tools
Last Post: Brenton
14.3.2018 10:39
» Replies: 385
» Views: 342 807
Call Of Duty 2: Kafemlyne...
Forum: Game tools
Last Post: Ashus
6.1.2018 04:17
» Replies: 75
» Views: 75 193

  Mailcow-dockerized systemd control script
Posted by: Ashus - 28.6.2021 01:25 - Forum: Other - No Replies

You can use this control script to enable commands like service mailcow restart just like with other services.
Add the following file named mailcow.service to directory /etc/systemd/system of you Debian installation.

Description=Mailcow-dockerized control
# no need to enable as a service - mailcow-dockerized gets executed on reboot automatically

ExecStart=/usr/local/bin/docker-compose up -d
ExecStop=/usr/local/bin/docker-compose down


  How to add an OpenWRT device to UniFi network with 802.11r Fast Transition roaming
Posted by: Ashus - 2.4.2021 03:21 - Forum: Guides / Návody - No Replies

This assumes the following scenario:

  • you have an existing UniFi network of one or more APs with Fast roaming enabled
  • you also want to utilize your central router with modern wi-fi support with 802.11ac (eg. TP-Link Archer C7) and save on buying an extra AP
  • you want to roam between APs with minimal outages
First use your UniFi controller, use Devices page, Manage an AP, click Debug to open a Terminal. Next step depends on your firmware. Basically type
ps -w|grep hostapd and look at the processes. There are configuration files used for each SSID. Look into them by using cat /etc/aaa1.cfg and copy the configuration to a text file in your computer. Each network configuration is different, while the same SSID on different radios have the same mobility domain and keys.

Now configure your Wi-Fi network in OpenWRT LuCI. At the time of writing this, OpenWRT version was 19.07.7. The resulting configuration should look like this in your /etc/config/wireless file.
option encryption 'psk2+ccmp'
option ieee80211r '1'
option ssid '<YOUR_SSID>'
option key '<YOUR_KEY>'
option mobility_domain '<YOUR_MOBILITY_DOMAIN>'
option pmk_r1_push '1'
option ft_over_ds '0'
option reassociation_deadline '3000'
option nasid '<YOUR_IAPP_KEY>'
option skip_inactivity_poll '1'
option wpa_disable_eapol_key_retries '1'
option ft_psk_generate_local '1'
option short_preamble '0'
option ieee80211w '1'

This works OK with this UniFi network configuration:

This is verified to work. I learned it the hard way: I configured the channels to the same number on both APs, booted up a live Kali Linux, switched NIC to monitor mode, selected that channel and captured packets using Wireshark. Should you need to do this debugging as well, look for packets marked as Probe Response and carefully compare that packet from UniFI AP with the one from OpenWRT, preferably in two windows side-by-side. There will be many different capabilities, but they mostly don't matter. Unlike some of them, that do matter.

Also, initially I thought it is desirable to have the same authentication capabilities displayed in WiFi Analyzer on my phone. I was mistaken, that Management Frame Protection (ieee80211w) needs to match even though it extends the capabilities with SHA256 strings. It is probably a feature in newer hostapd version present on OpenWRT.

To test roaming working properly, you can use Ubiquiti WiFiMan from Google Play store. Naturally the roaming doesn't appear in UniFi Controller Alerts, because that is UniFi proprietary add-on.

As a side-note, I was genuinely surprised to see UniFi firmware is based on old OpenWRT version 17.x (when it was forked to LEDE).

Sadly, this short guide took a lot of time to make as it didn't want to work until the very end. The main thing that kept me going was the idea, that "It's just an old OpenWRT, it is possible, unless..."

  RamDisk - cause of BSOD PFN_LIST_CORRUPT on Windows 10
Posted by: Ashus - 27.8.2020 12:54 - Forum: Other - No Replies

I tried to upgrade my Windows 10 to 2004 build lately. Everytime I tried to do it, I had to revert because of PFN_LIST_CORRUPT BSODs happening more and more frequently after boot (from 20 to 5 minutes). It happened on both, my AMD Ryzen 7 and Intel i3 platform. I suspected antivirus software at first, tried to remove it, but it didn't help.

The cause was Softperfect RAM disk 3.4.8 (last version under free-for-personal-use license).
I removed it an used latest ImDisk Tools released for free. This fixed the problem.

I use Ramdisk for volatile data, browser cache and user TEMP directory, mainly because of SSD limited writes. Also, a single reboot automatically cleans this drive after some badly written apps. The only downside of this - there are some application installations, which unpack themselves once again to Temp and they can run out of space, so then it is needed to temporarily redirect Temp back to system drive.

To have persistent Ramdisk while using ImDisk Tools, you need to use an image or Task Scheduler, because built-in persistency over reboots works only partially. The Ramdisk ends up created, but unformatted. I suspect there is a problem with security as only administrators can format disks and if launched from admin command line, it works until first reboot. Either create empty Ramdisk and create a directory there using these task actions:

imdisk -a -m Z: -t vm -s 3G -p "/fs:ntfs /q /y"
mkdir Z:\temp

or prepare an image of specific size and mount it once with persistency (-P):
imdisk -a -P -m Z: -o sparse -o awe -f c:\ramdisk.img

To unmount any of them you can use:
imdisk -d -m Z:

In system variables, you can then modify the user's variables TEMP and TMP to point to Z:\temp.
Chromium browsers need to be launched with parameter as in example: --disk-cache-dir=z:\Vivaldi\ every single time.

  OpenWRT 19.07.7 squashfs for ath79 4MB devices (-tiny) with LuCI
Posted by: Ashus - 15.2.2020 04:38 - Forum: Other - No Replies

This is a package of OpenWRT 19.07.7 stable builds for targets ath79.

Modifications against default tiny packages:

  • removed PPP support
  • removed OPKG
  • added LuCI
  • added relayd
  • replaced wpad-mini by wpad-basic
This way the builds could fit into squashfs (factory/sysupgrade) compatible builds. Relayd is there for cases where you use the device as LAN extender over WLAN without additional NAT. Wpad-basic enables the use of 802.11r.

Please note there is still upgrading incompatibility against deprecated target ar71xx (OpenWRT version 18.06 or older), please see https://openwrt.org/docs/guide-user/inst...x.to.ath79 for more info.

Builds have not been tested for all devices, but compiling resulted in no errors.

For wget in console you can use extra configured non-secure source http://openwrt.ashus.net/19.07.7-targets...tiny-luci/

  How to calibrate low-end 5.1 speakers volume using Windows controls
Posted by: Ashus - 7.5.2017 01:30 - Forum: Guides / Návody - No Replies

This is a guide to calibrate levels of your cheap 5.1 analog surround sound setup on a Windows machine. If you have an expensive setup, there is YPAO or other automatic setup system with microphone. However to emulate this feature for free with any speakers, this is one way to go. It is especially useful if you go with cables around the furniture on in walls to hide them. The signal may be lost and one rear side will be louder than the other.

You will need these media files:

.mkv   PinkNoise 7.1.mkv (Size: 3,53 MB / Downloads: 0)
.mkv   PinkNoise 5.1.mkv (Size: 2,65 MB / Downloads: 3)
.mkv   PinkNoise 2.0.mkv (Size: 891,58 KB / Downloads: 0)
They all are 1 minute generated Pink Noise 500 - 2000Hz with various track numbers. Select the one you need to match your setup.

Also you will need a smartphone and this app: Sound Meter or a dB loudness meter.

For getting sane environment please use Media Player Classic Home Cinema and after opening a video right click the dark window and select Filters - LAV Audio Decoder. Verify, that you have the checkbox Enable mixing under Mixer tab turned off.

Follow these steps:

  1. Make sure all speakers are set up at fixed posititons according to numerous guides on the net. Make sure all speakers are connected and after opening audio devices you have the correct speaker count set under Configuration button.
  2. Open up audio devices, click on connected speakers and Properties. On Levels tab click the Balance button.
  3. Start your DB meter on your phone and place it on a stool to a position of your ears, right in front of you. You will need a quiet environment, so close the door or tell your roomie to keep it down if you haven't already.
  4. Prepare the test audio file in MPC-HC and play it (you may consider enabling Loop).
  5. Set your speakers volume to medium (not too silent and not reaching their limits).
  6. Put all sliders to 0, try one by one to identify which speakers are used.
  7. For all active speakers (except subwoofer) repeat this: put only the slider of one speaker to 100, wait for a few seconds and mark down the loudness in dB on a piece of paper.
  8. Now look at your paper and find the lowest number (57dB for me). This is the loudness you need to match on all other speakers.
  9. Again go one by one and move the slider to a position in which the loudness is matched while all other sliders are off. Mark these results to a piece of paper.
  10. Set all sliders to positions according the results on the paper you just made.
  11. Subwoofer should be set by ear and to your liking preferably while watching a movie.
  12. You are done. Make sure nobody adjusts balance or surround knob on your subwoofer if it is present, you'd have to repeat this.

  GIT global configuration for Windows
Posted by: Ashus - 19.4.2017 06:22 - Forum: Guides / Návody - No Replies

Fine setting for keeping unwanted changes to a minimum.

git config --global http.sslVerify false
git config --global core.autocrlf false
git config --global pull.rebase true
git config --global credential.helper wincred

  How to insert separately styled HTML e-mail to heavily styled page
Posted by: Ashus - 7.3.2017 04:15 - Forum: Guides / Návody - No Replies

Use iframe like this!

<iframe id="unstyled-text" sandbox="allow-scripts allow-popups allow-same-origin" srcdoc="<?= htmlspecialchars('<head><base target="_blank"></head><body>' . $html . '</body>') ?>"></iframe>
        // hack for IE and browsers without srcdoc support
        var $u = $('#unstyled-text');
        var $body = $u.contents().find('body');
        if ($body.html() == '')

  How to find wide elements when making a web adaptive / responsive
Posted by: Ashus - 14.9.2016 10:39 - Forum: Guides / Návody - No Replies

Provided you have jQuery, open you dev. tools, adjust the window to designated dimensions and put this to the console in your browser:

$(':visible').each(function(){var w = $(this).outerWidth(); if (w<=360) return; console.log(w, this)})

You can adjust the 360 px number to any number you need for your breakpoint.

  Ford Code service ukbookshelf.co.uk review
Posted by: Ashus - 23.6.2016 12:42 - Forum: English - No Replies

I'd like to just inform any potential Ford V code radio owners, that the service ukbookshelf.co.uk for retrieving lost or never owned radio codes indeed works.
I sent my 3.95 GBP and on Saturday morning the code arrived as promised. And it worked just fine.

  OpenWRT static IPv6 DUID auto-assign script
Posted by: Ashus - 13.12.2015 11:05 - Forum: Bash scripts - No Replies

The script and idea was based on jhnphm's post here.
The idea is to assign client's DUID addresses (IPv6) just like MAC addresses for IPv4 to the config file. The prerequisite is to have odhcpd configured and IPv6 prefixes filled for DHCP clients via LuCI. Since the DUID is required for static IPv6 to work and there are no fields in LuCI, you can use the script after the client is seen for the first time (probably configured dynamically).


for I in $(uci show dhcp|awk -F '(\\[|\\]|\\.|=)' '{if ($2=="@host" && $5=="name") print $6}'); do # find existing static host entries and find hostnames
    NAME=$(echo -ne $I | sed -r "s/'//g")
    DUID=$(cat /var/hosts/odhcpd |awk -F ' '  "{if (\$1 == \"#\" && \$5 == \"$NAME\") print \$3 }"|head -n 1)  # find duid for existing hostname in leases
    ID=$(uci show dhcp|awk -F '(\\[|\\]|\\.|=)' "{if (\$2==\"@host\" && \$6==\"$I\") print \$3}") # Find placement of host entry
        if [ "$DUID" != "0000000000000000000000000000" ]; then
                echo Found: $NAME = $DUID
                uci set dhcp.@host[$ID].duid=$DUID # Set DUID
echo Commiting changes.
uci commit
killall -HUP odhcpd