Dahua VTH escapades

I would like to use the Dahua Home Assistant Integration to pull the intercom in an apartment into the home automation. Unfortunately, the credentials in the intercom UI are starred out.

Attempt 1 - MicroSD card

Inside the unit is a microsd card. Unfortunately, there is nothing on it, presumably it is for storing image snapshots. There does not seem to be a way in the UI to back up the settings to the SD card Either.


Bricked Netgear M5300 switch via "Erase Permanent Storage"

I managed to brick one of my Netgear M5300 switches while trying to factory reset it, by selecting "Erase permanent storage" from the boot menu. At this point, it displays 'Uboot M5300 VerNo=' on the console and does not progress further.

To recover, get a FAT32 formatted USB drive, and save the firmware as 'boot.stk' on it.

Insert the drive into the switch, connect to the serial console and power up the switch.

Interrupt Uboot by pressing Q. You should get a '=>' prompt.

120mm Fan to 125mm/6" duct adapter

This is a 3d printed fan shroud that I designed and 3d printed myself. It is made from durable ABS plastic, and allows you to connect a 125mm flexible duct to your miner's exhaust, allowing you to vent the hot air directly outside (or in winter, into your air conditioning ducts).

The mount features a negative taper, such that pulling on the duct increases the clamping force.

You will need 4 50mm M4 machine screws, and a 125mm diameter screw clamp to fasten the ducting on.

Shrinking mbed binaries

I'm currently working on a 1wire library for mbed, so that 1wire devices can be implemented on mbed compatible microcontrollers (really, just STM32 for now).

One of the things that would be really useful is to be able to update the firmware of these devices over the 1wire bus, so that they don't need to be decomissioned for updates.

Jenkins GroovyAxis - basing an axis on the content of the build

It took me a while to figure this one out, the docs online were pretty thin, so I'm putting this here to help the next person who gets stuck.

There are 2 tricks here.

  1. It's not clear how to get the workspace in GroovyAxis. It has to be accessed through the 'context' object, but is null when the script is run when the job is saved. It is populated when the job is built.
  2. The workspace exists on the slave node, but the Groovy script is run on the master. You must use the FilePath object to correctly access the files on the slave


Subscribe to