2020-05-20 (W) HouseRobotInterference

My friends and I have talked about privacy concerns about home-assistants like Amazon Echo, Alexa, Google Home, and others. We have discussed abandoning them, the legitimacy of the included mute button, and what the spying employees must think of us. In my case, they probably judge me on how much I talk with my cat. During these discussions, we occasionally triggered the devices in question, so we started referring to these voice-activated-home-assistants as house robots, which are not to be confused with robotic vacuum cleaners.

One solution I had was to dilute the information stream by blasting my Echo with speech when I wasn't around. I wanted a random word and speech generator so that Amazon would overhear a bunch of stuff, but it wouldn't be anything that would help them in marketing. In the end, when I logged into Amazon with a web browser, their suggestions would lose their custom-tailored glamour. Instead of marketing to me based on countless hours of observation, it would be tainted wildly by dribble and easy to ignore.

I planned to create a pseudo-random word generator, and then offer it as a YouTube stream so others could befuddle their house robot without any downloads or soldering.

Enough background


I started with a list of 6,800 common nouns, which seemed like the most likely hooks for spying marketer algorithms. Google spreadsheets seemed like a fitting home, and I had experience with their RAND() function. As I looked, it seemed like Google also had an Accessibility option to read the spreadsheet out loud. It seemed like a one-stop-shop, so I looked for instructions to turn on the text-to-speech function. Nothing worked. Forums teemed with people who reported the same dead end.

A few folks said that a Chrome plugin called "Read Aloud" worked for them, so I installed it. It would have been fine if I played with it longer, but I shied away because it immediately started to read the whole screen, and I wanted something to read a single spreadsheet cell. 

My next try was another plugin Chrome called "Selection Reader (Text to Speech)," which worked well to read a single spreadsheet cell, so long as I highlighted the word first. It turned out that "Read Aloud" would also read selections, but it displayed a dialogue box during the reading, and I didn't like that.

The next step was to select a noun pseudo-randomly. I used an equation borrowed from Arduino's map() function to glue an arbitrarily long list into Google Sheet's RAND() function. This way, a number between 0 and 1, would translate to an integer between 1 and 6800. The INDIRECT() function in Sheets let me use that pseudo-random number to display the chosen noun in the same cell. To select that word, instead of the equation, I had to copy and paste the value into a new place. Pasting also triggered the RAND() function and gave me a new word.

So far, everything was a manual process, but it was repeatable, and I had all the pieces on the board. I used AutoHotkey to copy the prandomized cell, paste the string value to a new one, select it, and press the speak button. I tuned the sequence to one second per word and recorded a screen capture of ten words.

(0:17) Screencap demo of word generation

The rest of the posts for this project have been arranged by date.
First time here?

Completed projects from year 1
Completed projects from year 2
Completed projects from year 3
Completed projects from year 4
Completed projects from year 5
Completed projects from year 6
Completed projects from year 7

Disclaimer for http://24hourengineer.blogspot.com and 24HourEngineer.com

This disclaimer must be intact and whole. This disclaimer must be included if a project is distributed.

All information on this blog, or linked by this blog, is not to be taken as advice or solicitation. Anyone attempting to replicate, in whole or in part, is responsible for the outcome and procedure. Any loss of functionality, money, property, or similar, is the responsibility of those involved in the replication.

All digital communication regarding the email address 24hourengineer@gmail.com becomes the intellectual property of Brian McEvoy. Any information contained within these messages may be distributed or retained at the discretion of Brian McEvoy. Any email sent to this address, or any email account owned by  Brian McEvoy, cannot be used to claim property or assets.

Comments to the blog may be utilized or erased at the discretion of the owner. No one posting may claim property or assets based on their post.

This blog, including pictures and text, is copyright to Brian McEvoy.