Techblog

python-netsnmpagent 0.6.0 released

python-netsnmpagent version 0.6.0 has just been released.

This release is the first to officially introduce Python 3 support
while staying compatible with Python 2.6 and 2.7. It was tested with
Python 3.5.

Other changes since 0.5.3:

  • Introduction of the netsnmptestenv Python module
  • Introduce test cases using nose as testing framework
  • Fix packaging of examples

Please note that by contrast to 0.5.x and earlier releases the license for python-netsnmpagent has changed to the GNU Lesser General Public License (LGPL), version 3.

As usual:

A sorted channels setup with a LG 42LB671V TV and a USALS motorized satellite dish

My LG 42LV671V TV is capable of receiving multiple satellites in a USALS motorized satellite setup. However, there are bugs and deficits in LG’s firmware and the correct order of steps to perform to get a proper channel list is not trivial.
Continue reading “A sorted channels setup with a LG 42LB671V TV and a USALS motorized satellite dish”

Custom ZDDX device description files and flowchart for Philio 4-in-1 PST02-A and Qubino DIN dimmer ZWave devices

If you’re like me experimenting with home automation you’ll certainly have come across Philio’s 4-in-1 Multisensor PST02-A/B/C devices. They unite multiple functions:

  1. Door/window sensor (PST02-A, PST02-C)
  2. PIR motion detection (PST02-A, PST02-B)
  3. Illumination sensor (all three)
  4. Temperature sensor (all three)

Unfortunately it’s not only their Website that lacks any useful information, the supplied manual (available online at vesternet.com, eedomus.com and zwave.ie) is a prime example of Taiwan English that is very hard to understand. For example:

The PIR motion re-detected interval, in the “Test Mode” fixed to 6 seconds. In the “Normal Mode”, it according to the setting of the configuration NO. 8.

This makes use of the device quite challenging given that it is actually give flexible and powerful. Luckily the manual has some flow charts that give some hints. It gets way worse, however, in parts of the description of configuration parameter Nr. 6:

Bit 0 Disable magnetic integrate illumination to turn ON the lighting nodes in the association group 2. (1:Disable, 0:Enable) PST02-A, PST02-C
Bit 1 Disable PIR integrate illumination to turn ON the lighting nodes in the association group 2. (1:Disable, 0:Enable) PST02-A, PST02-B
Bit 2 Disable magnetic integrate PIR to turn ON the lighting nodes in the association group 2. (1:Disable, 0:Enable) PST02-A only

Got it? No? Welcome to the club, you’re not alone! There are a number of posts and pages on the Net discussing what the exact meaning of these three bits actually is.

This vesternet.com application note on using the sensor with VERA suggests that Bit 0 and Bit 1 would apply to disable lighting the sensor’s red LED when one of the two events happen — however the red LED normally does not light at all unless you’re in Test mode or low on battery, so that doesn’t make sense. And Bit 2 would mean “Do not combine PIR and door sensors” — now what is that supposed to mean?

What is rather clear is that these bits influence which events result in sending a “Basic Set” command to the devices in association group 2, telling these to turn on (by contrast to configuration parameter 5 bit 2, which disables Door/window change detection completely, and configuration parameter 3, setting the PIR sensitivity, where a value of 0 also completely disables PIR motion detection). Accordingly, bit 0 applies to for door/windows events (explaining why it is of no use with the PST02-B variant) and bit 1 applies to PIR motion events (explaining why it is of no use with the PST02-C variant).

Bit 2, however, remains a mystery: useful on the PST02-A variant only, it could be that setting it disables both but that is pretty redundant as one could just set bits 0 and 1 to 1 just as easily.

My observation is a different one: in my experiments with my PST02-A, it showed that I had to explicitly set Bit 2 to 1 for any of the other two bits to have any observable effect. The bit combinations 010, 100 and 110 did not have any effect, it had to be 011, 101 and 111.

This is what I document in my custom PST02 ZDDX file for use with the RaZberry software. I’ve also completely rewritten the option descriptions into proper English, making the PST02 way more accessible than when using the default file downloaded from the pepper1.net database (which also has a message “This database is not maintained anymore and will be shut down shortly. Please use the Z-Wave Alliance Product Catalogue as an alternative.”).

But wait, there’s more! Because the configuration settings are so comprehensive, I’ve created an all-in-one flowchart for the PST02-A (draw.io XML source file) that shows very nicely a.) the inner workings of the sensor and b.) which configuration parameter affects what. The flowchart and its source are licensed CC-BY-SA.

In addition, I’ve created a ZDDX file for the Qubino DIN dimmer device. This currently uses the manual’s English, eventually I might go and rewrite it into proper English, too.

All the files are available on Github — feel free to fork and send a PR!

Flashing a Huawei E3372h 4G LTE stick from Hilink to Stick mode

The Huawei E3372 is quite a popular LTE stick: it’s widely available (in retail stores, on eBay and also in branded variations, eg. “Telekom Speedstick V”, “Megafon M150-2”) and rather affordable (currently starting at €60 in Germany). It features a LTE Cat 4 modem supporting up to 150 MBit/s download and up to 50 MBit/s upload speeds, falls back to (DC-)HSPA(+), UMTS and EDGE, if necessary, and has quite small dimensions (88m x 28mm x 11.5mm). Continue reading “Flashing a Huawei E3372h 4G LTE stick from Hilink to Stick mode”

Maintaining home network access from the outside with a network-controllable power plug, OpenWrt/LEDE and a 4G LTE stick

Internet routers are supposed to operate in a stable fashion. Except they don’t (FritzBox *cough*) – especially when you’re away from home and need access to your home resources. Having to call someone related to go and reset the thing tends to get awkward. If you encounter this often enough, you begin looking for a remote reset solution. Continue reading “Maintaining home network access from the outside with a network-controllable power plug, OpenWrt/LEDE and a 4G LTE stick”

python-netsnmpagent 0.5.3 released

python-netsnmpagent version 0.5.3 has just been released.

This release contains fixes for using IpAddress objects as table indices.

As usual:

Whoever designed Docker and containers clearly wasn’t responsible for InfoSec – a rant

Not just recently I’ve been trying to get a grasp of all the containerization hype and try to identify possible effects on the ways I see to do certain things. I’m reluctant to use the word “operations” here because I’m not really much of an “operations guy” in the sense of actually having ongoing responsibility for a significant number of machines, doing monitoring, getting woken up by a pager etc. I do however have enough administration experience on a small scale to be able to tell which ideas could work and which ideas clearly won’t, at least in the near time. I’m not going to draw the dividing line between “ops” and “devs” here once again, that topic has been bashed about enough for a long time. Continue reading “Whoever designed Docker and containers clearly wasn’t responsible for InfoSec – a rant”

Changing Dell Wireless 5809e / Sierra Wireless EM7305 USB composition (MBIM, QMI, AT interface, NMEA)

Here’s a small update to my post from last year on Dell Wireless 5809e support in Linux – a followup. Continue reading “Changing Dell Wireless 5809e / Sierra Wireless EM7305 USB composition (MBIM, QMI, AT interface, NMEA)”

Using your Raspberry Pi Zero’s USB wifi adapter as both Wifi client and access point

The Raspberry Pi Zero captivates with its small dimensions. This comes at a cost, however, with only one micro USB port available for peripherals of any kind. In this scenario you’ll probably think twice about what you connect to that port. “A USB hub” may sound like a natural choice but if you’re like me, you’ll want to carry the gadget around a bit and minimize the number of accessories.

Now there are solutions to stack a USB hub onto the Pi Zero, eg. Circuitbeard’s one or Richard Hawthorn’s one, but actually I don’t want to carry around a USB keyboard, especially if I have no HDMI-capable display around at all times. Instead I want to login onto the Pi via Wifi while still having Internet connectivity even when not at home. Thus I want the Pi to be an access point AND maintain a Wifi client connection at the same time. This is rather easy to do with two USB wifi adapters — but with the Pi Zero we’ll have to do with a single one! Continue reading “Using your Raspberry Pi Zero’s USB wifi adapter as both Wifi client and access point”

Market overview of USB Wifi adapters based on Atheros chipsets

When looking for Wifi adapters, there are reasons why you would not just go ahead and buy whatever your favorite $DEALER has in stock. If you have some experience with Wifi adapters and drivers, especially under Linux, you’ll know that in general Atheros chips are what you want. They have a long tradition of both feature set and decent drivers: the old MadWifi drivers were the first Wifi drivers to actually support virtual interfaces on Linux (yes, MadWifi ha issues of its own with its binary HAL explaining why it never got merged into the kernel). Continue reading “Market overview of USB Wifi adapters based on Atheros chipsets”