Tuesday, July 23, 2024

Eyeglasses in Australia are hugely over priced

A recent podcast from Freakonomics titled Why do your Eyeglasses cost $1,000? explains the EssilorLuxottica monopoly we face here in Australia as well as the US.  Their markups are described by one analyst as "obscene". They mention Warby Parker as a possible monopoly breaker but sadly they don't seem to have come to Australia.

My prescription is relatively complex with astigmatism and I've paid $800 for progressive lenses and $300 for computer distance reading glasses.

Despite efforts by eye testers I've been able to get a copy of my prescription and recently ordered some new reading glasses from Zenottic in China for $55 (plus $10 shipping). They are perfect and the frames seem as good as any in the local shops.

I think it's a scandal that we pay 5 times the price, or more, to buy locally. It does take some care to get the prescription down correctly as well as inter-ocular distance but once I got it right I'm able to cheaply get additional pairs.

Note that EssilorLuxottica owns Sunglass Hut, OPSM, Oakley, Ray-Ban, LensCrafters and many more.

Wednesday, July 17, 2024

Tech news spot on ABC Radio Nightlife

This week on ABC Radio Nightlife, we talked about Samsung's product updates and how much they look like Apple products, a new way to migrate your photos from Google to Apple's cloud, future cars that won't let you speed, Android's coming desktop mode, some old technology (8 inch floppy disks) that are finally being retired and the US ban on Kaspersky Anti-Virus. Listen here

Tuesday, July 16, 2024

Alternative fan control for a Saxon wood heater

Our home came with a Saxon wood heater but the advertised automatic fan control circuit has never worked and I must get down on the floor to turn the fan on or off manually.

The heater works by heating a cement plate at the top of the firebox and a fan runs air over the top of it which warms the room. If the fan isn't on the heat goes up the flu. If the fan is on when the fire isn't going well it cools the firebox and may extinguish the fire. 

I enquired at the company about getting this fixed or getting a replacement board and they referred me to our local agent who basically said they knew nothing.


The circuit certainly looks quite simple although the markings on the IC have been cleaned off.

My solution was to purchase a temperature controller XH-W3001 that can be used either in heating mode or cooling mode. I've set it to come on when the sensor is over 30C indicating that the fire is hot inside.


The sensor range is only up to 120C so I've put the sensor at the back above the heater. The XH-W3001 was AU$5.98 which seems very reasonable. The mains wires are rather flimsy but should be OK for switching a fan.

The way it works is a little counter-intuitive. It has a "heating mode" and a "cooling mode". I'm using it in cooling mode where the output comes on when the temperature exceeds the left hand value and goes off when the temperature drops below the right hand value.

I've set left to 34C and right to 30C. The sensor is at the back just poked in to the top cavity. It seems to be working well and the cat is very impressed.

Tuesday, July 09, 2024

Broadband RF generator (AKA eBike charger)

My new eBike came with a charger. Even though it's about 10m away from my ham shack the radiated noise level is impressive. 


Here's the "transmitter":


Here's the inside view:


Even with external clip-on ferrites on the mains and output cable there is little difference. How can it be legal to sell noise makers like this? Are all the certifications fake or just incredibly poor standards?

As Ralph, VK3ZZC, suggested I have added 0.1uF silver mica capacitors across the large electrolytic smoothing capacitors on the output and this has made a noticable improvement on the radio.

Wednesday, July 03, 2024

Talked tech on ABC Radio Nightlife

I joined Philip Clark on ABC Radio's Nightlife program to talk about technology news including new legislation to combat faked sender IDs on scam text messages, YouTube live stream hacks to promote crypto scams and a look at the new ARM based Microsoft Surface laptops that are challenging Apple.

Audio here.

In the story I talked about trying out the new Microsoft Surface laptop powered by ARM. It's a nice looking and feeling laptop, quite similar to the M2 MacBook Air which I imagine it is competing with. Fit and finish is excellent. More ports than Apple and slightly better value in terms of price per GB of storage and RAM.


There's a new Microsoft only key on the right hand side for summoning Copilot AI features.


I pushed the key and not a lot seemed to happen but I guess, like Apple these new features are being rolled out over time.


Saturday, June 29, 2024

Micropython thermometer using MCP9808 and SSD1306 OLED display

This little post was triggered by reading Owen Duffy's post titled "Arduino thermometer using DS18B20 and OLED display". Even though I'm quite comfortable writing C or C++, I've been enjoying the clean MicroPython environment. These days I've pretty much switched from classic Atmel Arduinos to RP2040 based boards.

I implemented this little thermometer in just a few minutes with two easy to find and install libraries. Here's how it looks:


And here is the code:

import time

from machine import Pin, SoftI2C

import ssd1306

from micropython_mcp9808 import mcp9808


i2c = SoftI2C(sda=Pin(6), scl=Pin(7), freq=100_000)

display = ssd1306.SSD1306_I2C(128, 32, i2c)

mcp = mcp9808.MCP9808(i2c) # , address=0x18)

time.sleep(0.5)

while True:

    temp = mcp.temperature

    #print(temp)

    time.sleep(5.0)

    display.fill(0)

    display.text(f"{mcp.temperature:.2f}C", 30, 15, 1) # x,y,colour

    display.show()

The imported modules are mcp9808 for the i2c temperature board and ssd1306 for the OLED display.

I use Thonny for editing, uploading and debugging.

One mystery is that the hardware I2C isn't working for me on the RP2040 board but SoftI2C works fine.

When getting started I scan for I2C devices like this:

i2c = SoftI2C(sda=Pin(6), scl=Pin(7), freq=100_000)

devices = i2c.scan()

print("devices: ")

for device in devices:

    print("0x{0:02x}".format(device))

Obviously adjust for the pins you've used. The RP2040 is a wonderfully powerful chip. The board I used here is from Seeed studio.

Cheers to Owen for all his great insights and sharing.

ChatGPT is very good at Micropython

While I'm here, an observation about the utility of the Large Language Models. I have been asking ChatGPT to write code to demonstrate how to do things and it's really good!


Around the house I have little devices that use Wifi to poll my solar inverter and show power use and generation. I've been using a third party JSON parser but I asked ChatGPT how to do it and it mentioned a built-in JSON parser that I wasn't aware of!

Built the Sputnik regenerative receiver

When I was a teenager and just starting to tinker with electronics I built a regenerative receiver kit from the local Tandy (RadioShack) store. It was a great success and I was able to listen to the big shortwave broadcasters on it.

I know that Bill often mentions that regenerative receivers may be haunted on his Soldersmoke blog. The DX Explorer site describes a rather neat regenerative receiver named Sputnik. The author also links to a way to order a very nice board from PCBWay. I ordered and quickly received five copies of a very nicely done board.

Most of the components I had but the ten turn pot had to be ordered in. I used a T50-2 toroid core rather than the air-core inductors. At first it didn't oscillate. My initial thought was that the tickler coil was not the right polarity but it turned out that my 2N2222s have collector and emitter reversed. Ralph, VK3ZZC, suggested that they might be fakes but the gain seemed fine.

The coil has a single turn that can be connected to a frequency counter. I have it going to my CRO and it's helpful for reading frequency and seeing when regeneration is starting. While you can, kind of, listen to single sideband, AM is best. Here's a bit from 7125 this morning.


I didn't have any 1N4001s in stock and tried another power rectifier that didn't seem to work as a varicap diode. I did have a genuine varicap in the junk box but it was too sensitive. Richard, VK3LRJ, gave me some 1N4004s and they work fine although tuning is very sensitive.

The radio is pretty hard to operate and one must juggle, RF gain, tuning and regeneration.


My memory might be rosy but the Tandy pegboard kit was easier to use than this design. It might be this one. There's a lot more electrical noise around these days and many of the big shortwave broadcasters have gone so perhaps the golden age of listening to BBC on a three transistor radio are over.


Monday, June 24, 2024

Flying like a bird, the joy of FPV drone operation

Some years ago I used to accompany Terry to a field in Sydney where he would fly amazingly fast while using a video headset. He would run through an obstacle course with hoops standing on the oval. I tried a few times but crashed immediately - I could never put myself in the drone and was always thinking of the sound.

My current drone is home built and rather bashed about but does the job.


One problem I've had is that I need my glasses to see the screen clearly and the solution was to sacrifice an old pair of reading glasses and apply some hot glue.


There is a bit of open space and a tree in the middle so I started slowly and have had a bit of a breakthrough. I was able to take off, fly around the tree, and return and land without breaking anything.

A few days on and I've probably had about ten successful flights and it is a real joy to experience.

Last night, after a hard landing, the drone was not flying well and I lost control. I couldn't see when it was but could see the video from its point of view. It was stuck in a tree. A squid pole was very handy in dislodging it. Next step is to add a buzzer so I can locate it after an uncontrolled landing.