Recent Updates Toggle Comment Threads | Keyboard Shortcuts

  • Nickolas Golubev 08:13 on January 31, 2020 Permalink | Reply
    Tags: #hexbright   

    Cool I got featured on the original Hex Bright project page by Christian (the creator of the HexBright)

    I updated the original HexBright fix post with an update to use an 8MHz crystal vs a 16MHz one. From my experience in fixing these, both 8MHz and 16MHz seem to work with no observable difference. (although I am not exactly sure why both would work in theory).

    So far I have fixed about 6 HexBrights from folks that saw my site since I made the original Blog post in 2017. Only one had damage from reverse polarity, the rest all had dead crystals. The crystal appears to be the most common failure point.

    • Robert 23:10 on April 4, 2020 Permalink | Reply

      Hello hoping you can help me with my Hexbright. I try to charge it any the green light does not come on if i press the the button i get a red light until i release it. On a volt meter the battery show 3.99 volts (original battery).

      • Nickolas Golubev 04:34 on April 5, 2020 Permalink | Reply

        Sounds like another failed crystal. If you want I can fix it for you, for free, or if you are handy with a soldering iron you can fix it your self. Send me an email if you want an address to ship to.

        • Robert 03:03 on April 22, 2020 Permalink | Reply

          i would happily send it to you. ill be honest i have combed this page and i am unable to find an email for you.

  • Nickolas Golubev 22:43 on June 22, 2019 Permalink | Reply  

    ZoneMinder 1.33.1 (master nightly) on Ubuntu 19.04 

    After upgrading to Ubuntu 19.04 I wanted to try the latest master snapshot of ZoneMinder 1.33.1 from the master ppa. Unfortunately there are older library dependencies for libx264-152 and libmp4v2 that are no longer available in the Ubuntu 19.04, disco repos. I found that I could easily just download the older .deb files and install without issue, which then allowed me to install the latest ZoneMinder 1.33.1 .

    For reference:
    apt-cache depends zoneminder |grep "libmp4v2|libx264"
    Depends: libmp4v2-2
    Depends: libx264-155
    |Depends: <libx264-142>
    |Depends: <libx264-148>
    Depends: libx264-152

    There is nothing really special other for the other install steps on Ubuntu 19.04 and this guide for Ubuntu 18.04 can be followed for the other steps:

    This is how you can add the master repository with the latest ZoneMinder 1.33.1:

    sudo add-apt-repository ppa:iconnor/zoneminder-master
    sudo apt update

    and this is how you would install the 2 older library dependencies:

    cd /tmp
    sudo apt install /tmp/libx264-152_0.152.2854+gite9a5903-2_amd64.deb

    cd /tmp
    sudo apt install /tmp/libmp4v2-2_2.0.0~dfsg0-6_amd64.deb

    You should now see that the 2 packages are installed:

    apt list --installed |grep "libmp4v2|libx264"
    WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
    libmp4v2-2/now 2.0.0~dfsg0-6 amd64 [installed,local]
    libx264-152/now 2:0.152.2854+gite9a5903-2 amd64 [installed,local]
    libx264-155/disco,now 2:0.155.2917+git0a84d98-2 amd64 [installed,automatic]

    After following the earlier guide and installing the two dependencies you can just do a:

    sudo apt install zoneminder

  • Nickolas Golubev 20:13 on December 26, 2017 Permalink | Reply  

    Install all available SCCM updates and reboot remote Windows machines 

    Ever needed to install every patch available in SCCM to multiple Windows machines, but have no SCCM access to push installs?

    I found this excellent script made by Eswar Koneti:

    It reads the clients.txt file for a list of hostnames / IPS, connects to each one remotely and installs everything avaible in SCCM.

    I also made an additional tool in order to automatically reboot all machines that are included in clients.txt.

    With both scripts you can push all security updates to your windows machines and then reboot them.


    *Edit clients.txt and put in the list of machines you would like to update and reboot. Either hostnames or IPs work.
    *Open a powershell prompt:
    *Set execution policy to allow for the execution of un-signed scripts.
    *Type “y” and press enter

    Set-ExecutionPolicy -scope Process -ExecutionPolicy Bypass

    *Now run the SCCM update script


    *Eswar’s script will create a InstallUpdates.log, check for errors.
    *Wait a few minutes for updates to install and then run the reboot all script, type “yes” to continue.


    *My script will create a reboot.log, check for errors.

    Download here:

  • Nickolas Golubev 23:50 on December 20, 2017 Permalink | Reply  

    Fixing a Hexbright 

    The HexBright came out as a KickStarter project several years ago. The light features a user programmable Atmega168, solid aluminum body, CREE XM-L U2 LED, accelerometer and temperature sensors. Since the lights are no longer available and are of such high quality I have had the pleasure of undertaking the repair of two of them.

    There are 4 common problems with the HexBright flashlight:.

    1) Battery will not charge and flash light does not turn on after being left off in storage for a long period of time. This is caused by the battery draining to the point where the internal protection circuitry on the battery will not allow for it to be charged back up.
    — symptom: flash light does not turn on

    Dropping the flashlight and causing the internal 16mhz 8Mhz SMD crystal to break.
    — symptom: flash light does not turn on

    USB connector breaking off of the board.
    — symptom: can not charge or connect flashlight via USB to computer

    Reverse battery insertion. With no reverse polarity protection this can destroy many things.
    –symptom: flash light does not turn on, battery was inserted the wrong way, magic smoke.

    The solutions:

    1) The battery is the easiest to replace. The LGABD11865 18650 D1 3000mAh is a good fit and offers on-board protection. (not all LGABD11865 have a protection circuit, look for a black plastic plate on the positive side of the battery and a metallic ribbon connecting the negative side to the protection circuit.) In this case it is good to remove the 2 screws holding the battery spacer in place, drop the battery in and then put the spacer back in. If you do not do this the battery is too hard to wedge in and the insulation on it can be damaged.

    2) The crystal is probably the second easiest to replace. These can be had very cheap on eBay 10PCS 16M 16.000M 16MHz 16.000MHz Passive Crystal 3225 3.2mm×2.5mm SMD-4PIN  “10pcs 8m 8.000m 8mhz 8.000mhz passive crystal 5032 5mm×3.2mm smd-2pin new” You can use a slightly smaller crystal than originally came with the flashlight as the pads extend out quite far. You can also use a 4-pin crystal placed skewed on 2 the pads.

    You will need hot air and flux to remove the old crystal and replace it.

    3) The connector may need to be fully replaced or the pads may need to just be re connected. This is a delicate procedure as hot air can melt plastic. Plenty of flux helps. With my specific case the pads just needed to be reconnected with the pins. A glob of solder and subsequent solder wick did the job.

    4) This is the most complex issue to fix. Because there is no reverse polarity protection on the light I found that 3 ICs were destroyed on the board and 2 pads under the LED driver IC were burned. The parts can be bought on either eBay or DigiKey.

    1) TPS63020DSJR, LED Driver IC3

    2) MIC5353-3.3YMT-TR, Voltage regulator IC7

    3) Mcp73831t-2Ac, Lion charge controller IC5

    Hot air and plenty of flux was required to remove the broken ICs. The LED and leads should be removed from the board so that the board can be worked on easier. To repair the 2 broken leads on the LED driver copper tape was needed as well as liquid solder to re-tin the pads after clean up.

    All fixed:

    • nobody 22:35 on May 3, 2018 Permalink | Reply

      it’s not a 16mhz xtal to repair either v1 or v2 boards (2 pad or 4 pad crystal) it’s 8mhz.

      • Nickolas Golubev 08:31 on January 31, 2020 Permalink | Reply

        Yup, you are correct, although 16mhz seems to work with no ill effect (no idea how). I corrected the post.

    • Wesley Nixon 20:03 on March 3, 2019 Permalink | Reply

      Any chance you might be able to fix another of these? Was testing some extra batteries in my beloved Flex and put one in backwards like a dope 🙁 I can solder, but this size is beyond what my eyes and 42 year old nerves can handle. Time, materials, something extra for your troubles, you can just about name your price as a love this light!

      • Nickolas Golubev 20:15 on May 9, 2019 Permalink | Reply

        Sure, I could do that… I believe I still have components left over. Send me an email. nick _a-t_

    • Drew S 02:10 on May 18, 2019 Permalink | Reply

      Thanks for this post. I’ll be bookmarking it for later reference. So far the only part of my HexBright that’s needed repair or replacement is the o-ring.

      • Patrick 20:15 on December 20, 2020 Permalink | Reply

        What’s the spec on the o-ring? Is it 18mm ID x 2.5mm?

    • Matthew 07:01 on August 14, 2019 Permalink | Reply

      I have a much-beloved hexbright which I dropped and killed. I suspect, thanks to your helpful faq, the oscillator is the problem. I don’t have the tools for the job; would you be willing to repair it for a fee? I would very much like to get it working again so I can give it to my son as a way to encourage learning programming. The accelerometer makes it ideal for kids fiddling! It would be very much appreciated.

      • Nickolas Golubev 09:27 on October 28, 2019 Permalink | Reply

        Sure, shoot me an email.

    • Nathan H 21:44 on August 29, 2019 Permalink | Reply

      Nick, one of my Junior Sailors saw my disassembled flashlight on the table and just stuck the battery in backwards. I found this page via an angry google search looking for advice. I know i only paid $60 on the kickstarter for the thing but i hecking love this light. Its been around the world with me a couple times now and i just don’t want to let it go. Can i compensate you for a repair?

      • Nickolas Golubev 09:28 on October 28, 2019 Permalink | Reply

        Sure, shoot me an email.

    • bachakil 01:09 on October 28, 2019 Permalink | Reply

      My flex is locked some how and you are the only place I’ve found with any talk of this light. the battery is charged and when I push the button it blinks red but no light is turning on. When it is fully charged it shows me the green button. PLEASE HELP!

      • Nickolas Golubev 09:29 on October 28, 2019 Permalink | Reply

        Sure, shoot me an email. nick _a-t_

    • Ed Martini 04:37 on January 28, 2020 Permalink | Reply

      WTB a hexbright. Lost mine. 🙁

      • Nickolas Golubev 07:48 on January 31, 2020 Permalink | Reply

        I wish the project would be picked up again.

      • Travis 07:04 on April 28, 2020 Permalink | Reply

        I’m in the same boat. Would love a replacement. ☹️

    • Simon 13:49 on January 29, 2020 Permalink | Reply

      Trying to figure out my issue – hope you can help. I charge the flashlight (its green while it charges). I try after to turn it on (it doesn’t turn on and button light is red) what could the issue be ? Dead battery ?

      • Nickolas Golubev 07:47 on January 31, 2020 Permalink | Reply

        Dead crystal. 99%

        • Simon 09:27 on February 2, 2020 Permalink | Reply

          darn … no way I can fix that myself

          • Nickolas Golubev 09:29 on February 2, 2020 Permalink | Reply

            E-Mail me, I am okay fixing it for you.

    • Steve Carpenter 18:42 on February 21, 2020 Permalink | Reply

      I love my Hexbright and the only issue I have had was the battery drained and I found a replacement which works great. Have you played with or done any programming? if so, is there a tutorial you can share?

    • Dan 04:50 on July 16, 2020 Permalink | Reply

      Thank you for the info on the crystal. My first hexbright suffered crystal damage due to a drop and another community member helped me with the repair – but this time I managed it on my own. Thanks to your information the light is back to normal condition and not so sensitive to the slightest little shock, like setting it down or tapping with a finger.

    • Demetrius 02:21 on November 3, 2020 Permalink | Reply

      Hi Nickolas, I tried to replace my crystal after I dropped the flash light but it still doesn’t work. All was good prior to the drop. Is it possible for you to fix it for me? Regards, Demetrius C

    • Serge 16:54 on November 8, 2020 Permalink | Reply

      Nick you still fixing these guys ? Also reversed the battery ;-(

    • Jess Robinson 20:26 on November 22, 2020 Permalink | Reply

      Mine’s working fine, though I’ve just noticed the o-ring near the switch is looking a fair bit cracked – what size did folks replace that with?

    • Patrick 19:57 on December 20, 2020 Permalink | Reply

      I charged my battery externally. While holding back button, get RED LED and Vcc goes to +3.3V. No green LED. USB connects to serial port. Scope says my XTAL is not oscillating. Any reason why this crystal from Digikey shouldn’t work?

  • Nickolas Golubev 23:12 on December 20, 2017 Permalink | Reply  

    Hexbright schematics 

    This is in relation to the next post. These were found while searching the internet on:

  • Nickolas Golubev 23:15 on January 27, 2014 Permalink | Reply
    Tags: , linux, open source, rdp, , , xrdp   

    Installing XRDP onto RHEL6 / Red Hat Enterprise Server 

    I was told by a senior colleague that XRDP ( is a great way to remotely connect to your Linux servers through windows remote desktop protocol. It extends an XOrg session through through VNC and then the RDP. Here is how you can get it working on RHEL6!

    sudo yum install gcc make pam-devel openssl-devel vnc-server autoconf automake libtool libX11-devel libXfixes-devel


    tar zxvf xrdp-v0.6.1.tar.gz
    cd xrdp-v0.6.1
    sudo make install

    Add user(s) to the 100, “users” group to allow them to login via RDP

    sudo nano /etc/group

    Edit iptables to permit inbound RDP

    sudo nano /etc/sysconfig/iptables


    -F INPUT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3389 -j ACCEPT

    sudo service iptables restart

    Make it a little more secure by enabling 128 bit 2-way encryption

    sudo nano /etc/xrdp/xrdp.ini

    Change crypt_level=low to crypt_level=high

    Generate a new RSA key

    sudo /usr/local/bin/xrdp-keygen xrdp auto

    Start XRDP up and then try and connect to it using remote desktop client in Windows

    sudo /etc/xrdp/ start

    Finally make XRDP auto start as a service.

    sudo ln -s /etc/xrdp/ /etc/init.d/xrdp
    sudo chkconfig --add xrdp
    sudo chkconfig xrdp on
    sudo service xrdp start

  • Nickolas Golubev 19:36 on December 27, 2013 Permalink | Reply  

    Installing XSpice (xf86-video-qxl-0.1.0) onto Redhat Enterprise Server 6 RHEL6 

    I have been working on getting XSpice enabled on x64 RHEL6. XSpice is an X11 driver that allows for remote connections much like VNC. This install is not trivial as XSpice is still an experimental product so there are only packaged / repoed versions of it for Fedora Core.

    Firstly RHEL optional RPMS must be enabled

    #nano /etc/yum.repos.d/redhat.repo

    enable rhel-6-server-optional-rpms

    Now install a bunch of packages.

    #yum install kdebase
    #yum install xorg*
    #yum install spice-server-devel
    #yum install python-argparse
    #yum install xorg-x11-util-macros*
    #yum install spice-server-devel spice-protocol

    Now download / make / install randr:

    #tar zxvf randr12.v1.tar.gz
    #cd wip/randr12.v1
    #make install

    Now get xf86-video-qxl-0.1.1 and xf86-video-qxl-0.1.0

    #tar zxvf xf86-video-qxl-0.1.1.tar.gz

    #tar zxvf xf86-video-qxl-0.1.0.tar.gz

    Compile the 0.1.0 version (the 0.1.1 would not configure / make due to a library dependency issue with RHEL6)

    #cd xf86-video-qxl-0.1.0
    #autoreconf -i && ./configure --enable-xspice && make
    #make install
    #cp src/.libs/ /usr/lib64/xorg/modules/drivers/

    I copied the XSpice startup script and X11 config from xf86-video-qxl-0.1.1 because it has more startup options yet is backwards compatible with xf86-video-qxl-0.1.0

    #cd ..
    #cp xf86-video-qxl-0.1.1/scripts/Xspice /home/normal_user_account/
    #cp xf86-video-qxl-0.1.1/examples/spiceqxl.xorg.conf.example /etc/X11/spiceqxl.xorg.conf
    chown normaluser.normaluser /home/normal_user_account/Xspice

    Now add iptable rules if you have iptables enabled

    #nano /etc/sysconfig/iptables
    -F INPUT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 5900:5950 -j ACCEPT
    #service iptables restart

    Now drop back to a normal, non-root account and run the XSpice script:

    #cd ~
    #./Xspice --port 5903 :4.0 --xsession /usr/bin/startkde --disable-ticketing

    I am starting a KDE session instead of a GNOME because there seems to be a bug preventing GNOME from working with Xspice (

    Do not run this as root! there is no password and it should just be used for testing unless you enable stronger authentication.

    You can now connect using the virt-viewer client (

  • Nickolas Golubev 22:35 on December 5, 2013 Permalink | Reply
    Tags: , java, jdk, maven, ,   

    Installing MAVEN on Red Hat Enteprise Server 6.x (rhel6) 

    Just had to install maven on a rhel6 box… not sure why it is not in the yum / up2date repo.

    First you need JDK7.x:

    get it at:

    “Linux x64 116.91 MB jdk-7u45-linux-x64.rpm”

    install the RPM using

    rpm -Uvh jdk-7u45-linux-x64.rpm

    then remove openJRE from the alternatives list:

    alternatives --list java
    alternatives --remove java /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java

    Double check the java version:

    java -version

    It should say:
    java version "1.7.0_45"
    Java(TM) SE Runtime Environment (Build 1.7.0_45-b18)

    Now go to the Maven site:

    and get the latest version of 2.x or 3.x (using 2.2.1 here)


    and install:
    tar zxvf apache-maven-2.2.1-bin.tar.gz
    mv apache-maven-2.2.1 /opt/
    ln -s /opt/apache-maven-2.2.1 /opt/maven
    nano /etc/profile.d/

    paste this:

    export JAVA_HOME=/usr/java/latest
    export MAVEN_HOME=/opt/maven
    export M2_HOME=$MAVEN_HOME
    export PATH=$PATH:$MAVEN_HOME/bin

    -save (ctrl-o)

    -new session


    mvn --version

    Should say:

    Apache Maven 2.2.1

  • Nickolas Golubev 22:27 on December 4, 2013 Permalink | Reply
    Tags: import, move, wordpress   

    Just moved the whole site from to a wordpress site on my own hosting provider. Seems like a smooth transition!

  • Nickolas Golubev 03:02 on March 6, 2013 Permalink | Reply  

    De-Crappify Ubuntu 12.10 (Quantal Quetzal) and remove Unity / Lenses / Amazon / Etc… 

    I have not used Ubuntu in a couple of versions and just installed Ubuntu 12.10 (Quantal Quetzal) i386 as a fresh install.

    I was mortified by the amount of junk bundled with this new version including Amazon shopping ad integration. Check out for more info on Ubuntu’s take on this.

    Long story short, it had to be purged!

    Here is the script (to be run as root) I came up with to remove all the new junk and install back GNOME.

    apt-get --yes purge gnome-control-center-signon
    apt-get --yes purge unity unity-2d unity-2d-places unity-2d-panel unity-2d-spread
    apt-get --yes purge unity-asset-pool unity-services unity-lens-* unity-scope-*
    apt-get --yes purge liboverlay-scrollbar*
    apt-get --yes purge appmenu-gtk appmenu-gtk3 appmenu-qt
    apt-get --yes purge firefox-globalmenu thunderbird-globalmenu
    apt-get --yes purge unity-2d-common unity-common
    apt-get --yes purge libunity-misc4 libunity-core-5*
    apt-get --yes purge ubuntuone-client python-ubuntuone-storage*
    add-apt-repository ppa:gnome3-team/gnome3 && apt-get -f update
    apt-get --yes -f install gnome-shell gnome-tweak-tool gnome-session-fallback
    rm -rf /usr/share/applications/ubuntu-amazon-default.desktop
    rm -rf /usr/share/applications/UbuntuOneMusiconeubuntucom.desktop

    Secondly to remove the Guest login and Remote login options from the login screen (a security issue in my opinion) run this:

    /usr/lib/lightdm/lightdm-set-defaults --allow-guest false --show-remote-login false

    And now you have a pretty decent new version of Ubuntu that is not sending your personal data back to Amazon.

compose new post
next post/next comment
previous post/previous comment
show/hide comments
go to top
go to login
show/hide help
shift + esc