From Motorola 6800 to Arduino MKR

Be thankful that today’s microcontroller is not your grandmother’s microcontroller.

In the early to mid 1980s, one could use any microcontroller one wanted, as long as it was a Motorola 6800 EPROM (Erasable Programmable Read Only Memory).  Thinking about those experiences almost 35 years ago is painful. Sensors required their own army of hardware connections for analogue to digital  conversion. Relays were needed to connect any form of actuator, even a light bulb. Devices were programmed in Assembler. Any and every mistake required the removal of the microcontroller’s top so UV light could flood the chip to erase code. Each erasure took about 15 minutes. It also required everyone to use UV glasses during this process to prevent eye damage.

MotorolaMC68701U4L-1-8702
A Motorola EPROM Microcontroller from 1987. Designed to be erased using UV-light. (image: www.cpushack.com)

The situation didn’t change until 1993, when Microchip Technology introduced the PIC 16C84 EEPROM. Those two Es stand for electrically erasable. EEPROMs don’t need UV light to be erased, which meant that code could be changed instantaneously. The other main difference was the chip’s architecture. Most computers, use von Neumann architecture, storing programs and working data in the same memory. PIC controllers used Harvard architecture, which separated programs from working-data, which allowed programs to be stored in cheap read-only memory. This resulted in a massive decrease in price, and a massive increase in the number of processes that could use microcontrollers.

About the same time, in Trondheim, Norway, Alf-Egil Bogen and Vegard Wollan developed a RISC (reduced instruction set computer) processor, hence AVR, that also featured Harvard architecture. This concept was sold to the Atmel corporation, who began producing AVR microcontrollers, such as the ATmega8.

The main challenge of using a microcontroller, was that the user was expected to know what they were doing. Even getting the software to program a microcontroller could cost almost USD 1 000. Microcontrollers at this point were not for amateur hackers. Parallax, Inc.defused this issue by launching the BASIC Stamp, a microcontroller with its own  BASIC interpreter. It was especially popular with electronics hobbyists. With this the programmer was essentially free, but only worked with the BASIC Stamp. In addition, BASIC Stamp microcontrollers were expensive.

BASIC Stamp
BASIC Stamp, a user-friendly but expensive microcontroller. (Image: Parallax)

Wiring, an open-source electronics prototyping platform composed of a programming language, an integrated development environment (IDE), was developed by Hernando Barragán, starting in 2003. It was built on Processing, which offered a similar environment for multimedia, initiated by Casey Reas and Benjamin Fry. Although the Wiring IDE is written in Java, it comes with a C/C++ library that makes common input/output operations much easier. Wiring programs are written in C/C++.

At the Interaction Design Institute Ivrea in Ivrea, Italy, students initially used the BASIC stamp, but these units were expensive for students to buy. The Arduino project was started in 2003. It was a fork of Wiring that supported an ATmega8 microcontroller. The initial Arduino team consisted of Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino and David Mellis.  but Barragán was not invited to participate.

Like the BASIC Stamp, the Arduino allowed any idiot capable of plugging in a printer cable and pressing download, to get a microprocessor to run. The printer cable was not only a power supply, it was also a mechanism for uploading code to the microcontroller.

The main difference between the BASIC Stamp and the Arduino board was that the Arduino was designed not only to give users simplicity, but to give the board longevity. The circuit had protective devices to prevent damage. My teaching experience shows that this is not foolproof,  but a major help. Pin 13 includes its own LED, allowing the famous Blink program to run visibly, even without a LED fitted to the pin. It was a superior product.

Arduino has gone through some dark times.  While in early 2008, the five co-founders of the Arduino project created a company, Arduino LLC, transferring ownership of the Arduino brand to the company. Boards continued to be manufactured and sold by external companies, with Arduino LLC receiving a royalty. This is a problematic situation for a company claiming to be open source. At the end of 2008, Gianluca Martino’s company, Smart Projects, registered the Arduino trademark in Italy (and thus the EU). When Arduino LLC tried to register the trademark in other areas of the world they discovered that it was already registered in Italy. Negotiations with Gianluca failed to bring the trademark under control of Arduino LLC. In 2014, Smart Projects began refusing to pay royalties. Its new CEO, Federico Musto, renamed the company Arduino SRL and created the website arduino.org.

By 2008, innovation had stopped at Arduino with the introduction of the Duemilanove board. Since then, there have been many different boards using various processors and the IDE code has been tweaked. However, there have been no revolutionary improvements. The Uno is an enhanced Duemilanove, and has been Arduino’s main board since September 2010.

One of the challenges with working with an Arduino come from the design of its pins. These pins are located on the top of the board, using female 0.1-inch (2.54 mm) headers. While plug-in application shields are available that use male pins that fit into the female headers, this arrangement does not support effective use of breadboards. With the development of the Arduino Nano, male header pins on the underside of the board allow it to plug into breadboards. It lacks a DC power jack, and uses a Mini-B USB cable. This minimal board measures  43.18 mm x 18.54 mm.

Arduino Nano
The Arduino Nano predates the Uno, but has never achieved popularity among Arduino enthusiasts. (photo: Arduino.cc)

Perhaps the reason for the popularity of the Duemilanova and the Uno (and the relative failure of the Nano) was their use of the first two in Arduino kits, that were often made and supplied by third parties. The first ten kits using Duemilanovas were purchased for Leksvik Upper Secondary School and came from Oomlout . ( http://www.oomlout.com ) who described themselves in the following way: “What We Are We like to describe ourselves as a plucky little design house. We focus on producing delightfully fun, open source products. Where We Are A scattered organization we are based in Vancouver, British Columbia (manufacturing). We have satellite offices in Leeds, Yorkshire (design), and Point Roberts, Washington (shipping). There is no sprawling corporate campus to offer tours around, yet. But if you are in any one of our neighborhoods, drop us a line and we’ll see if we can arrange something.”

Oomlaut ADRX kit
An Arduino ARDX kit fra Oomlaut. The USB printer cable would not fit in the box, and was not provided as part of the kit. (photo: Oomlaut.com)

The kits came with a plexiglass plate that held the Arduino board, and a half-size breadboard in place. There was also a box with sufficient hardware to allow at least ten to fifteen projects to be made. These projects showed the versatility of the microcontrollers in general, and the Arduino in particular, in many divergent areas. It was a winning formula.

MKR boards have their own form factor 61.5 mm x 25 mm, while claiming to use the minimal format found on the Arduino Nano. This means that the boards can be fitted directly onto a breadboard. The main difference is that the MKR boards use 3.3 Volts, and they will fry if supplied with 5 Volts. With low power consumption, MKR boards are targeted as battery-powered IoT “edge” devices, to be programmed via the Arduino IDE software.

There are now five Arduino MKR boards, each made for to satisfy a particular connectivity issue: MKR ZERO, MKR1000,  MKR FOX 1200, MKR WAN 1300 and MKR GSM 1400. The person responsible for the MKR boards obviously has a defective keyboard, since the names use upper case letters exclusively.

MKR ZERO distinguishes itself by having an on-board SD connector with a dedicated SPI interface (SPI1) that supports music files. Two libraries also support music applications: The Arduino Sound library can be used to play and analyze audio data, while the I2S library uses the I2S protocol to connect digital audio devices using the electrical serial bus interface.

Arduino MKR ZERO
An Arduino MKR ZERO designed for musicians and audiofiles. (photo: Arduino.cc)

Arduino MKR 1000 is similar to the MKR ZERO adding conventional Wi-Fi connectivity but lacking an on-board SD and SPI interfaces.

Arduino MKR 1000
Arduino MKR 1000, designed for IoT wifi connectivity (photo: Arduino.cc)

A LPWAN (low-power wide-area network) allows long range, low bit rate communication between battery-driven sensors and other connected objects. LPWAN contrasts with a wireless WAN designed to connect users carrying large amounts of data. The primary advantage of a LPWAN is that it allows the deployment of sensors without investment in gateway technology.

The MKR family has two different LPWAN boards.

Arduino MKR FOX 1200 provides SigFox connectivity, and includes a two year subscription to the SigFox network. Sigfox uses proprietary technology for communication on the ISM (Industrial, Scientific and Medical) radio band, with a low energy, wide-reaching UNB (Ultra Narrow Band) signal that passes freely through solid objects. Sigfox is a network operator, so users have to wait for them to deploy, and then pay a subscription fee for each device (about 1€ per year).

Arduino MKR FOX 1200
Arduino MKR FOX 1200 designed for connectivity to SigFox’s proprietary network. (photo: arduino.cc)

Arduino MKR WAN 1300 also provides LoRa connectivity, but by using a Murata Lo-Ra module. This uses the CSS (Chirp spread spectrum). With this form of LoRa, anyone can deploy a network to just cover a local area. It can be done at any time, and there is no subscription fee.

Arduino MKR WAN 1300
Arduino MKR WAN 1300 for open source connectivity. (photo: arduino.cc)

Arduino MKR GSM 1400 provides global 3G communications. It does not come equipped with a SIM card.

Arduino MKR GSM 1400
Arduino MKR GSM 1400 for connectivity through a GSM G3 network (photo: arduino.cc)

This weblog post was updated 2021/12/21. to eliminate Seeds from the title. This post formed part of a Needs, Seeds and Weeds website that belonged to my daughter, Shelagh. In addition, other things are also out of date, or my opinions have changed. Apart from the title, updating the text to a block format and other minor formatting changes, the text above this paragraph remains as it was before. Any significant content changes are found below this paragraph

I have totally given up on Arduino as a suitable microprocessor for any projects that I work on. Currently, I am using Raspberry Pi Picos, but would also consider using Teensy microprocesssors for audio projects. For more complex projects, Raspberry Pi currently offers even more powerful boards, including compute modules.

Connectivity

If communication is a time thief, then connectivity is a communications prison where inmates are compelled to waste their lives communicating with other inmates, who have no opportunity to listen. In my previous life I was expected to attend a lot of meaningless meetings. I did so reluctantly. Fortunately, I was also given the opportunity to interact with a smaller group of young people, which was much more meaningful. Unfortunately, I also chose to engage in a lot of trivial Facebook communication, until I cut out 95% of it. This post attempts to explain why social connectivity, through social media, such as Facebook, is doomed to fail.

This post is divided into three sections, labeled assumptions, consequences and justifications, respectively. The first looks at a few important characteristics of social connectivity. The second attempts to explain what is happening, and is yet another pedantic homily. The third examines why, from a quasi-mathematical, semi-logical perspective.

Assumptions

Assume that there are different levels of communication. Keeping to the nearest order of magnitude, these are divided into four levels (A to D).

Level A. There are 10 people in the world where every individual wants regular contact. This probably includes members of their immediate family, possibly a few good friends. It feels natural to communicate with these people on a daily basis.

Level B. There are 100 people in the world that every individual feels inspired to communicate with.

Level C. There are 1000 people in the world that every individual feel some sort of an obligation to communicate with.

Level D. These are the zillion other people populating the world, with whom every individual will have almost no contact, and feels no obligation for more than fleeting contact, at best.

Assume each person is prepared to spend one hour a day communicating using social media. Further, assume she would want to spend most of her time communicating with people belonging to level A, and least with level C, and only incidentally with level D. For the sake of argument, let us put some values on the various types of communication. Assume that writing a message takes twice as long as reading and reacting to a message. Assume that a standard message takes 2 minutes to write, and 1 minute to read. Second, Assume that every person in each group acts precisely the same way.

Assume people would be willing to spend 30 minutes a day communicating with level A people, twenty minutes writing and ten minutes reading. For level B, they would only be prepared to spend 15 minutes a day, ten minutes writing and 5 minutes reading. For level C, they would probably not be prepared to spend much time at all, but here the same values as for level B will be used, ten minutes writing and 5 minutes reading.

There are two ways in which information can be disseminated: privately, directly to one specific person, or publicly, broadcast to everyone at that level. Private dissemination corresponds to sending an email, a private message or an sms. Public communication corresponds to writing on someone’s Facebook wall or publishing a blog post.

Consequences

There is one important consequence of connectivity that I will attempt to express in three different ways (1a, 1b and 1c). In addition, there are two less important consequences (2 and 3).

1a. Facebook understands, and acts in accord to its understanding. Algorithms matter.

1b. Facebook consumers don’t understand, and through their actions show their lack of understanding.

1c. There is no way for people to engage in meaningful two-way communication, with a thousand other people. In fact, it doesn’t work with one hundred. It barely works with ten.

2. There are mechanisms to broadcast messages, but normally one wants to restrict communication to specific demographics. If I look at the ads I have been targeted with in the past few days, I seem to be in the market for: a) an older, single Russian woman; b) a Jeep Renegade from an Ottawa car dealer; c) windows and doors from a Norwegian supplier. Note: this ad was in The Independent, and I actually clicked on it because it was relevant! Pinterest seems to do the worst job of targeting me. Almost all of the pins they think I am interested in are related to soccer (that’s association football, for some of you readers).

3. There seems to be a gradual understanding that social media are using people for their own purposes. Facebook is not really interested in helping me connect with long-lost girlfriends from a previous century; they want me to focus on buying products and services that they have mediated. They find these by examining what I read and write on their media.

An aside. At the dawn of the computer age, in my student days when IBM 360 machines were the rage, I was encouraged to save myself time and money by filling in a form (and investing money) to get the names and telephone numbers of three women who, on the basis of a computer analysis, were ideally suited for me. What I hazily remember in the fifty years since then, is that I only actually met one of these ladies, spending half an hour drinking coffee at Brock Hall. It struck me that she was the least appealing woman I had ever met. She admitted, that she had been given over thirty names, and she was working her way through the list.

The minimum requirement for computer dating to work, is to have an approximately equal number of participants on each list. This just doesn’t happen. The Canadian dating service company, Ashley Madison, is infamous for its data breach. Annalee Newitz, Editor-in-Chief of Gizmodo, stated that there were only 12 000 regularly used female accounts, out of 5.5 million at Ashley Madison, but she has subsequently disavowed this analysis. Adultery seems to have gone out of fashion at Ashley Madison. Its motto has changed from “Life is short. Have an affair.” to “Live the Moment”.

Justification

Here are the results formulated as a matrix:

Level A A B B C C
Method private public private public private public
People 10 10 100 100 1000 1000
Messages out 10 10 5 5 5 5
Messages in 10 100 5 500 5 5000
Read 100% 10% 100% 1% 100% 0.1%
Time to read all 10m 100m 5m 500m 5m 5000m
Messages out 10 1 5 0.05 5 0.005
Days to wait 1 1 1 20 1 200

What the results mean

In any situation dominated by private (one-on-one) communication, the number of communiques in, is equal to the number of communiques out. This applies at all three levels (A to C). There is no problem sending and receiving private communiques.

Difficulties arise when mass communication is used, such as writing a post on a wall, or sending out an email to everyone in one’s address book. Level A: With 10 people, 1h 40m has to be devoted to reading these public messages. Level B: With 100 people, reading increases to 8h 20m. Here one is sending and receiving messages at half intensity compared to level A. At the same intensity as level A, it would take 16h 40m. Level C: With 1 000 people, reading increases to 83h 20m. At the same intensity as level A, it would take 166h 40m. There are 168 hours in a week.

If the number of messages was to be reduced to correspond to the intended reading rate, then only one public message a day would be allowed at level A. This is reduced to one message every 20 days at level B, and to one message every 200 days at level C.

There is just no way in which everyone can engage in mass communication. This fact of life brings us back to reality. If mass communication is to occur, then algorithms have to be employed to limit who receives which communiques.

 

Logitech K380

k380-blue
Logitech K380 keyboard (photo: Logitech SA)

Behold, my lifetime favourite keyboard is the Logitech K380, in blue with teal highlights. One currently resides on my desk. I am contemplating buying a few to hold in reserve, to replace the current one when it wears out. I first came across a live version of the K380 in a Staples store on a trip to British Columbia in 2016, and knew immediately that this model was  for me.

One important reason for its appeal is its small size, best demonstrated here in a photo by J A Watson. While the keyboard is compact, the individual keys are relatively large, and with appropriate spacing, at least for me, a person with large hands. One can feel when a key has been depressed, but there is no audible click. It is a relaxing keyboard to use. (For A J Watson’s impressions of the keyboard, see: http://www.zdnet.com/article/hands-on-logitech-k380-compact-multi-device-bluetooth-keyboard/ )

J A Watson Keyboards
Logitech K350 (top) and K380 (bottom). (photo: J A Watson)

Three different Bluetooth devices (computers, tablets, smartphones) can be connected to the keyboard. To pair the K380 to a device, press and hold one of three highlight colored keys (F1/F2/F3) on the keyboard’s top left for three seconds. When the associated status LED above it starts to blink, the keyboard is ready for pairing. It stops blinking when pairing is complete. Bluetooth 3.0 allows connection to a wide variety of devices. The same LEDs used in pairing, indicate which device is active, if any.

Its small size, light weight and multi-device capability ensure portability. It is powered by two AAA batteries, which Logitech claims should last two years. A power on/off switch is positioned on the upper left side.

Did I consider other keyboards, before buying the K380? Yes, I examined both the K480 and the K780, but rejected both.

k480
Logitech K480 (photo: Logitech)

The apparent advantage of the K480 is its ability to hold a smartphone or tablet at an angle suitable for reading. At the same time, this adds to the keyboard’s dimensions and mass. If the K380 were not available, I am sure that I could live with a K480.

K780
Logitech K780 (photo: Logitech)

Like the K480, the K780 can also hold a smartphone or tablet in its grasp. If both the K380 and K480 were unavailable, I would probably still reject the K780. I do not, and never have, understood the appeal of numeric keypads. I make an exception for those unfortunate people who have to enter large quantities of numeric data regularly, and who may find a keypad user friendly. However, that involves very few people. For most users, and from an ergonomic perspective, keypads require the movement of hands away from the keyboard, a positioning of hands on the keypad. At the end of its use there is a similar need to reposition hands once again on the keyboard. Personally, I have no issues with entering numeric data using the number keys on a K380. (Yes, I typed all three of those numbers in without repositioning my hands, or making any errors.)

This weblog post was updated 2021/12/21. to eliminate Deeds from the title. This post formed part of a Needs, Seeds and Weeds website that belonged to my daughter, Shelagh. In addition, other things are also out of date, or my opinions have changed. Apart from the title, updating the text to a block format and other minor formatting changes, the text above this paragraph remains as it was before. Any significant content changes are found below this paragraph.

Power

For forty years vendors of computing equipment and their attendant programs have used power to sell products. A year on, and a revised product is unveiled as yet more powerful. At the same time, these devices are diverting energy from their primary task to run fans and other cooling equipment, in an attempt to mitigate the negative effects of their energy usage, notably the production of heat, that creates unbearable working environments for people, not to mention silicon.

Power architecture refers to IBM’s RISC microprocessors, promoted by power.org, used in the PowerPC and the Apple PowerBook. Power software was an IBM operating system enhancement package. Not to be outdone, Microsoft has PowerPoint, its slide presentation software, and PowerShell, a task automation and configuration management framework. Power is pervasive.

Macintosh_PowerBook_140
An Apple Macintosh PowerBook 140, from October 1991. (photo: Bluedisk at English Wikipedia)

The computer industry is not the only sector to be obsessed with power. Vehicle manufacturers are worse. Not only do vehicles come equipped with factory air and  cassette tape decks, there  is an endless supply of power products, including power brakes, power steering, power windows, power seats and the more generic power accessories. People unable to understand kilowatts, can even use horsepower to express themselves, 1 HP = 746 W.  Even the Swedish Amcar magazine is called Power.

Power magazine
Power Magazine (2017-4), available from 13 June 2017, Sweden’s contribution to a better understanding of older American cars. (source: Power Magazine)

Give me adequate power, but nothing more than that. Purchasing computers always involves compromise. Along with numerous Gigabyte Brix models, another desktop computer I considered before purchasing an Asus VivoMini VC65, was the CompuLab Mint Box Mini. It comes with Linux Mint pre-installed, but with the Mate desktop. It has 64 GB internal SSD storage, compared to the VC65’s 128 GB SSD and 1 TB HDD. While the Mint Box is fanless, the Asus retains a fan. I decided to purchase the Asus because it offered the best compromise, and was the only computer on my short list to have a DVD-reader.

Youtube Vlogger Joe Collins, in his Top 5 Mistakes New Linux Users Make, has several recommendations regarding equipment. Several of them are broken in the Mint Box Mini, including his advice to use Intel processors, and avoid AMD graphics cards. The Mint Box is powered by a 1GHz AMD A4 Micro-6400T 64bit Processor (Quad-Core), 4GB DDR3 Ram, AMD Radeon R3 Graphics and Realtek HD Audio.

compulab-mintbox-mini
A CompuLab Mint Box Mini running Linux Mint. An adequate machine for most purposes, but lacking a DVD reader I currently need. (photo: CompuLab)

I am truly thankful that the age of fanless computers has arrived. Miniaturization without excessive heat. Silence. I am equally thankful that the age of electric cars has also arrived, and an age of autonomous vehicles is on the horizon. If not silence, at least less noise. I will not mourn the disappearance of Harley-Davidson.

Open Source Workshop Automation

This post presents Marmot Chirp, an Intelligent Workshop Assistant (IWA) to be used at the Unit One workshop. It is an implementation of Home Assistant that could find its physical expression on a Raspberry Pi. However, there may be issues that require other hardware to be used. Thus, a more likely alternative would be a Gigabyte Brix EKi3A IoT unit with:

  • Intel 7th Generation Core i3-7100U Processor
  • Fanless 0.76 liter volume design: 180(W) x 117(D) x 36(H) mm, Weight 978g
  • 1 x COM port (RS232)*
  • 2 x USB 3.1 (1 x USB Type-C™), 2 x USB 3.0
  • HDMI 2.0 plus Mini DisplayPort 1.2 Outputs (Supports dual displays)
  • 2 x SO-DIMM DDR4 Slots 2133 MHz, Max 32GB
  • 1 x M.2 SSD (2280) slot
  • IEEE 802.11ac, Dual Band 1×1 Wi-Fi & Bluetooth 4.2 NGFF M.2 card
  • Gigabit LAN
  • Headphone/Microphone Jack
  • VESA mounting bracket (75 x 75mm + 100 x 100mm)
GB-EKi3A Brix iot
Gigabyte Brix IoT platform

Regardless of the computer used, it will have to be fitted with additional equipment: speaker, microphone and light. The light will be off (indicating system is not functioning), steady on (system is in use), pulsing on (system in standby mode).

Why Chirp?

An intelligent personal assistant needs a name, so it knows when it is being activated. Female names are often used, eg Alexa and Siri. I pity the poor girls with those names, or anyone living in proximity to them, with such assistants. Similarly, an IWA has to be addressed, so it knows when users want something done. One of the most important characteristics in naming an intelligent assistant, is that the name is unique, and not used in normal conversation. In a workshop, calling the IWA Plywood or Lathe is just asking for trouble. Here, the name used is Chirp.

bty
The Unit One Workshop, at Vangshylla, Inderøy, Norway

Dialogue

There are a lot of different situations in a workshop where a user would want to interact with a IWA, and other situations where the workshop owner, through the IWA wants information from a user.

Much of the terminology used would be based on voice procedure used in other situations.

1. Visitor arrival

The IWA has proximity and other sensors to detect the presence of a visitor.

A. Known user.

IWA: Welcome to Unit One. I’m Chirp, an intelligent workshop assistant. Who are you?

Brock: Chirp, I am Brock

IWA: Welcome Brock. Your personal safety equipment is in box <A/ B/ C/ C/>.You are logged in at <time> on <date>.

B. Unknown user.

IWA: Welcome to Unit One. I’m Chirp, an intelligent workshop assistant. Who are you?

Cynthia: Chirp, I am Cynthia

IWA: I don’t recognize you, Cynthia. Please use the computer to log in or register yourself.

IWA: Thank you for registering, Cynthia. You are inside the Unit One workshop, where people use technology to make the world a better place. In front of you is box <A/ B/ C/ D> containing your personal safety equipment, including safety glasses, hearing protection, gloves, and respirator. Please use the equipment you need. Please note that there is a first aid kit and a fire extinguisher near the entrance, and a second fire extinguisher at the end of the workshop, near the Annex. These are to be used when needed. If you need help, just call me by my name, Chirp. You are logged in at <time> on <date>. Please remember to log out when you leave.

I have heard some interesting titles used by an IPA to address one or more users. The one in particular that I would want to avoid is, “Yes, Master.”

2. Other Events

A. Audio (video?) contact with house, referred to as Fjellheim, meaning mountain home, in Norwegian:

User: Chirp

IWA: Yes?

User: Chirp, Patch me through to Fjellheim.

Event: Telephone rings Brock or Trish, depending on who is home.

(Postive response) IWA: Contacted Fjellheim

(Negative response) IWA: No one is at home at Fjellheim.

With a positive response, a dialog would then follow. The IWA would be listening to the entire conversation waiting for its name and new instructions. The conversation would end with:

User: Chirp, terminate.

IWA: Conversation terminated.

B. Audio contact with emergency services:

User: Chirp

IWA: Yes?

User: Patch me through to <emergency services/ambulance/ fire department/ police>.

Event: IP telephone contacts appropriate service

(Positive response) IWA: Contacted <service>

(Negative response) IWA: Unable to contact <service>

C. Turn on electrical circuit for a particular machine (but not the machine itself, except dust control and air).

User: Chirp

IWA: Yes?

User: Enable <dust/ air/ drill/ band saw/ mitre saw/ table saw/ planer/ router/ sander>

Event: Circuit turned on for <dust/ air/ drill/ band saw/ mitre saw/ table saw/ planer/ router/ sander>

Positive IWA: <dust/ air/ drill/ band saw/ mitre saw/ table saw/ planer/ router/ sander> enabled.

Negative IWA: Unable to enable <dust/ air/ drill/ band saw/ mitre saw/ table saw/ planer/ router/ sander>

D. Turn off electrical circuit for a particular machine (turn off the machine itself for dust control and air).

User: Chirp

IWA: Yes?

User: Disable <dust/ air/ drill/ band saw/ mitre saw/ table saw/ planer/ router/ sander>

Event: Circuit turned off for <dust/ air/ drill/ band saw/ mitre saw/ table saw/ planer/ router/ sander>

Positive IWA: <dust/ air/ drill/ band saw/ mitre saw/ table saw/ planer/ router/ sander> disabled.

Negative IWA: Unable to disable <dust/ air/ drill/ band saw/ mitre saw/ table saw/ planer/ router/ sander>

3. Visitor Departure

Person: Chirp

IWA: Yes?

Person: <name of person> is leaving.

IWA: Goodbye <name of person> Please put your personal safety equipment in box <A/ B/ C/ C/>.You are logged out at <time> on <date>.

What other events need to be controlled? What other comments do you have about an intelligent workshop assistant?

Update: 2021-12-20 at about 21:00.

This weblog post was originally published 2017/10/29 at 05:49, which is four years and fifty-two days ago. This is a trial to see if eliminating Needs the title, has any consequences. That is because, at the time of publication, this post formed part of a Needs, Seeds and Weeds website that belonged to my daughter, Shelagh. In addition, other things are also out of date, or my opinions have changed. Apart from the title, the text above remains as it was, content changes are found below.

Internet connectivity. The workshop is in theory connected to the server (Mothership) with a fiber optical cable. Theoretically, inside the workshop the cable terminates at a switch. In practice none of these installations have taken place, yet. The cable has been purchased, tubing has been laid between the workshop and the house, but work is needed to get the cable from the outside of the house to the server.

Inside the workshop the switch could be something as simple as a Unifi Flex Mini, with five Gb Ethernet PoE connections, one in, and four out. For about ten times the price, 10Gb Ethernet PoE connections can be supplied using a Unifi Flex XG unit. Wifi should not be a problem if a Unifi 6 Lite access point is connected to one of the ports.

As discussed in a recent post about Forth, the machine controller would be programmed in Forth. This could be a single unit attached with an Ethernet cable to the switch. At the present time, this unit could be a Raspberry Pi 4B.

For design, engineering, administrative and other purposes a relatively high powered workstation computer should be available. An Asus Zen AiO machine was purchased used to be a kitchen controller. This machine was rejected, and could be taken into use in the workshop. It comes with a touch-screen.

With an access point, machine controller and workstation in use in the workshop, three of the four output ports of the switch are in use.

Fishino

The original is not always the best.

Rather than sticking with Raspberry Pi, the innovators at Cliff Cottage are using Asus Tinker Boards. The Tinker Board is simply a better machine. Not perfect, perhaps not even good, but better. A similar sea change may be happening with the Arduino.

The Fishino Uno is yet another Arduino Uno board, in term of connectivity and size. However, it is more than that. It has many features that the Arduino lacks: internet connectivity, large storage capacity using a micro-SD card and an on-board RTC (real-time clock) with battery backup. There is a minimal change to the Arduino form factor, caused by a 7mm wifi antenna overhang.

Fishino diagram
The Fishino – more than another pretty face in the sea of microprocessors. (Photo: www.open-electronics.org)

These improvements make Fishino better suited for home automation systems, than the original Arduino. The WiFi module allows the Fishino to be used as a WiFi station and/or access point, and allows smartphone control even without a WiFi connection.

In summary, some of the characteristics of the Fishino that make it better than the Arduino.

  • Fully compatible with Arduino Uno
  • WiFi module on board, that can be uses in station mode, access point mode or both
  • MicroSD slot on board
  • RTC (Real Time Clock) with backup lithium battery on board
  • Increased current capacity on 3.3V supply section
  • Connectors compatible with breadboards
fishino image
Fishino is the same size as an Arduino except for the 7mm wifi antenna overhang. (Photo: www.open-electronics.org)

For further information see: https://www.open-electronics.org/fishino-arduino-become-wireless/

Shield

A shield is a printed circuit board that fits on top of the main Arduino  (or Fishino) board, offering additional attributes to the system. Here we will mention two that can be used in home automation.

Fishino Octopus

PWM – For the next few minutes please don’t ask what PWM means. Pretend that it refers to Portland International Jetport, or Peter Wallace Myrick or anything else … Just accept that there is something called PWM, and that it can be important.

Some motors, including those on sewing machines, require variable speed. In the past, a rheostat was used to adjust the electrical current flowing through it. This wastes power because it uses the same amount of energy regardless of the motor speed. What isn’t used to power the motor is released as heat.

What was needed was an efficient power adjusting tool. PWM solved this problem. On an Arduino / Fishino Uno there are only six PWM outputs. Many times this is far too few.

The Octopus expansion shield allows 16 PWM outputs and 16 additional digital inputs or outputs. Up to 8 of these can overlap, allowing a system to manage 128 PWM outputs and 128 digital inputs or outputs.

Fishino Octopus
A Fishino Octopus powering 16 servo motors. (Photo: www.open-electronics.org)

Fishino Colibri

Engineers do not always have the greatest understanding of how the natural world functions. Colibri means hummingbird, and surprisingly, it is not a fish. An octopus isn’t a fish either, but we won’t force the issue.

The Colibri is used to provide power to RGB LED lighting. These use 4 channels to provide a full range of colours using PWM control signals.

Fishino Colibri
The Fishini Colibri – a RGB LED light controller. (Photo: www.open-electronics.org)

By the way, PWM stands for Pulse Width Modulation.

Bunsenlabs Linux and other adventures not taken

A former pupil, Lars, suggested that I use Bunsenlabs Linux, I took his suggestion seriously, and investigated it. It is an impressive distro, especially for people with older and slower equipment. Its windows manager, Openbox, was developed in Canada. Even the release names, Hydrogen followed by Deuterium, appeal. Yet, I have not used Bunsenlabs, or even installed a test version. This post explains why I will probably never use Bunsenlabs, but also why new Linux users should still consider using it, and other distributions.

VivoMini &amp; Tinker Board
Asus Tinker Board (left) and Asus VivoMini (behind ruler) both with their own versions of Linux.

Relationships

Relationships between people influence many (if not most) of our decisions. This is particularly so regarding computers. The relationship one has with his or her employer, can have a significant impact on one’s choice of equipment, as can the relationship of students with their schools. For a retired person, like myself, impact is personified in just one individual, code name Fluffy, who counts on me to solve most of her serious computing challenges. I could say to her, “Fluffy, this is your computer – fix it yourself!” If I did so, she might feel less enthusiastic about about feeding me, washing my laundry, etc. So, I lovingly look after her computer problems, and change her winter tires.

Relationships are often symbiotic, although not according to the biological definition of the term. Most often they involve mutualism, a relationship where both parties benefit. If you are involved in a commensal or parasitic relationship that benefits only the other person, please seek competent help!

In my web of relationships, I have one person I consult with on computer problems, code name Uncle Al. Sometimes, he will even ask me questions, so it is not fully a one-way street.  In addition, there are two other denizens of this web who are dedicated Apple users, who have each other and an Apple infrastructure to help them. Because of our relationship, I can ask them questions about Apple products, of which I still have one, and they more or less feel obliged to help.

Because computing problems often require consultation to produce meaningful answers, one needs someone to talk about these problems. If Uncle Al went over to using another distribution, I would definitely have to consider using it.

In addition, I have at least five and a half other people in my web who use me when computing emergencies strike. These are listed as “external” in the table below. Often, they have no one else around who can offer them advice, who does not have a vested interest in having them spend money. I can use up to several hours a year working on their computing problems. I have code named these users: Ann, Axel, Ella, Eve, Henry and Kate. The person needing the most help, code named John, is no longer among the living. However, he was the most fun to help, if only because his insights into computing were so limited that one learned how such people think.

Typically these people have a cell phone, a laptop or desktop computer and possibly some other device. They are connected in some way to the internet, and may have a printer. I do not normally work with phone problems, except for those involving Fluffy or myself.

There is a third category, casuals, who may ask me questions, but who are not in any way dependent on me to solve their computing challenges. Sometimes, I may have even worked on a computing problem requiring several hours of work, but it is normally a one-off situation without ongoing commitments. Sometimes, I take on their challenges just to learn something. Casuals are not discussed further, except to say that I enjoy the

One way in which I try to simplify my work is to standardize the products I work with, but this does not apply to externals. John, if I remember correctly, managed to buy a Swedish language, Windows Vista machine produced from some obscure manufacturer, possibly Dell. At the time of this purchase, everyone else was using Windows XP.

Asus is my primary computer supplier because I can count on each machine behaving in much the same way. I have bought a large number of Western Digital hard drives. There are exceptions. I am still wondering why I purchased two Seagate 4 TB external drives.

Installations

During the past six months, I have installed Linux on six different computers, four of them with Linux Mint (two desktops and two laptops), and two Tinker Boards with Tinker Linux. Before each Mint installation, I  seriously considered using Bunsenlabs Linux. Why didn’t I try Bunsenlabs? The main reason has to do with the complex variety of equipment that I have to relate to. I just could not bring myself to work on yet another OS distro.

Here is an overview of what I have to relate to in terms of equipment, with projections for 2018.

Fjellheim  Fjellheim  Fjellheim Externals  Externals  Externals
OS 2016 2017 2018 2016 2017 2018
ADM 1 1 1 0 0 0
Mint 1 3 + 1 ret. 4 0 1 2
Tinker 0 1 1 0 0 0
Windows 7 1 0 0 1 0 0
Windows 8 2 0 0 2 1 0
Windows 10 1 1 0 2 3 3 or 0
MacOS 1 0 0 0 0 0
iOS 1 1 0 0 0 0
Android 1 1 2 0 0 0
Kobo 2 2 2 1 1 1
Arduino 1 1 1 0 0 0
Total machines 12 11 11 6 6 6 or 3
Total OS types 10 8 6 4 4 3 or 2

The number of systems was reduced between 2016 and 2017 by returning two Windows 8 laptops to Nord-Trøndelag county (our previous employer), and by replacing Windows 7 with Mint on an Acer Aspire and then giving it away. Similarly, we gave away a Mac laptop (along with a spare iPhone). In addition, there has been migration to Windows 10 by external users, eliminated Windows 7 machines and reducing the number of Windows 8 machines in use.

One of the Asus laptops running Mint has reached its end of life, late in May 2017. Its replacement is the second Asus laptop. Soon the iPhone will be replaced by an Android phone. Fluffy is even considering “upgrading” her Windows 10 OS to Linux Mint. This will require a migration of our Windows based BookCAT library system to Koha, and a solution to our BankID identification system that doesn’t seem particularly enthusiastic about Linux. In addition, Fluffy is looking philosophically at the NOK 100 she spent buying Microsoft Office 2016, with updates guaranteed for the next 10 years. In the midterm there may be a need for a dual boot (Linux Mint + Windows 10) system.

Without having Windows systems in the house it will be a lot easier for me to offer “externals” a solution to their problems. They can either choose to install Linux Mint, and get some help, or they can keep Windows installed and find someone else to help them, a Windows expert

Ideal systems

There is no ideal systems because the uses made of systems are changing all the time. The needs of users vary, and there is absolutely no reason why anybody should imitate the choices of an old man!

A NAS (Network attached server) is a very different machine from a laptop or desktop machine. It performs a limited number of processes, but these have to be done well. A NAS needs an OS that responds to its server functions. ADM, is regarded as a good COTS (Commercial Off The Shelf) OS, but possibly not as good as QNAP and Synology. People without ties to Asus would probably be better off buying a QNAP NAS – TS-451, for example, housing 4 Western Digital 8TB Red hard disks, or even their smaller TS-251 that houses 2 hard disks.

NAS
An Asustor 1004T NAS (Network Attached Server) with 4 x 6 TB Western Digital Red hard disks, running the latest version of ADM.

Lars may be quite correct that Bunsenlabs is a better system for laptops and desktops than Mint. However, I will probably be staying with Mint. Andrew Williams at Tech Radar has looked at seven distros in an article titled “The best Linux distros 2017: 7 versions of Linux we recommend” (despite the link’s name) dated 23 May 2017: http://www.techradar.com/news/software/operating-systems/best-linux-distro-five-we-recommend-1090058  These seven are: Elementary OS (Loki), Linux Mint (18), Arch Linux and its alterego Antergo, Ubuntu (17.04 LTS), Tails – claiming to be the best Linux distro for privacy, CentOS (7), and Ubuntu Studio – for home music recording or video production.

One of the main reasons I bought an Asus Tinker Board, was to work on home automation projects. I will be restricting myself to Tinker OS, at least for the moment. Since the Tinker Board is a superclone of a Raspberry Pi, people have the option of using 11 different systems that have originated on the Pi: http://www.hongkiat.com/blog/pi-operating-systems/

That more or less wraps up the comments I have about Linux operating systems. Readers will be spared reading my prejudicial comments about Android on smart phones, Kobo on e-readers, and Arduino on Arduino boards.

General Systems Theory – Nine Requirements

Proton Bletchley is responsible for General Systems Theory at Unit One. Here are his Nine Requirements for working effectively with Systems.

1. Persona

Life can be distracting. A person who has a mind divided between, say, surfing in Australia and general systems theory will accomplish little, because they will be bouncing between dreams of waves and boxes of GST content. At Unit One, work is divided between several different personas. While Brock heads off to virtually surf at Bondi Beach, Proton Bletchley is responsible for GST. His last name comes from the secret WW2 centre where Alan Turing worked, and developed much of the foundation for computer science. His first name comes from Earnest Rutherford, who named protons in 1920.

Proton

Proton Bletchley is Unit One’s resident expert in General Systems Theory. He is also an environmentalist, which helps him focus his thoughts.

2. Wardrobe

If one goes to the trouble to develop a persona, the very least one can do is to clothe that persona in something relevant. Proton uses corn blue workwear. This in part is because his environmental focus is on water.

Workwear is useful because people who work with General Systems Theory also have to function in many different places in the real world. A typical example, might involve the collection of environmental data using Arduinos with SD cards. Devices may have to be made in a workshop, then transported to a site where they would be used as data loggers.

Of course there are GST theorists, sitting around producing virtual thoughts while puffing away on their virtual pipes, can reduce their clothing budgets considerably, by purchasing only virtual clothing.

star-sg-mechanic-factory-cotton-worker-uniform-workwear
Workwear feels appropriate when working with General Systems Theory. While Proton has only a blue outfit, other workers may wear green, black or red – depending on their moods.

3. Computer

Computing is an integral part of General Systems Theory. At one level this means supercomputing. Meteorologists and other -ists who want data in real time, need fast computers.

The fastest computer in the world is arguably D-wave’s quantum computer in Burnaby, just a few blocks from where our good friends Roy Sinn and Sue Innes live. See: http://www.dwavesys.com/

So, there is no point in Proton having anything big. It will never be big or fast enough. He is opting for the exact opposite – minimal computing. Proton remembers seeing his first ad for an EEEbook, and thought “I want that!” He was referring to the computer, not the girl!

eee_girl_1
Asus EEE PC 701 was launched in Japan in January 2008. (Photo: Asus)

By June 2008, Asus had probably realized that many of its customers were women and offended by its previous ad. With the launch of the Asus EEE PC 900, it replaced its beach girl user with one referred to as “The Housewife”.

eee_girl_2
“The Housewife” was used to promote the new and improved Asus EEE PC 900 in June 2008. (Photo: Asus)

Today’s (2016) ads for Asus have not changed much, although the computers are larger and more powerful.

asus-eeebook-x205ta
Asus EeeBook X205TA (Photo: possibly odishafast.in)

Sam Rutherford, in Laptop Mag concludes, “The Asus EeeBook X205TA offers excellent battery life, a solid display and strong everyday computing that puts it a notch above other budget laptops.”

4. Operating System

Proton prefers Linux. Because of Proton’s connections with New Westminster, the original answer was Mandrake. Mandrake the Magician takes his name from Leon Mandrake, the stage name of New Westminster resident Leon Giglio. Leon Mandrake had been performing for more than ten years before Lee Falk “invented” the comic strip character. However, in 2004, MandrakeSoft lost a court case to Hearst Corporation, and was forced to change the name of its Linux distribution.

480px-leon_mandrake-50
New Westminster’s very own Leon Mandrake with Princess Narda (Photo: Yes, well looks like Romaine down at the bottom …citing sources can be difficult at the best of times)

Fast forward to 2016. Mandrake has morphed into Mageia. Version 5.1 was announced 2016-12-02.

Proton has considered using other Linux distributions, including Linux Mint and elementary OS (which has a unique and simple design). If Proton wasn’t so prejudiced, I’m sure that he would be wanting to experiment with elementary OS.

5. Browser

In keeping with the open source philosophy of Linux, Firefox is an open-source web browser. There are many other open source browsers, including Chromium and Opera. However, Proton is concerned about the close bindings between Chromium and Google. Opera has started to require users to log on every twelve hours, so they can profit from advertisements. As an alternative to Firefox, Midori is a lightweight, fast and open-source (free) browser.

6. Email address

One of the main challenges of employing so many personas, is the habit of having only a single personal email address. Proton disagrees with this philosophy, and is considering having an additional email address just for the Proton Bletchley persona. The advantage is that one can keep all of the material related to that persona in a single place.

7. Office software

Open source office software provides many of the features and functions provided by Microsoft Office. LibreOffice is a fork of OpenOffice consisting of a suite of programs packaged in a single install. Components of the LibreOffice suite are:

  • Writer: word processor.
  • Calc: spreadsheet editor.
  • Impress: presentation editor.
  • Draw: graphical editor.
  • Math: mathematical formulae editor.
  • Base: database program.

Project planning software has always been something of a problem. LibrePlan, for example, states that it is open source, but that only applies to a limited suite of software. Anything really useful is excluded from the open source version, and has to be purchased. At the moment, Proton’s favored open source project software is Open Project.

8. Simulation software

There is a close connection between general systems theory and computer simulation. While Insight Maker is not open source, it is free and available, although Proton notes disturbingly, that it has not been updated for over a year. The last bimonthly newsletter was posted in August 2015. His fear is that someday it will simply disappear.

While some simulation programs are general, others are made for specific purposes. This topic will be covered again in another post.

9. Library

Books and articles are needed for inspiration. Ideally, they also have to be available for scrutiny at any time. It is becoming more and more important to use ebooks, which compress the space of even the largest library into less than a litre.

Update: 2022-01-26 13:00

This is historical content written and published in 2016. There is little point in updating this post, except to add how some things have changed, while others have remained the same.

  1. Persona: From the number of weblog posts being written, a person might suspect that Proton had retired, rather than Brock.
  2. Wardrobe: It is difficult to acquire cornflower blue workwear. Brock did manage to get some red workwear about 2017, but even these are difficult to get hold of. He is now using grey work trousers. Arduinos are no longer being used. These have been replaced by Raspberry Pi Picos, starting in late 2021.
  3. Computers: Asus computers are still in use, but Brock’s latest laptop is now a VivoBook, with a 14″ screen, Ryzen 3 processor, 8 GB of RAM, and 512 GB SSD. Trish is still content with her ZenBook UX305C. At some point, but only at her request, it will be upgraded. Other computers include an Asus VivoMini VC65, an Asus PN-50, an Asus AiO Pro.
  4. Operating system: Linux Mint is in use. Brock still dreams of using Mageia, with version 8 the latest incarnation. The latest experimentation in the household has been with Linux Endeveaur. However, it was not performing adequately to replace Linux Mint. Mageia
  5. Browser: Firefox is still the main browser in use. Brave has been installed.
  6. Email Address: Currently, the McLellans have a domain at mclellan.no that serves their needs in terms of email addresses and websites.
  7. Office software: no changes.
  8. Simulation software: no changes
  9. Library: A Calibre library stores household ebooks. People in the household then use their personal Kobo ebook readers to read books. We have ordered two new Kobo Libra H20 models, as replacements for our current Glo HD models, purchased in 2016-.

Update: 2022-12-24 23:00

Our general policy is for Trish and Brock to use the same equipment. Thus on 2022-08-30, we purchased 2 x Asus Zenfone 9 (A12202) hand-held devices, then in 2022-10-20 we purchased 2 x Acer Swift 3 14″ (SF314-43) laptops. Both sets of machines use USB-C ports for charging.

Soon after the previous update, the 2 x Kobo Libra H2O e-readers arrived. They supplement, rather than replace the Glo HD models. All of the Kobos use USB-micro ports for charging. Any future e-readers will have to use USB-C ports.