NodeMCU devkit V1 deep sleep

Low cost implementations of the NodeMCU devkit V1.0 abound on eBay, and are featured in lots of projects.

Deep sleep mode is used in a lot of projects, the MCU is but into sleep mode and it requires circuitry so that the  from the /WAKE pin (D0, GIO16) can pull the /RST pin to wake the processor up.

The problem

The common schematics as above simply wire /WAKE pin (D0, GIO16) to /RST (yellow wire), but this disrupts operation of the reset circuit, which degrades development productivity. Continue reading NodeMCU devkit V1 deep sleep

ESP8266 IoT DHT22 temperature and humidity

This article documents a first project with the Espressif ESP8266.

The objective is a module that will take periodic temperature and humidity measurements and publish them to an MQTT message broker.

This inital implementation is very basic, it is largely configured in code, though it does use DHCP. Later extensions might include a web interface for configuration of WLAN parameters etc, but for the moment the emphasis is assessment of reliability given some reports on the ‘net.

Hardware

A module was purchased with on board CP210x USB to serial chip. The only other component needed was the DHT22 digital temperature and humidity sensor.

NodeMCU was chosen for the ESP2866 firmware because of the inbuilt support for ‘interesting things’, including the DHT22.

Above is a breadboard of the system for development. Continue reading ESP8266 IoT DHT22 temperature and humidity

Review of Dodd’s WSPR based antenna comparison

Dodd espoused the merit of WSPR for antenna comparison in his article (Dodd 2011).

He documented a series of WSPR spots of his transmitter on 20m in a table swapping between antennas during the test period, one side of the table for each antenna. (Don’t be misled, the dipole is not half wave dipole but some non-descript multi band loaded dipole.)

He calculates the average for each data set and states:

The average from the dipole and the loop -16.74 and -17.0dB respectively meaning that the performances were very similar.

You might reasonably interpret this to mean that there was no significant difference between the antennas, one was as good as the other. Continue reading Review of Dodd’s WSPR based antenna comparison

Review of 5 months of iiNet Internet access

On 5/10/2016 we cut over to a new Internet access service, switching from Telstra 8Mb/s ADSL to iiNet NBN 12Mb/s.

Over some years, I have run an automated file transfer to measure the speed of our access service. The tests are done between 6:00 and 22:00, I am interested in performance during the times I want to use the service, and less interested in times when I would usually be sleeping.

Above is a graph of yesterday’s performance. Note that the service does not delivery anything like the 12Mb/s description of the service, and it collapses in the evenings when IP television demands exceed the network’s capacity.

Above is a chart of the tests over the previous week… the collapse in the evening is common. Continue reading Review of 5 months of iiNet Internet access

Loss of ladder line: copper vs CCS (DXE-LL300-1C)

DXE sell a nominal 300Ω ladder line, DX Engineering 300-ohm Ladder Line DXE-LL300-1C, and to their credit they give measured matched line loss (MLL) figures.

They make the common ham mistake of writing loss figures as -ve dB where in fact by definition they are +ve (MLL=10*log(Pin/Pout)).

The line is described as 19 strand #18 (1mm) CCS and the line has velocity factor (vf) 0.88 and Zo of 272Ω.

Let us calculate using TWLLC the loss at 2MHz of a similar line but using pure solid copper conductor with same conductor diameter, vf and Zo. We will assume dielectric loss is negligible at 2MHz Continue reading Loss of ladder line: copper vs CCS (DXE-LL300-1C)

EmonTx3 v3.4 ‘wired’ implementation

Introduction

EmonTx3 is a measurement node for an energy measurement system. It has measurement inputs for 4 current transformers, AC voltage, 6 DS1820B temperature sensors and a meter pulse counting sensor.

The standard configuration uses a HopeRF RFM69CE radio transceiver to emonhub running on some host.

This article describes modifications to the system to use a wired serial connection to the emonhub host.

Above is the emonTx3 board.

The approach taken is a minimal change to existing firmware and software, no change to existing hardware, and inexpensive components to extend the connection.

Outline of the solution

The existing firmware writes a debug stream to the connector used for firmware upgrade. It is a different format to that used for the radio link, and there are good reasons for that, but it means writing an interface handler for emonhub to parse the debug stream.

emonTx V3.4 Discrete Sampling V2.80
OpenEnergyMonitor.org

No EEPROM config
RFM69CW Node: 8 Freq: 433Mhz Group: 210

ct1:-51,ct2:0,ct3:0,ct4:0,vrms:23910,pulse:0,t0:223
ct1:-71,ct2:0,ct3:0,ct4:0,vrms:23924,pulse:0,t0:223
ct1:-6,ct2:0,ct3:0,ct4:0,vrms:23921,pulse:0,t0:223

The solution involves some hardware to interface the emonTx3 to the wire line, and a similar interface at the other end to the host running emonhub.

Hardware

Above is the debug stream from the modified firmware.
Above is an adapter (~$3) from the TTL levels of the UART port to RS485. The port is currently run at 115200bps, and that can be carried 800m with good noise immunity on good copper using RS485.

USB-485-10

Above is the host end adapter.

Firmware changes

The firmware was changed to repurpose the output that may be used for switching power to the DS19B20 sensors, it is now used primarily as an RTS signal to the RS485 adapter to reduce current consumption when there is no traffic. In fact, the RTS signal has been asserted also at times when the DS18B20 sensors are read and it could also be used for its original purpose without conflict.

Host changes

Assigning a consistent name to the RS485 adapter

A problem with USB serial adapters is that they may acquire different device names depending on the order in which they are started.

This is solved in this solution by use of FTDI adapters which have a serial number that uniquely identifies the adapter, and setting udev rules to assign a consistent symbolic link to the device. It is this symbolic link that is used in emonhub.conf

The link is achieved by adding the file /etc/udev/rules.d/75-RS485.rules with the contents below (the contents must match the actual adapter).

#Assign fixed symlink to RS485 adapter for emonttx

SUBSYSTEM=="tty", ENV{ID_SERIAL}=="FTDI_FT232R_USB_UART_A9WRVDPD",SYMLINK+="ttyRS485-0"

The udevadm command will provide the information needed.

root@emonpi(rw):log# udevadm info -n /dev/ttyUSB0
P: /devices/platform/soc/20980000.usb/usb1/1-1/1-1.2/1-1.2:1.0/ttyUSB0/tty/ttyUSB0
N: ttyUSB0
S: serial/by-id/usb-FTDI_FT232R_USB_UART_A9WRVDPD-if00-port0
S: serial/by-path/platform-20980000.usb-usb-0:1.2:1.0-port0
S: ttyRS485-0
E: DEVLINKS=/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A9WRVDPD-if00-port0 /dev/serial/by-path/platform-20980000.usb-usb-0:1.2:1.0-port0 /dev/ttyRS485-0
E: DEVNAME=/dev/ttyUSB0
E: DEVPATH=/devices/platform/soc/20980000.usb/usb1/1-1/1-1.2/1-1.2:1.0/ttyUSB0/tty/ttyUSB0
E: ID_BUS=usb
E: ID_MODEL=FT232R_USB_UART
E: ID_MODEL_ENC=FT232R\x20USB\x20UART
E: ID_MODEL_FROM_DATABASE=FT232 USB-Serial (UART) IC
E: ID_MODEL_ID=6001
E: ID_PATH=platform-20980000.usb-usb-0:1.2:1.0
E: ID_PATH_TAG=platform-20980000_usb-usb-0_1_2_1_0
E: ID_REVISION=0600
E: ID_SERIAL=FTDI_FT232R_USB_UART_A9WRVDPD
E: ID_SERIAL_SHORT=A9WRVDPD
E: ID_TYPE=generic
E: ID_USB_DRIVER=ftdi_sio
E: ID_USB_INTERFACES=:ffffff:
E: ID_USB_INTERFACE_NUM=00
E: ID_VENDOR=FTDI
E: ID_VENDOR_ENC=FTDI
E: ID_VENDOR_FROM_DATABASE=Future Technology Devices International, Ltd
E: ID_VENDOR_ID=0403
E: MAJOR=188
E: MINOR=0
E: SUBSYSTEM=tty
E: TAGS=:systemd:
E: USEC_INITIALIZED=8089809829

Interfacer module to parse the debug stream

An additional interfacer module was written to parse the debug stream, and it was hooked to the main module.

The interfacer is configured in emonhub and port layout copied in from source.

(the contents must match the actual adapter).

#Assign fixed symlink to RS485 adapter for emonttx

SUBSYSTEM=="tty", ENV{DEVLINKS}=="*usb-FTDI_FT232R_USB_UART_A9WRVDPD*",SYMLINK+="ttyRS485-0"

Code source

Code source is available the original git emonhub repo, and in the following git repository forked from the official repo:

Test

The wired configuration is under test with emonhub installed on a Ubuntu server, and about 40m of cat5e cabling from emonTx3 to host. No issues have arisen.

References / links

EmonTx_V3.4

Loss in open wire + coax hybrid feed arrangements

I saw a question posed online about the merits of a proposed antenna system which used a hybrid feed arrangment as 15′ (sic) of the feed line needed to be buried.

Above is the poster’s diagram, and his posting lacked some important details so let’s make some assumptions. Lets assume the antenna is at 150′ in height above average ground, and since the dipole is long enough to be usable on 160m, let’s study it at 1.85MHz.

Input impedance of the dipole under that scenario is around 45-j400Ω.

Let’s consider two options:

  • a tuned feeder option (ie open wire line all the way to the ATU); and
  • the hybrid feed arrangement shown.

Let’s get serious and use home made open wire line made from 2mm diameter copper spaced 150mm. The very popular 19strand windowed ladder lines using CCS do not have sufficient copper to give copper like performance, the single core CCS is marginal. Continue reading Loss in open wire + coax hybrid feed arrangements

Exploiting your antenna analyser #27

An Insertion VSWR test gone wrong.

We often learn more from failures than successes, this exercise is one of those opportunities.

A online poster tried to validate his newly purchased MFJ-918 by measuring Insertion VSWR.

That is done preferably by measuring a good termination (dummy load) to validate that it has a very low VSWR, then inserting the Device Under Test (DUT) and measuring the VSWR as a result of insertion of the DUT.

The poster did not mention measurement of the dummy load alone, and it is a type that warrants validation.

Above is the poster’s test setup, his Rigexpert AA-170 is connected to the balun’s input jack using a M-M adapter. The output wires on the balun form a rough circle of about 550mm perimeter by eye. Continue reading Exploiting your antenna analyser #27

Loss of windowed ladder line at MF/HF/VHF

A ham in the need of help recently asked for advice on eHam about the use of Wireman Ladder Line and the like.

After a fairly well considered, detailed and lengthy answer from on online expert, another online expert stepped in to confuse the matter with conflicting advice:

Wire resistance (loss due to current ) is not a factor with higher voltages typically seen in high impedance antenna feed applications. Attenuation loss is a factor depending on dielectric properties in VHF and UHF frequencies. Their is little skin effect below 50 MHz in wire antennas and feeds.

This comes down to line strength. I would go with the solid Copperweld for HF antenna work.

Let’s examine the above quote. Continue reading Loss of windowed ladder line at MF/HF/VHF

Messi & Paoloni Ultraflex 7 coax cable

Messi & Paoloni Ultraflex 7 coax cable is being marketed as similar to RG-213 in performance, but 7mm overall (against 10mm).

There is lots of comment by online experts questioning the claims, and critical of things like the braid coverage, copper foil etc, but without real evidence that it does not live up to specification.

Accepting the specifications for Ultraflex 7 and Belden 8267 (B8267, RG-213) for a moment, how do they compare.

Let’s take the loss factors calculated for TLLC and de-construct the conductor and dielectric loss for each line type.

Above is a comparison of the cables. Continue reading Messi & Paoloni Ultraflex 7 coax cable