Rob has created a custom component for Home Assistant that allows us to use image classification via Tagbox, on a camera feed that Home Assistant has access to.
Following the instructions on github was pretty straight forward, the only thing I changed was to reference an external image_procesing.yaml rather than having it all in my configuration.yaml as I’m trying to be a bit cleaner.
In this case, my docker is running on Windows, the Tagbox instructions were fine for this, I didn’t realise you can just run the image and if its not installed, it will download it 🙂
So now that it’s all setup it appears to be working great!
As you can see, the component creates a new entity called image_processing.tagbox_name, with a state of the most likely item in the image, and then some attributes of the next most likely, and a count of any specific tags from the config.
I’ll play around with it to see what I can use it for more practically, I can think of all sorts of things this component will be useful for! From identifying if a car spot is free or taken, to seeing if the bins were already taken out!
I just wish I could specify a region within a camera feed for it to analyse.
I decided to build a lithium battery for my Yaesu FT-897D because the official Yaesu Ni-Mh batteries are far too expensive to import here (Then you need the special charger too!)
At present when operating portable, I have been running a lithium battery external to the radio (often a higher voltage battery through a little power supply)
So I grabbed some battery packs made up of four 2200Mah 18650 cells each, three of these adds up to 11.1v at 8.8Ah, this is plenty for my short trips !
I planned out how to fit them inside, and there’s more than plenty of space, see image 🙂
My preliminary notes were:
The three packs are each four 18650 cells in parallel
Totalling up to 8.8Ah per pack at 3.7v
At full charge it will be at 12.6v and at empty about 9-10v
I have measured how much power the radio draws, and on monitoring it draws around 8w, on transmitting around 18w (at 10w TX power, go figure) so that’s only 1-2 amps, super easy for these lithium batteries.
I’m just waiting for my BMS to arrive from China (battery management system)
As that has over current protection, over charge protection, over discharge protection and short circuit protection for the batteries
Then I’ll use some padded sticky foam to mount them in such a way they’ll get ventilation from the existing fans and good to go!
Armed with nothing but the printer and a small handful of blank cards, I set out to get this machine back into working order, and find some way of printing my own access cards with it.
This will be a quick post, mostly for my own reference in the future, so lets get right down to it.
The first hurdle was the power supply, the printer is rated at 24v 3.3A ‘max’ the max part leads me to think I can get away with less, considering that I have some 24v 2A power supplies laying around, I attempted with that. I spliced a DC barrel onto one and hooked her up (Center positive) Good news! It powers up fine,
I poked around the menu a bit and accidentally printed a grey test image onto the last… card? in the machine, its more of a sticker shaped like a card but hey, it printed fine.
Printed a color one next onto a plain white PVC card I had, all went well ! Colours looked good, so I figured it’s time to hook it up to the PC and see what I can find.
Windows installed some kind of generic driver for it, but it didn’t have any information, and I couldn’t access it from any application. So I hit up Google and.. well it’s damn hard to find ANYTHING on this machine.
I know its pretty old but damn, is a driver too much to ask for?
Even the HID website, that replaced the Fargo website, has a link to the driver, that gives a 404 error !
Luckily after searching for a few hours I found a janky ass website that had a zip file with a random string as its file name… being pretty desperate at this point I downloaded it and looked inside, it looked pretty legit.. a couple of ini files, some infs and an exe with a convincing icon….
Heading back to device manager I did an ‘Update Driver’ and pointed it to the newly extracted folder to search, and to my amazement, it found a better driver and installed it!
The printer now installed itself as a regular system printer, which was great, because it took away the need to find some special software that supported the printer. You can print from anything, MS Paint to Lightroom, Windows Photo Viewer to Photoshop!
Just remember to make sure the images have CYMK colour pallet…
I did find though, that most programs leave a tiny border around the outside, its only a fraction of a millimeter but it’s noticeable.
The software I am using though, is from HID, called Fargo Workbench.
I will attach the two items referenced in this post so that I or anyone else can get them in the future. I’ll rename the driver to something more human friendly too!
Over the weekend at the Sydney Mechanical Keyboard Meetup, I got my hands on some DSA keycaps, The intent is for them to replace my dodgy sticker based ones on the Neutrino, but for now I decided to put them on the Gherkin to see how I fair with it having DSA keycaps on it!
I forgot the keymap I had programmed so it is easier to just remake a new keymap imho.
Ill document it all here for future reference to stop myself forgetting next time 🙂
Hello, I’m posting this just before bed to clear something up. Apologies if things don’t make sense.
When people find out about my smart home setup, the most common thing I get from people next to “was it expensive” is “you’re really lazy”
Its not about the effort I save by not getting up to flick a light switch.
For me, this is my hobby. I take great joy in setting up different systems to work and play together nicely, for example, most of the sensors in my apartment are on a ZigBee network, while most of the lights are WiFi, even the different brands of bulbs, and then there’s a few Z-Wave devices in the mix.
I go to a lot of trouble and effort to set these things up, to maintain them, its very time and effort consuming.
I am learning HEAPS as I go along, about how things work, how different technologies work together, improving my understanding of code and syntax and even learning new languages.
Theres a huge level of satisfaction I get when something I’ve spend hours, even days working towards, finally works.
Such as the other day when I was at work, not even thinking about the weather outside, and I got a Facebook message telling me the temperature in my bedroom had exceeded 27°c.
This reminded me I could set the thermostat to 23°c befoee I left work, so that when I got home my room was nice and cool.
Or when I walk into the kitchen and the light turns itself on when I enter, turning itself back off when I leave again.
Even simple things like all the lights turn themselves off at 1am in case we have fallen asleep and left them on.
Its all these end results that I work hard to achieve.
The feeling of moving aroundy normal life, and having these things just happen when they need to, makes me feel more free, if I want to watch a movie, I select it on my phone, the tv turns on and starts playing the movie, the lights dim while its playinf, then when it’s finished, the tv turns off and the lights come back up, is amazing, it feels so natural, things happening when I need them, not just when I do them.
So next time you hear that I’ve set up my light to be voice controlled, instead of thinking “that’s so lazy” think more about how it can be helpful, like “wow of your hands are full you can still turn on the lights” or even “wow if you’re tired and don’t want to get out of bed, you can turn them off from there!”
This post isn’t targeted, I’m just attempting to convey my point of view.
If it was a matter of being lazy, I wouldn’t go to the copious amounts of effort that I do in order to setup this stuff.
I have a colleague with an unhealthy obsession with rotating people’s desktops using the control alt arrow key combination.
It used up not be so bad, it would occasionally happen when you left your desk too long, but alas the problem grew ever so much worse. He soon learnt that he could spam the keys and it would queue up the rotations, he could make our desktops spin uncontrolled!
But still, this could be avoided by locking the computer it was not in use however Jacob has gotten more stealthy at this and he now rotates the monitors even when you are at the desk and not paying attention.
It is for this reason that I created the anti Jacob device. it activates the windows lock with a single press of a big red button therefore it gives you a quick and easy way to prevent Jacob from rotating your desktop.
At its core, it is an emergency stop button wired to Arduino Pro Micro. A sketch pulls up gpio 2 and watches it. If the pin is then pulled to ground will activate the windows L combination, therefore locking the pc.
This is our strongest weapon in the war against surprise rotating desktops.
I downloaded the ‘Windows SDR Software Package’ which seems to be similar to the old version, containing SDR#, ADSB Spy etc.
This downloaded a familiar looking sdrsharp-x86.zip file
Extracting this zip gives a familiar folder structure, with an install-rtlsdr.bat file, perhaps it hasn’t changed much after all? Not sure why I seemed to have so much problems last time… I fired up Zadig as admin after it had downloaded and selected Options > List All Devices so that I could find my RTL device.
And with that its time to launch SDRSharp.exe !
The first thing ill do is pop into the options gear up the top there and change the device to RTL-SDR (USB). Then back into options and ensure the correct device is selected and the RG Gain is turned up a little.
And with that, we’re in!
It all seems to be working fine. I did a frequency correction of 3ppm and got it centered on a carrier wave.
Im now able to use this to identify which frequencies are in use around 500mhz so that I can fix up some wireless microphones that are complaining about interference!
It was much easier than last time. Not sure why I had so much trouble….
Over the years, I have used many types of LEDs, but the most commonly used and cheapest, is standard 5050 LED strip. It comes in a variety of colours, and RGB multicolour.
However the cheap strips, as in, $15 for 5m, always run on 12v.
I have in the past used a number of different methods, starting off with a 9v battery, then a pack of AA cells, at one point I even carried around small SLA cells! (heavy omg)
More recently, I have been using 3s lipo packs, however these can be dangerous if damaged, and require a special charger to charge up.
I normally use a Turnigy Nanotech 3S 1.6Ah battery, I have a few of these laying around that I keep at storage voltage.
The problem with Lithium batteries is that, while they are usually stable, when they do become unstable, they go out very violently.
I have recently been contacted by a group of cosplayers that want to add LEDs to their Hyperdimension Neptunia cosplays, and were wondering how to power the LEDs, so im going to revisit this as there must be a better way.
When I added lights to my friends Ahri tails, we used my nanotech batteries the first round, but more recently, her friend made her a pack that takes three 18650 cells,
this is certainly easier for her to charge, and swap out the batteries, but I felt it and it was pretty warm, so kinda scary, to be fair though, her tails have almost 10m of LEDs in them, so it’s probably drawing some 6-10ish amps from those poor 18650s continuously.
Another option is to use 5v LED strips, i’ve got a meter of this and tested it, and its just not as bright … its probably the best option as of typing this though as power banks can be purchased cheap in sydney (~$12 for 4000mah one from a reputable shop)
I have used these in the past, but knowing what I do now about Lithium, I wouldn’t touch these with a 10 foot pole. There may be no protection inside, they may not be balance charged, and they probably don’t even have voltage cutoffs… very dangerous and scary..
As it stands, I still recommend to go with a 3S Lipo pack.
You will need a few things:
Battery – 3 cell Lithium Polimer, capacity of your choice
Low Battery Alarm – Tells you when the battery is flat
Balance Charger – Important to prevent boom
Flameproof bag – Important to store the batteries
Power supply for charger – Your LED Strip MAY come with one that works (12v 2A+)
Feel free to contact me with any questions and I will do my best to answer.
Part 2: Which LEDs do I get?
There is different types of LEDs, Ive briefly mentioned them above, the main ones are: single colour, RGB multi colour and these come in both 12v and 5v.
For the above power solution that I recommended, you want 12v leds.
Which ones you get depends on your needs.
Some colours are available as is, and if the colour you want is available standalone, I suggest this as it will be less messing around. So if you need pink LEDs, and you find pink LEDs as well as RGB ?? Go with the pink ones.
If you need a colour you cant find, or want to be able to change, go with the RGB.
They also come in two sizes, if RGB, please try to always get 5050 LEDs, and avoid the smaller 3528 where you can. as each light can only be one colour, so for the RGB, you have a red light, a green light and a blue light every 3 lights. It results in a weird christmas light effect that looks terrible:
With 5050 RGB LEDs, each light has three tiny lights inside, so each actual light on the strip will be the colour you want.
For controlling them, if its single colour, you just need to give it power. If its RGB, most will come with an InfraRed (IR) controller, which is probably good enough, but there is also wifi and bluetooth controllers available.
You also want to check how many LEDs per meter there are. Most strips will come with 300 LEDs but some come with 150, this results in the lights being very far apart from each other and it doesnt look nice. so make sure its at least 300 LEDs.
To get really fancy, you can get what are known as addressable LEDs, but this is pretty advanced and needs a tiny $3 computer to control them. The most common type is WS2812b / WS2811 AKA Neopixels.
The only problem I have run into with these is the extremely high current draw (I usually use the 144LEDs in 1meter!!) and that if one LED dies, all the ones after it stop working.
There is another less common type, WS2813 that has an extra data wire in it, so that if one light stops, the others still work, but I have not played with these yet.
The benefit of these lights is each light can do something different, and you can have some really cool effects like breathing, fading along, rainbow chase, or a larson effect.
These are what I use in the LED clothing that I make.
For most effect lighting, the standard strip lighting works well enough.
For single 12v colour LED strips expect to pay around $10-20 delivered
For RGB 12v expect around $15-30 delivered
for WS2812 5v expect around $8-20 per meter
5v LEDs are similar pricing to above, but you get only 2-3 meters instead of 5 (it’s still heaps!!!)
So I had in front of me an old arcade machine, not too old, pretty new actually, a date code inside puts it around 22 June 2012.
Nevertheless, it was old in terms of mechanics.
The machine used a Jamma board, and was non functional.
I opened it up and had a bit of a look for any obvious electrical problems, burns out components, loose connectors, dirty connections etc. Couldn’t find anything.
For benefit of the doubt I used isopropyl alcohol to clean the PCB and the Jamma connector. Still no luck after this though.
The machine itself would power up, the board had power, but it wouldn’t output any video…
So I decided to go with my plan B, upgrading the machine to a PC based MAME emulator!
I started with physically cleaning up the machine, isopropyl and some Glen 20 did the trick, once it was nice and clean I got to the insides.
Snapped some photos of how everything was connected for future reference, and started removing components.
I can’t remember the whole process super well as it was a few days ago but I’ll recap best I can.
With all the main control and power boards removed, I was left with some bundles of wire cable tied inside.
I decided the best path would be to cut the bundles of wire that lead from the buttons to the Jamma board a short distance from the connector. This way in the future, reconnecting the Jamma connector is as simple as matching up the coloured wires.
I located the power connector for the button illumination, and tested it out. It was originally on the 12v from the power supply, I tested it on 5v and the buttons lit, but not the joystick. So I’ll just reconnect this to 12v once rebuilt.
I tested the screen using an HDMI to VGA adaptor coming from a PC that was nearby and got video out, this was great, was going to be pretty simple from here on out.
The screen is mounted in portrait which is going to prove annoying as most games these days and games I’ll be emulating will feel smaller. Also, it means that I’ll have to figure out how to display artwork above and below the emulation. Maybe themed to the console ?
I know there’s plenty of options online for ‘arcade button controller’ ranging from $6 to $100+, and I’m sure any of these would have done the trick, but I didn’t really want to wait for something to arrive, I wanted to finish this project in one day.
Luckily I had an Arduino pro micro laying around, I slapped some headers on it and some matching headers on the wires, then ran to the internet in search of a joystick emulation library for AtMega32u4 🕹️
It was actually very easy and within 3 results I had a library downloaded and installed!
Loading up the Arduino IDE I opened an example sketch that had 1 button and a joystick, this was SUPER easy to modify for the 5 buttons on the front panel of my machine, it was just a case of increasing some numbers and adding some extra cases!
I uploaded the sketch to the board and hooked up the buttons to their corresponding pins on the board, now it was time to test.
Hooked up the Arduino to my laptop and checked devices and printers, to my great surprise I saw a gamepad icon with Arduino Leonardo under it, that will be my board!
I right clicked it and hit Gamepad Properties, which brings up a screen where you can test everything.
The joystick was rotated left 90 degrees, so I suspect it was installed sideways as I used the labelling on the PCB for which wire was which, but after switching those wires around everything worked ! All the buttons and the joystick worked flawlessly now !
So now that I had the controls upgrades to modern universalness, I moved onto the speakers, there is two 10w speakers mounted to the rear of the cabinet, these used to be driven by the Jamma board, but with that gone I needed something new.
Coincidentally, a few days earlier, my friend James was over to fix my 3D printer, and had brought over a wireless speaker thing, that I didn’t know what to do with. But this thing, had a speaker driver in it, and also a 3.5mm input, so I put the transmitter unit aside and used just the receiver unit. Hooked up both audio channels with a wire so we got both left and right channel out of the speakers, and hooked them up to the device. I cut off its power cable so I could hook it up to an alternate source of power later, just 12v.
I decided it would be best to re use the original power supply, but some changes were in order. For starters, the damn thing had no earth, so adding an earth connection was my first priority, very simple and I don’t know why the original builder didn’t ???
Once that was hooked up, I proceeded to hook up the leds and the speaker driver to the 12v rail, and then pigtailed the monitor off the AC terminals, and also a cord with a 3 pin connector suitable for a laptop PSU on it.
With all the power sorted I turned to how I’ll drive everything.
I had a few options at my disposal, but given the tight space restrictions in this bartop size machine, I went with an Intel Nuc that I got last time I was planning to build an arcade machine.
I placed it inside, with some very strong Velcro, and placed its power adaptor next to the one for the monitor, also held down by Velcro.
I hooked up a USB wifi adapter and the Arduino to the back USB ports, as well as a mini HDMI to HDMI, then HDMI to VGA adaptors, to the mini HDMI port on the back. And it was time to power it up and test.
The Nuc booted and everything was fine.
I refreshed windows to a clean install as there was still many remains of my last attempt at getting things up and running, rotated the display 90 degrees to make it normal, and then fired up Project 64 for some testing !
I quickly learnt the volume was waayyyy too high, but was easy to fix. Just startled me! Haha
The controls worked great, and the picture looks fine. The colours are a bit off but I can fix that later.
For now this is enough, I’ll work out the software later as that takes aggesss to get setup nicely and all pretty like.
In the past I’ve used HyperSpin but I might give something new like GameEx a try.