2021-10-31

DEFCON Lights

A bit of fun for a change... 

Firstly, seeing as even some of my geeky mates did not know this, the US has a DEFCON level (defence condition). See wikipedia for more. There are images of DEFCON lights in a variety of films/shows (including War games, and Stargate). DEFCON 1 is most severe.

I saw RS did some rather nice 12V LED indicators, which I was using for a different projects, and realised they would make quite nice DEFCON lights.

So the shopping list:-

  • RS 791-8579 White
  • RS 791-8573 Red
  • RS 791-8589 Yellow
  • RS 791-8582 Green
  • RS 791-8585 Blue
  • RS 877-1836 Sounder
  • Amazon relay board
  • Amazon box
  • Some wire and Wagos, and I have a 12V supply in the house.

The relay board is simple, ESP12-F based (ESP8266), so flashed with Tasmota and configured the relays 1 to 8. Note these are not ideal boards as they have ground plane around the antenna. I may have to make a relay board some time for a different project that needs 9 relays, but this was fine for this fun project.

The LED modules are simple enough to wire up. As is the sounder.

The result all connects to an MQTT server over WiFi. The relays are set up on tasmota, but relay 8 (the sounder) has a pulse time set (1 second) so I can simply turn it on to make a beep. I did consider a flashing strobe light as well, but meh...

The next challenge was to work out how to drive it sensibly. Setting a light was simple, I did a cmnd/DEFCON/Backlog Power0 0;Power3 1;Power8 1 for example. This turns all lights off, turns on light 3, and makes the sounder beep for a second.

I use a FireBrick as the MQTT server, so I created some profiles for DEFCON 1 to 5. Each is testing if DHCP is active for some IPs on the WiFi, and if the higher levels are all off so only one at a time. They then have that backlog command as the "on" MQTT command with retain.

This means that I get a DEFCON depending on who is in the house. DEFCON 1 for presence of the those who shall not be named (anti-vax). Cool or what?

P.S. I am sure Letraset used to be a thing - finding transfer numbers was not easy...

2021-10-26

The COVID experience (vaccinated)

Sorry to say that COVID has managed to finally hit many of our family, in spite of (almost) all of us being very careful in lots of ways, and (almost) all of us having vaccines.

My wife has also been unwell, but we are both starting to get over it now.

I have spent the last 10 days or so feeling like shit - started like a nasty cold, and LFTs every day negative, but finally on day 4 it was +ve LFT, and then +ve PCR.

It was not until around day 8 that I lost my sense of smell, which is just weird - my nose is clear now, but I simply cannot smell, not even my ground coffee. I can still taste but it is a bit off.

Someone else described this, and I am inclined to agree - it felt like it was trying to get on my chest, but thankfully did not manage it. Even so, my blood oxygen levels dipped quite a lot. I can only imagine how bad it would have been if I had not been vaccinated.

It has been ups and downs a bit - on day 7 I really thought things were getting a lot better, I felt mostly fine with a bit of a blocked nose. I then spent days 8 and 9 in bed!

Sadly, at least one person that has now got it was unable to have a vaccine, and it looks like a newborn has it too. These are worrying times for all of us. We can only hope they recover quickly.

And those that have not got it have had to run around shopping and getting medicines for those that have - and we really do all appreciate that.

Remember, you are only as strong as the weakest link - make sure you all have your vaccines please! Don't be put off nagging people to get their vaccine, as I was. Personal choices are important, and make good sense right up until those choices impact others around you - then they are no longer just personal choices. Vaccines don't just help reduce the risk to yourself, and your family, but help reduce the spread and mutations. Getting a vaccine is being part of a community.

I do now have some IgG and IgM antibodies though. These did not show after the vaccines, which I believe is to be expected as they are different.

But everyone, stay safe.

P.S. Whilst the isolation is over, there are some symptoms lingering - a simple walk to the shops made me tired and out of breath, and I still have an annoying cough, even if no longer infectious. It will be interesting to see how long this lasts. Day 12 - can just about smell the coffee again.

P.P.S. The lingering cough is not fun - just spending an hour on a phone call really kicked it off and felt grotty for rest of the day. No idea how long this will go on for. ... Weeks later and still up and down with this.

P.P.P.S. It has lasted over a month, on and off, but finally feeling at lot more normal now.

2021-10-17

Tasmota thermostat

The tasmota code has a proper thermostat mode, but it is not in the pre-built code, so I wanted to work out a way to do this with simple rules.

There are examples, yay... But I was struggling to make sense of these.

A simple example, say I want on at 25C and off at 29C...

The obvious rules are something like this :-

ON DS18B20-1#temperature>29 DO Power 0 ENDON

ON DS18B20-1#temperature<25 DO Power 1 ENDON

This works, but every second or so it is doing Power 1 or Power 0 constantly, and reporting that on MQTT, which is a tad annoying. It is worse if you have triggers on power setting to send publish commands to other things, etc.

The other examples I have seen seem to have a similar problem, I think. Some seem to have a timer that reduces the chatter but still, I just wanted something simple that only actually logged something and only actually changed power setting, when the temperature threshold is crossed.

What I came up with is not complicated, and seems to work:-

ON DS18B20-1#temperature>%var1% do backlog var1 999;var2 25;power 0 ENDON

ON DS18B20-1#temperature<%var2% do backlog var2 -999;var1 29;power 1 ENDON

The trick is the this sets the var1/var2 meaning that the temperature is no longer triggering an event all the time once it has changed.

Bingo, it works, and is a pretty simple pair of rules. Probably worth using mem1/mem2 as the 25/29 values here to be tidier, but still. Not complicated, and reacts immediately when the temperature passes the relevant threshold.

It also means the sensor can be a separate Shelly from the relay easily, only sending the publish to change the relay on change, which is also a big improvement.

P.S. For those that do not know, a Shelly 1 is a small ESP8266 based relay/switch that can switch mains power (16A) and typically about £8 (the blue round box). It has good firmware anyway, but Tasmota is an alternative firmware (open source) which can run on most ESP8266 and ESP32 based smart devices, so can run on a Shelly 1. DS18B20 is a common temperature sensor, and more than one can be connected in parallel even (the black wire and metal tube). Shelly do an adaptor (needed for DS18B20 as they would otherwise be mains voltage) to connect to temperature sensors (the black round thing on the Shelly 1).

2021-10-15

Mitsubishi Lossnay+GUG aircon (not actually working)

We have a bit of a mystery here - the brand new, expensive, ducted air-con in the house does not work!

So what does not work exactly?

Not actually able to cool a room!

The biggest issue is it cannot cool a room - not even close. (It can't heat one much either)

This is a temperature plot for my study, 3m x 3m, you don't get a lot smaller than that in terms of a room to air-con. A=Portable unit on, B=Portable unit off, C=Start two hour cool only full fan test.

The test was with the other room vent closed so the unit was only cooling one room, in to a closed empty room, no heating on anywhere in the house, and outside temp of 19C. Not a challenge for any air-con really, and as you can see, the cheap portable unit managed with no problem (even with the door open most of the day). And yes, the fan speed control does work, and was on full.

I expected at point C the room to cool at least as fast as the cheap portable unit. What happened is it just about managed 0.8C in two hours! It was blowing cold air (measured at 9C) but not as lot...

The fix - well, the unit only has a 100mm vent in to the room. This seems small I must admit, and at full fan like this it is noisy. So they are changing to a 150mm vents today...

Did it work? In short, no. The bigger vents are quieter, which is nice, but the same tests showed maybe 1.5C drop and bottoming out just below 21C after more than an hour. Compare these big 3.5kW systems to a much cheaper 1.5kW portable unit which is able to drop my study (and hall way as door was open) from 23C to 18C in 15 minutes. With the door open the new air-con cannot cool my room at all!

This is now waiting on Mitsubishi to explain and fix. I won't say who the installers yet as they have been pretty good. Let's give them the chance to get Mitsubishi to fix it all.

But how is this even possible?

The issue for me here is that they sell this system, even with the smaller 2x 100mm outflow vents. So forgetting, for a moment, whether the suppliers got it wrong for the rooms we are trying to cool (two rooms each unit, one of which is much bigger than this 3m x 3m study), we have the issue that this whole unit running at full cooling and full fan cannot cool a 3m x 3m room.

So what the hell is the this unit for - what size room are they expecting it to be used with, ever?

The change to 150mm vents actually meant them cutting out the larger holes as the cowl as it is only supplied with the 100mm outlets.

This leads me to think something else is wrong, but we have no idea what. How could this ever work anywhere?

Cannot set temperature!

The controller has options - either "return air" temperature measured at the lossnay unit, or the room temperature at the controller. The controller has a sensor in it. Given that we have two rooms per unit, we are using the temperature at the controller (which is not in the room with the return in it). This is all as per the manual.

Only it does not work! Cooling the room down to 19C (using the portable unit, obviously), it showed 24C. Indeed, it even went up from 23C while we did this. Using freezer spray actually on its sensor does nothing, still 24C. No clue where it is measuring but it is not in the room - we even tried putting hot air in the room that has the return air flow but that did not make it go up at all.

The fix: Well, again, waiting on Mitsubishi.

Watch this space.

2021-10-08

New Mitsubishi Ducted Air-con with Lossnay (bad user interface)

As some of you will know, I have moved to sunny Wales. My new home did not have air-con so I am finally having that installed. I have gone for a ducted system this time (yes, more expensive) as it allows simple vents in the ceiling rather than a large indoor unit in the rooms, and it should be quieter. However, the main reason is that we now live on a main road, so cannot really open windows to any of the bedrooms - the ducted system I have gone for has a "lossnay" which provides fresh air as well, and saves us having to open windows. More on the actual aircon later, this post is just about the quite unbelievably bad user interface.

For a start this is an "industrial" air-con, which sadly means it is a simple wired controller and not WiFi, or anything useful like that - do not be surprised to find a "reverse engineering Mitsubishi air-con controllers" in a future blog post :-)

The air-con is three parts, an outdoor unit, and indoor unit (GUG) which does the cooling/heating, and a lossnay which does the fresh air (filtering and heat exchange). This is in the loft...

The lossnay is on the left and the GUG is on the right. To be clear, the GUG is designed to work with a lossnay, it cannot work without one as it has no fans of its own. I think the lossnay could be used for fresh air without a GUG though.

Controller

The controller is not too bad, it has a dot matrix LCD and buttons. It is newer than some where they have fixed icons on LCD. It has the obvious controls: mode, temperature, and fan speed. Good.

But, no. The fan speed says "unsupported function" if you try and change it. You need to have a separate "lossnay controller", which basically just lets you set the fan speed.

But there is a 4 wire link cable between the lossnay and GUG, what the hell is that used for? Well, all I can see is that it means is it turns off the lossnay when turning off the GUG. Remember the GUG can only be used with a lossnay attached, this is not some obscure optional extra.

We (myself and the installer) found the setting to tell the GUG it has a lossnay connected (but this unit cannot work without one so why is there even a setting?!), and it shows a nice icon indicating it has a lossnay. But still does not let you control the lossnay from it. Why? Also, the icon looks like it shows the "mode" the lossnay is in (yes, it seems to have a non heat exchange mode, which is pointless) and fan speed, but in fact the icon does not change to actually show the mode or fan speed. How shit is the UI?

Apparently you can run the lossnay without a controller, and the GUG will turn on/off at full fan speed, which is not that useful.

Of course, this also means you cannot run the fan in an auto mode as the lossnay does not know what the GUG is doing. So you cannot have full fan to get to temperature and quiet fan to maintain temperature.

Oh, and crossed zeros. A pet hate of mine. This is not a hand written COBOL coding sheet in the '70s, it is a temperature display. Why make it look like 28℃ not 20℃ to anyone with poor eyesight?

Another gem is that you can turn the temperature down to 12℃, nice, but then it snaps back to 19℃. Why 19℃, that is way higher than I have seen on other air-cons - it will probably do as I would rarely want it that cold. But still, why? And why allow setting below that if it cannot be set lower? Just stupid UI again!

Another thing that seems odd is that the controllers are identical. Same display, and buttons. Looks like identical hardware. The lossnay controller even has a thermometer in it even though it does not need it. But they must have different firmware as they cannot be swapped around. I would have made one controller and made it generic to work anything, but no, they are different!

Missing unix/linux/posix file open option

What I would like is a file open option for "create replacement file". The idea is that this makes a new inode in the same mount p...