Fun with electronics

If you would like to learn more about Linux, programming, networking or just playing around with leds you can purchase a number of books or online courses – the internet is full of them. I created a book to get my children interested in using computers for more than just games.

Getting started with Arduino and Raspberry pi

You can learn more about it here. Consider purchasing it to support the channel.

Posted in Review | Comments Off on Fun with electronics

Security for the security conscious

A couple of years ago I happened to see an article about a secure cell phone. This seemed to be quite impossible considering phones can be simply be listened in with the correct equipment (frequency counter and scanner). This is not an impossible set of hardware equipment but if you are a government you have a mobile setup that simulates a tower service which allows you to place yourself directly into the target’s call.

It may be impossible to protect yourself 100% but unless your adversary is a nation state it is possible to protect yourself. Cell phone communication, just like computer communication can be protected with some encryption. Encrypting your communciations is possible but you will need to do some extra work, and for most people this is simply not worth the effort. A new company sprang up with the idea of providing this solution.

https://www.silentcircle.com/

The phones that they were selling at that time we quite pricey if i correctly remember. It was about the price of a Samsung or Apple top end phone times two.

I was curious if this phone was still for sale even though this level of security is much higher than I need.

  • Automatic message redactionMessages you send are automatically deleted on all devices after the burn timer has expired. You can adjust the burn time between one minute and 90 days.
  • Delete messages from both sidesYou can select a message for immediate destruction at any time. Burning the message causes it to be deleted from all devices of all parties in the conversation.
  • One touch voice memosSilent Phone makes it quick and easy to record and send a voice memo. These are great for sending quick thoughts when you’re out and about. Voice memos provide a secure alternative to voicemail.
  • Delivery and read receiptsSituational awareness helps your team move faster. Silent Phone lets you know when your messages have been delivered and when they have been read.

Well, business must be good, or at least good enough as the company is still in business. Unfortunately the phones costs are not listed but rather you need to contact sales. I don’t know if some of this level of security should be built into every phone but based on the security features of this one manufacturer it seems like these phones in the hands of the unscrupulousness would be a nightmare for law enforcement.

However, I would imagine that this is not really a problem for law enforcement when compared to hundreds of millions of smart phone users having phones that are generally harder for the normal police to hack.

Well, that or stop installing free software of unknown origin on our smart phones and do use them for anything suspicious or illegal. That and don’t carry it around with you so your whereabouts are always known.

Posted in programming | Comments Off on Security for the security conscious

Capitalism and technology

Technology can be really empowering or perhaps a bit oppressive, it really depends on which side of the change you land. I can hardly imagine asking the telephone operator to connect me to a specific person in a different city. Kinda makes sense when you can enter your cryptic 20 digits to connect you to someone in a far off land.

I don’t quite feel the same when I visit the grocery store when it is suggested that the most inefficient person, unpack my selection, attempt to register each item with a cashiers terminal and repack everything. The problem isn’t the scanning but rather the delays that arise when items inevitably fail to scan.

Big technology meeting

I was surprised to see a meeting today that I actually wanted to attend. It shouldn’t be too surprising that, just like much of the internet, my employer has discovered that ChatGPT exists. ChatGTP is no Eliza but it is one of the few truly amazing developments in computer science in the last few years. Our speaker was pointing out how using it did indeed make him much more proficient in some of his daily developments. It is not sure how much of this was exaggeration but one of the people in the meeting suggested that perhaps rather than off shoring work to the cheapest possible country that perhaps we will just use our local labor and ChatGPT to make up the difference.

This is indeed a very good idea but one of the others in the meeting suggested that if these cheap offshore labor solutions could improve their work by an equivalent amount they might still be taking our jobs.

Not sure who is winning the race, capitalism or technology.

Posted in programming | Comments Off on Capitalism and technology

Windows and networking

I don’t know how many decades it has been since someone plugged a ethernet cable into their computer and it really didn’t work right.

                                     [Router]
                                        |
             [Router]             [Patch Panel]
                |                       |
             [Switch]                [Switch]
   ┌------------|-----------      ┌------|-----------
   |      |     |     |    |      |      |     |     |
 [PC]   Printers   Other PC's    [PC]  Printers   Other PC's

works                                                                      does not work

Ok, ok, I did have a problem a long time ago when I was using a “hot off the presses” version of Ubuntu and an actual new laptop. It just didn’t work, I had to download driver code, compile and install. It really wasn’t that difficult, well, except that I didn’t have internet access.

I was sorta thinking about this old story while sitting at my child’s windows 10 computer. The task to be performed was pretty uninspiring. Move the desk and the computer to the other end of the room, plug it into a switch and get on with my day.

Well, five minutes turned into ten and ten into twenty. The ethernet cable was fine, the switch was fine, basically everything was fine. I went as far as bringing my laptop over to test this out. Yet windows could not get an internet connection. The most reasonable sounding solution was to run the following command.

netsh int ip reset c:\resetlog.txt
ipconfig /flushdns

But reasonable doesn’t always mean successful. I was amazed that such a small hardware change could create such a fuss. My Raspberry Pi was able to make the move without a single problem. Eventually, the problem was solved but to be honest it was pretty non-intuitive. Do the following.

On the Network reset page, click on “Reset now” button.

I guess, in its own way this does make sense but who makes an operating system which saves network topography so in case it is moved it can no longer find the network?

Actual Answer

https://answers.microsoft.com/en-us/windows/forum/all/ethernet-not-recognized/a485d40f-94c0-47f2-a01f-2f9bad1c66b8

Kinda helpful info

https://superuser.com/questions/1604975/windows-10-will-not-connect-to-lan-internet-via-a-switch

Posted in programming | Comments Off on Windows and networking

Does a functioning system make you dumb

I have been using Linux for quite a few years, nothing all that cutting edge, but dealing with all of the normal types of issues that come with it while doing daily tasks. Normally it work just fine but occasionally problems occur after an update or when facing issues when connecting some external device.

Despite facing the occasional problem, I would say Linux is great and stable. It was only recently that I realized how much I take for granted. As luck had it, I managed to get my hands on a TP-LINK smart switch and thought it would be neat to add it to the network.

The first trick was to get the password so I could login via the GUI. From the internet is should be really straight forward, just connect your serial to Ethernet cable to the console port. I actually did not have a USB to Ethernet cable nor did my computer have a serial port. Some long time ago I did purchase a USB to serial adapter and never had chance to use it. Simply connect the adapter to the cable to the switch and connect.

Well, connect requires a bit more setup, you need some package to allow a serial connection and you need to connect at 38,400 baud with 8N1.

I don’t know how much research and time wasted trying to connect. I used different programs, tried different settings, but no success. During my debugging I could see that my adapter was connecting.

[ 3716.341969] usb 1-1: new full-speed USB device number 11 using xhci_hcd
[ 3716.585149] usb 1-1: New USB device found, idVendor=067b, idProduct=2303, bcdDevice= 3.00
[ 3716.585156] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 3716.585158] usb 1-1: Product: USB-Serial Controller
[ 3716.585161] usb 1-1: Manufacturer: Prolific Technology Inc.
[ 3716.602004] pl2303 1-1:1.0: pl2303 converter detected
[ 3716.630651] usb 1-1: pl2303 converter now attached to ttyUSB0

A quick look in the /dev directory and I could even see the new device.

cdock@cdock-XMG-APEX15:~$ ls -ltr /dev | grep -i usb
drwxr-xr-x   2 root root            60 Jan 13 21:43 usb
crw-rw----   1 root dialout 188,     0 Jan 13 22:43 ttyUSB0

So it was a mystery just why I was receiving the following error message.

putty error when trying to connect

If you take a closer look at the devices you see that some of them have the executable bits set. Not any of the tty device drivers but it was worth a shot. I changed the permissions on /dev/ttyUSB0 with this done I was able to use putty to connect to the switch.

connected to TP-LINK

This was actually just to beginning of my attempts to get the smart switch to work. Most of the documentation that I could download was interesting but it seemed to be for a newer version of the TP-LINK switch. I did manage to find a few commands that work, but first you need to get into the correct mode.

“enable”

The enable command will put you into some sort of shell mode that allows you to do a few more commands.

  • configure
  • end
  • show vlan
  • show interface switchport
  • show gvrp interface
  • show user account_list
  • show user configuration
  • reboot
  • reset
  • ping
  • tracert
  • show system-info
  • show interface status
  • show interface counters

To be honest using the command line was not all that helpful even now that I had a list of commands. But I was able to reset the switch so I could use the GUI. Hopefully, using linux will make me productive, but there are times there will be difficulties made all the harder due to how well it normally functions.

Posted in programming | Comments Off on Does a functioning system make you dumb

Taking people out of the loop using AI or hand calculators

When my children were young it was easy to be the big brain – “Papa knows everything”. He can drive, make food, or buy ice cream. It was a bit of a shock once the kids are no longer in elementary school. They start to study math, biology, physics and chemistry. Just ask papa a question and watch him try to remember back a few decades to when he learned that. How many seconds until he comes up with the excuse “I don’t use that in my daily life, I would have to look into that for you”.

The last hold out school topic is math. Papa can still do math and geometry. However, just the other day my youngest asked me to help him. We both looked at his homework and tried to solve for x or y given a couple of equations. I am rusty so it took perhaps a bit longer but then we hit the final question – solve x, y and z given three equations. This is not really any more difficult than solving for x and y but there is more steps.

It was embarrassing to see that I kept making small mistakes on my journey to solve the three equations. It is not that my youngest was doing any better but at least he did know the results. Early on, he used his smart calculator to solve this problem. It is a bit humbling to see a handheld that seems to do math better. Shoot, that calculator can be purchased for less than 100 bucks.

This particular math crisis was fresh in my mind when OpenAI unveiled GPT 3 in the form of ChatGPT. It didn’t seem like magic but it certainly seemed to both understand all of my questions as well as come up with some reasonable answers. It didn’t seem to matter what topic I was focusing on the information that came back was at least relevant, on some topics the answers came back more like a dictionary description.

If my child’s hundred dollar calculator can replace my math skills what can the OpenAI project do? Well, it turns out that it can do a lot. I decided to see if OpenAI could do my sons homework, not all of it just one problem.

Question
solve for x and y when 3x + y = 16 and x + y = 4

Answer
To solve for $x$ and $y$ when $3x + y = 16$ and $x + y = 4$ using elimination, we can follow these steps:

  • We are given the equations $3x + y = 16$ and $x + y = 4$.
  • We can add these two equations to get $4x + 2y = 20$.
  • We can rearrange this equation to get $2y = 20 – 4x$.
  • Dividing both sides by 2, we get $y = 10 – 2x$.
  • We can substitute this value for $y$ in the second equation to get $x + (10 – 2x) = 4$.
  • This simplifies to $x + 10 – 2x = 4$, which means $-x = -6$.
  • Therefore, $x = 6$.
  • We can substitute this value for $x$ in the equation $y = 10 – 2x$ to get $y = 10 – 2(6)$.
  • This simplifies to $y = 10 – 12$, which means $y = -2$.

Note: In this solution, we used the elimination method to solve the system of equations. Another method we could have used is substitution, which involves expressing one of the variables in terms of the other and substituting this expression in the other equation.

I guess that not only can OpenAI understand my question but it can also calculate the answer.

Of course with GPT 3 being in the news there have been a lot of different people talking about it. One statement was that his son couldn’t wait to get his hands on ChatGPT. Why? Because he could get it to churn out his homework. The hypothetical answer was to generate a description of Russian disinformation campaign at an eighth grade level. I actually tried it and this is something that ChatGPT seems to excel at, creating definitions or explanations of things. I went a bit further and asked for the same thing but at a college level and ChatGTP was able to produce that as well. Yet, in college you might need or want to document your references and when that was added as a qualifier ChatGPT was able to create references too.

It is not clear if ChatGPT will replace our news anchors on television despite it seeming to have a clearer description of some of the topics of the day. Yeah, but could it ever replace the humble software developers that helped to make it what it is today? I wish I would have kept more of my interactions but I did as the following and I did receive answers for every single thing.

  • Give me an example of a hello world in 6502 assembly
  • Give me an example of a 3 state machine written in java
  • create the methods creating and inserting items into a linked list in C
  • Write a political attack add accusing politician Jane Doe of being soft on crime and fiscally irresponsible.

Ok, I cannot remember exactly what kind of political attack add I asked for but I did give it a few specific conditions and despite knowing nothing about my fictitious politician ChatGPT came up with some text for a fairly mean spirited advertisement.

ChatGPT even know a bit about its heritage. When I asked about OpenAI I found out who founded it and when as well as one of the founders, Elon Musk, had a disagreement and left in 2018.

Are we being slowly (or quickly) being replaced by machines? The situation seems rather like the question “is the US was monitoring all of the internet traffic”. It was rumoured to be so but only after Edward Snowdan revealed how much Uncle Sam was looking at other people information that everyone lost their mind. Off topic, but it begs the question

“is the internet good?”
“Should we be sharing so much with the internet giants to get free things?”

I do think that ChatGPT is a huge wake up just how perilous most professions are to AI coming in and eating our lunch. However, ChatGPT is really good at what it does and just super confident about things it is less certain of.

I actually had a real life problem, could ChatGPT answer it? In my database I had some duplications and cleaning up duplications has always been a bit of a nightmare. I tried to ask ChatGTP in many different ways how I could remove the duplicate records while leaving the originals in tact. No matter how I phrased my question I got this back as a solution.

DELETE FROM employees
WHERE id IN (
SELECT id
FROM employees
GROUP BY *
HAVING COUNT(*) > 1
)

The answer almost looks ok, but it turns out that it will delete all records that have any duplications.

My question was specific to Postgres so I did the research myself and if you look hard enough you might even find a solution. This is the solution that I did find.

DELETE FROM tab
WHERE (ctid, tableoid) = ANY(ARRAY(SELECT (ctid, tableoid)
FROM (SELECT row_number() OVER (PARTITION BY column_with_duplicate_values), ctid
FROM tab) x
WHERE x.row_number > 1));

This solution is actually much harder to understand but it does delete any additional entries while leaving the first one in place.

Neither the robot from the Terminator movies nor the IRobot from the Asimov’s books are coming for us yet, but the most recent ChatGPT has proven that our computer may understand human communication better than we do ourselves. If you don’t believe me, look at what the business department creates as a specification and what the software developers deliver as a solution.

Posted in Soapbox | Tagged | Comments Off on Taking people out of the loop using AI or hand calculators

New technology, new problems

I can barely remember the television when I was a child. It wasn’t too smart but it had color and the channel dial supported 11 channels. Not really sure why as there was only 4,5,9 and 11, oh and that public access channel. When it didn’t work, the solution was sometimes to give the side of the TV a wack or two. This might not have really fixed it and to be honest, what does a little kid know about fixing electronics.

Ok, now some years later I can say that dealing with television problems is a lot more difficult. The problem is our television is all via the internet and there are a lot of individual pieces that can go wrong.

  • Our TV
  • Amazon fire stick
  • Netflix account
  • Wifi
  • Router
  • My internet wiring

Tracking down intermittent issues that cannot be reproduced and might only happen once a week is a pain. I can only imagine my parents running around plugging and unplugging devices. It was a few calculated guesses but in the end my answer was the router was the culprit. Old router out, new router in. I then spent hours changing devices which were connecting to “Fritzbox 7490” SSID.

Lesson learned, have your own different SSID name, but perhaps not as anti-fun such as Vodefone-E635 or WLAN-FMSLDV. This will save hours of changing handheld devices to the new default device name next time. My second lesson is use wires as much as possible. Part of my problem, only learned after the fact, was that my neighbor has upgraded his Wifi and his new Wifi caused some signal interference with my network.

In any case, hitting the side of the TV will not make any difference.

Posted in programming | Comments Off on New technology, new problems

A new definition of hospitality

Not all that long ago I visited Minnesota and the nature of air travel usually means a lot more time spent in airports. I guess the Minneapolis International airport is not bad as airports go. There was an obligatory electronics store as well as some shops selling books, magazines and snacks.

I didn’t need a book but I did find a few stickers that would look good on my suitcase. Airports are never the affordable spot to pickup gifts, but you only live once. The item cost didn’t surprise me, but it seems that the Minnesotans had a new trick up their sleeve – hospitality. Hospitality in Minnesota means charging an additional cost of 4% charge an all commerce that takes place in the airport.

It isn’t quite clear to me what new expenses exactly this hospitality charge should cover. The vendors are all paying rent for their space, heat, and building maintenance. The airlines are paying the equivalent rent for each gate and there are additional taxes and fees imposed by airports and governments.

This seems to be a simple cash grab, so much for Minnesota friendly.

Posted in Soapbox | Comments Off on A new definition of hospitality

Right to repair vs ability to repair or perhaps just anti-consumer

It is actually quite odd that despite my first computer being an Apple computer I refuse to purchase any of their devices. This is actually is more due to Apple’s stance on creating a walled garden that makes it difficult or impossible to install software that is not on Apple’s “nice list”.

To be quite honest, I am not all that daring and probably would be happy with the software that is available in their online repository but I don’t like being told how I can use the product that I purchased. Because of this it is easier and easier to become disillusioned at the current state of consumer products, and this is not limited to Apple products.

It was not all that long ago you could own a top end smartphone with an audio jack which could be used for listening to music. You could then purchase a “cheap” set of headphones ranging from ear buds to a full over the ear experience. If you sat on them or wound the wire up too many times so they no longer worked you could then purchase a new pair . This is completely different than the current trend towards wireless ear buds that come in pairs, last for a relatively short period of time and then must be replaced as the rechargable batteries cannot be replaced. To make matters worse, these wireless ear buds, although cool, are quite pricy.

Following this theme, the Samsung Galaxy from a few generations ago made it possible to take the back off of your phone and purchase a new battery – you didn’t even need any tools. That “fix” doesn’t actually offer any new functionality that you might receive when purchasing a new phone but it does extend the life of your phone. You can use it more than two years, this allows you to pass it on to a friend or perhaps to a teenager. (cough cough, perhaps as a starter phone for your 10 year old).

A broken device

A few years ago I used a headset with my laptop and I somehow managed to break the audio jack plug. I was lucky, the laptop was under warranty but it was inconvenient to loose the computer for a few weeks while it was circling the globe getting repaired. Because of that experience I purchased a USB converter so this wouldn’t happen again.

After years of service it just broke. This item is can be replaced for anywhere from 6 – 10 dollars, and perhaps the replacement is even in higher quality than the original. In almost all cases this particular item would be cheaper to purchase than to get it repaired. Yet this is exactly the same line of thinking that seems to endemic to the repair of many of our daily devices. I have never heard of anyone fixing a blue ray player, tablet, or television despite the fact they are much more expensive.

Weighing the cost of repair vs a new item with warranty can be tough, but it seems that the manufacturers have put their thumb on the scale. More and more manufacturers are making these devices more difficult to repair by how they are constructed, the impossibility to get repair manuals as well coercing their parts suppliers to not sell those replacement parts. Sometimes the reasoning is the condescending statement that “the parts are too small” or “that only an authorized personnel” can make the fix.

Indeed electronics have moved from giant tubes to parts that are not much larger than a letter in this article. I respect that the repair might be challenging or impossible for the average person but the parts and manuals should not be forbidden. As the product owner, I should be able to try and fail, just as the professional repair personnel should not be forced to reverse engineer and scavenge parts from old devices just to repair an item.

USB audio adapter that was repaired for just the cost of a new usb connector

Just because a repair could be difficult for some should not prevent us all from being able to make the attempt. Some items are just not that complicated.

pizza cutter with a blade that could be removed for sharpening or replacement

Fixing items big or small saves some money but also saves the world

Posted in Soapbox | Comments Off on Right to repair vs ability to repair or perhaps just anti-consumer

Buying a company like a 5 year old

Initially it sounded like it was a story from the Onion. Really rich guy wants to purchase software company for 44 billion USD, no real investigation whether the company was worth even half of that but the offer was made nonetheless.

I am not the richest man in the world but it is difficult to see how this deal makes any financial sense. After all, the company of his desire only made money in two years since they were listed on the exchange. Ok, ok, those two years were pretty good with a combined profit of approximately 2.6 billion USD.

In order for this to be a good investment I would expect that the return on this investment would need to be at least 10% to beat inflation and make 1-2% profit. Just earning back the principal excluding inflation would require Twitter to make almost twice the amount in a single year that it made in its 2 best years combined.

Perhaps as a private company Twitter could perhaps thin down on some of their staff or locations but that would be a lot of staff.

It will be interesting to see if the Musk finishes the deal or is forced to finish the deal depending on the how things go in court. Elon has made a number of good calls, will Twitter be another success story or less than success and prove Elon is only human.

Posted in Soapbox | Comments Off on Buying a company like a 5 year old

A cable is a cable is a cable

ethernet cables from big box store

For a lot of users which network cable you hook up to your router is not terribly important. Of course a quality cable ensures uniunshieldednterrupted flow of data at the maximum speed allowed by your equipment. Most if not all Ethernet ports on computers these days are at least 1000 Mbps. This should be more than enough fast enough for a lot of applications.

Actually, this is overkill for a number of applications even video streaming. A regular 1080 or 720 HD video stream will require 5 Mbps while 4k streaming will require at least 25 Mbps. Both of these numbers are less than 100 Mbps. This might explain the quality of the cables that you can purchase either at your big box store or on at your internet retailer.

It was only when I needed to make a few of my own patch cables that the quality of these cables became clear. If shopping at Amazon you can feel assured that Cat 7 cables are a higher quality than Cat 6, while Cat 6 is higher quality than Cat 5.

When looking at a few different options side by side that all proclaim to be Cat 6 you need to take a closer look at the specs.

SpecificationDescription
U/UTPUnshielded, Unshielded twisted pair
F/UTPFoiled, Unshielded twisted pair
S/UTPShielded, Unshielded twisted pair
SF/UTPShielded and Foiled, Unshielded twisted pair
SF/STPShielded and Foiled, Shielded twisted pair
S/FTPShielded, Foiled twisted pair
F/FTPFoiled, Foiled twisted pair
U/FTPUnshielded, Foiled twisted pair

The first portion of the specification, before the slash, refers to the type of shielding that is under the skin of the cable which wraps around the four sets of twisted pair wires. There are three different types, no shielding, an aluminum foil as shielding, or very thin braided wires as shielding.

Further inside the cable are four sets of wires that are twisted together. These pairs of wires can be also be shielded to prevent any cross talk.

If your installation is a single Ethernet cable, even if it is fully unshielded, there is not a likely a lot of electrical signals, but if you have a few cables all laying in the conduit or on the floor shielding is important. Another example of the wires in close proximity would be on a patch panel.

CAT7

In addition to all of the different shielding options is one other difference. The difference is the actual diameter of the twisted pair wires. When I was looking at purchasing raw Cat 7 cable I could see that some of the cables had thicker or thinner twisted cable wires. Cat 7 cables with their solid twisted pair wires are not as flexible and are more appropriate for connecting wiring center to a wallplate,

CAT6

The difference between Cat 7 and the lessor standards is typically that these other cables use strand wire. These are much more flexible and are often used between the computer network interface and the wallplate.

Posted in Review, Soapbox | Comments Off on A cable is a cable is a cable