Saturday, December 19, 2015

Non-optional perpetual customer

Must be coming up on Christmas, as I've received the quasi-annual threatening email from Network Solutions, requiring that I update/validate my contact information with them.  The penalty for not doing so is loss of domains.

The problem is that I am no longer a customer of Network Solutions.  A year ago, I finally was successful in transferring the last Network Solutions-managed account to a different, more customer-friendly registrar.  This was not an easy thing to accomplish (took days).

I can't post the email here as Network Solutions posted a copyright at the end of it and, given my to-date experiences with them, I'm of the opinion that they wouldn't hesitate to sue for theft of intellectual property.  I can, however, respond to its content and make comment:

To Network Solutions:

1) My cease and desist demand:  I am no longer a customer of yours.  I haven't been for the better part of a year.  I view your threatening email as a nuisance and will starting reporting your actions to appropriate Agencies if I receive another.

2) Your embedded statement that you will continue to send me notices, in order to fulfill your "service obligation" to me, is nonsensical.  If I'm not a paying customer, you have no service obligation and your email amounts to nothing more than unsolicited email, which might be actionable (see #1).

3) You no longer manage the domain that I'd purchased from you so many years ago.  All of my domains are managed via a different registrar (primarily because of the tone of your periodic emails and the labyrinth that you've placed in front of your customer service).

To State and Federal Agencies:

4) A copy of the Network Solutions email can be made available via the usual formal request/demand.

To everyone else:

5) Network Solutions has a practice of "slapping" a copyright notice on electronic messages (emails) to individuals.  I find this a bit strange.  I'd be interested in hearing if this has ever been tested in litigation.

Monday, December 7, 2015

Meh, meh, and more meh

I've been writing this blog for what, 12 years now? Anyone that's followed it knows that I continue to mistrust Microsoft's marketing departments (Cisco's, Oracle's, and Red Hat's too), but that's a hazard from past employment (in part, validating vendor claims).

Anyone remember being told how amazing Windows 8 was, that it booted faster than any other version before it (and faster than OS X or Linux)? It's probably old news to most but today, I found out why.

While figuring out how to reset local admin credentials, the tool I was using kept indicating that the target partition hadn't gone through a full shutdown. This was a head-scratcher because I'd logged out and then selected shutdown.

While it's probably not actually news to anyone other than me, it turns out:
  •  "sleep" == pause, 
  • "shutdown" == hibernate, and 
  •  "reboot" == full shutdown plus restart
The really bad news is that of the three options, none involve actually turning power off. Although "shutdown" consumes the least amount of power, it's still sipping at the battery.

So, for those of you that can't clear a password with an external tool: when the tool complains about the target partition not having been through a full shutdown, the above is "why".  Just select "reboot" instead and then interrupt the machine before it starts loading from the hard drive.

Sunday, November 8, 2015

It feels a bit like a kluge...

Ubuntu needs to get off of the dime and fix their encryption packages.

I've been using Keybase and have been happy with it.  I recently acquired a GnuPG smart card (v2.1).  The problem that I ran into was that I could not transfer my existing keys to the card because they're 2048-bit.  The current gpg and gpg2 tools refuse to upload anything larger than 1024-bit keys (though v2.1 of the card can handle them).

The work-around appears to be generating the keys on the card (e.g., "gpg2 --card-edit" followed by "generate").  Short version: I had to generate new keys.  The problem with this is that you basically have to destroy and rebuild your Keybase profile.  I spent about an hour doing this (pushing the public key to Keybase, re-validating all of my sites, updating keys on other servers, etc.).

Everything appears normal (fingers crossed).

What have I been reading this week? (20151108)


- NASA Study: Mass Gains of Antarctic Ice Sheet Greater than Losses
- How to Grok Higher Order Classes
- Victory for Users: Librarian of Congress Renews and Expands Protections for Fair Uses


- Did You Hear About How Scientists Discovered A Two Billion-Year-Old Nuclear Reactor In Gabon?
- The Able Archer War Scare Declassified PFIAB Report Released


- Eye Drops Could Clear Up Cataracts Using Newly Identified Chemical
- What We Owe the MythBusters
- The best way to learn math is to learn how to fail productively
- Why I started teaching people to write code Learn coding concepts


- One Last Ride With The Australian Outback's One-Man Police Force
- Leaked Comcast docs prove 300GB data cap has nothing to do with network congestion

Above was generated by a homegrown bolt-on script for Wallabag, which is a free utility for capturing web content so that it can be read later.

Sunday, November 1, 2015 breaking my stuff

I'm unhappy with the company, mostly because they appear to be going down the "we're connecting you to the cloud whether you like it or not" path that Cisco attempted a few years back.  I spent a few hours this afternoon, dealing with an upgrade that I didn't request.

Years ago, I acquired a RazBerry board for my Raspberry Pi.  It had a very cheesy web front-end that dealt with an unwieldy JSON back-end.  I found the front-end useful only when associating devices with the controller.  I primarily liked the back-end because it allowed me to write code to control the lights in my office (it's also part of my alarm clock).

The update comes with "improved" authentication which no longer works with wget's or curl's authentication mechanisms.  While the front end is much nicer, the upgrade breaks the lighting code that I've written/expanded over the years, including my keyboard controls, the alarm clock, and the turn-everything-off-in-2-minutes control which allows me to leave the room before the lights go out.

If you want to recover the old capabilities, following are the steps I used to roll back the server code (as root, on the RPi):

1) run "/etc/init.d/z-way-server stop"
2) run "cd /opt"
3) run "mv z-way-server old-server"
4) get v1.3.1 of the server from by running:
5) run "tar xvfz z-way-server-RaspberryPiXTools-v1.3.1.tgz"
6) run "/etc/init.d/z-way-server start"
7) point your browser at: http://serverIP:8083/index.html to see if the server is running.  Note: if you point it at only: http://serverIP:8083/ it will auto-forward to http://serverIP:8083/smarthome and complain about not being able to find a file.

After I performed the above, my scripts started working again.

Saturday, October 31, 2015

What have I been reading this week? (20151031)


- Seven Things I Did To Reboot My Life - WIL WHEATON dot NET
- How I won $5000 at a Facebook hackathon without a single line of code


- Reading and writing are less symmetric than you probably think
- Write Like You Talk


- A Penny for Your Books
- Please Do Not Steal My Code, Mock My Analysis, and Present My Ideas as Your Own
- More ways to Wi-Fi with the new ASUS OnHub
- The Thirty-Seven Basic Plots According to a Screenwriter of the Silent Film Era
- Making Sense of Dell EMC VMware


- What Happens When You Enter the Witness Protection Program?
- License Plate Readers Exposed! How Public Safety Agencies Responded to Major Vulnerabilities in Vehicle Surveillance Tech
- For the First Time Ever a Prosecutor Will Go to Jail for Wrongfully Convicting an Innocent Man
- Caution: Copy-Pasting URLs from Google Search can Leak Previous Searches
- Landmark for Hidden Services: .onion names reserved by the IETF
- The military lost control of a giant unmanned surveillance blimp
- Inside the Secretive World of Elite Wealth Management
- VC Guru Fred Wilson Hints The Blockchain Could Create the Next Google - Blockchain News


- Scientists identify main component of brain repair after stroke


- From the Them's-Fighting-Words Department: BusyBox removes support for systemd

Above was generated by a homegrown bolt-on script for Wallabag, which is a free utility for capturing web content so that it can be read later.

Dem's fightin' words!

Stated in a recent Busybox commit message (last week):

"remove systemd support
systemd people are not willing to play nice with the rest of the world. Therefore there is no reason for the rest of the world to cooperate with them."
Yikes! (heh)

Sunday, October 25, 2015

Your name will be taken...

Wow. So it appears that the cypherpunk mailing list now has a "mailing list etiquette violators list". They've actually been a bit nasty to each other on the topic.

What amazes me is that so few see the humor/irony in the existence of such a list of people. I guess it's time to leave the list. It's no longer interesting.

Tuesday, October 20, 2015

More Gleebox recipes

I've pushed a few more Gleebox recipes to Github. These include:
  • up - causes browser to navigate up one level in the URL
  • top - causes browser to navigate to the top level in the URL
  • gbm - sends the URL for the current page to Google Bookmarks
  • shell - opens a gnome-terminal on your desktop
  • proxy - enables or disables the desktop's proxy settings (assumes Kali or Ubuntu)
The "restart" command appears to be broken in the most recent version of Chrome (I think it was an experimental feature).  If anyone actually wants it, I can attempt adding it as an external feature (it might be a bit contrived).

Friday, October 9, 2015

Auto-focusing the tags field in SemanticScuttle

Following is probably only important to people who use SemanticScuttle in conjunction with keyboard browser navigation tools (e.g., Gleebox). In short, this is a tweak to SemanticScuttle that causes the "Tags" field to be focused when the pop-up window appears.

I think that the original author intended for this to occur in any case, as the word "focus" is in the field declaration. It may have later become non-functional after a tweak to HTML (1.1?) or Chrome. 

In any case, in your SemanticScuttle folder, find data/templates/default and edit the file called "editbookmark.tpl.php". Find the line that contains "echo T_('Tags');". Two lines below that should be a HTML form input field with the name value of "tags". In that line, change "focus" to "autofocus" and the SemanticScuttle popup should function as intended.

Sunday, September 20, 2015

Si4703 lockup

Yikes! In attempting to rewrite Si4703 control code, to remove the wiringPi dependency, I seem to have come up with a way to crash the controls on the board. It appears to only affect the I2C controls as I can continue to listen to the radio station. I believe that it's in the breakout board because the problem survives reboot of the Raspberry Pi and reseting the I2C bus has no affect. It will only go away if I interrupt power to the breakout board.

What have I been reading this week? (20150920)

- Legendary Productivity And The Fear Of Modern Programming

- Tracking a Bluetooth Skimmer Gang in Mexico Krebs on Security
- A New Design for Cryptography s Black Box Quanta Magazine
- An Intuitive Explanation of Fourier Theory
- The Beauty of Old-school Backdoors
- The Case for Free Online Books FOBs : Experiences with "Operating Systems: Three Easy Pieces"

- Viewpoint: Should we all be looking for marginal gains? - BBC News
- Tracking Bluetooth Skimmers in Mexico Part II Krebs on Security
- Drone hobbyists find flaws in "close call" reports to FAA from other aircraft
- People Are More Likely to Cheat at the End

- Maxwell s Unification Revolution Starts With A Bang!

- Artificial Neural Networks for Beginners Loren on the Art of MATLAB
- A Simple Artificial Intelligence Capable of Basic Reading Comprehension
- The life and death of the creative computer virus

- MD5 To Be Considered Harmful Someday

Above was generated by a homegrown bolt-on script for Wallabag, which is a free utility for capturing web content so that it can be read later.

Saturday, September 12, 2015

Hamfest VB 2015

Hamfest VB 2015 was a bit sparse this year. Maybe it was because they had a bigger hall this year, but I have the impression that there were fewer vendors. Only one vendor was selling MFJ products and it wasn't a full offering.

Also, there was no tail-gating this year. In past years, some really odd stuff was being sold (there was uranium ore samples one year). Then again, that could be the answer to why there's no tail-gating.

That's not to say that I came home empty handed. I come from a long line of yard-sailors and avoided the shame of coming home empty-handed. At the same time, I managed to comply with Bernadette's "Stay out of trouble" warning.

I managed to find a Hantech 6022BE digital oscilloscope in someone's junk box. The guy selling it said that he'd acquired it for his shack but it didn't work well for what he was trying to do. I'm thinking that it'll be nice for what I do (hobby electronics vice RF electronics). We'll see...

I also sat in on the D-Star talk. Interesting, though the presenter seemed to be ignorant of a number of D-Star devices (e.g., It's now on my "to investigate" page. 

In any case, I'm off to play with OpenHantek to see what I can do with this oscope.

What have I been reading this week? (20150912)


- Secret Nazi Treasure Train May Have Been Found Polish Official Says


- The Effects of Computer Programming on the Brain


- Patent Law Shouldn t Block the Sale of Used Tech Products
- One checkbox equals non-UTC fun
- Why Security Experts Are Using an Ancient Email Format in 2015
- My blog_title_here Transparent and easy encryption for files in git repositories
- Parallel Machine Learning with Hogwild!
- The Case for Free Online Books FOBs : Experiences with "Operating Systems: Three Easy Pieces"
- Contentless SQLite FTS4 Tables for Large Immutable Documents
- Open-source distributed deep learning for the JVM


- How we ended up with microservices.


- Einstein s Parable of Quantum Insanity Quanta Magazine
- Finding bugs in SQLite the easy way
- Travelling to work 'is work' European court rules - BBC News


- The Most Misread Poem in America
- The Cold War nuke that fried satellites
- 60 YouTube channels that will make you smarter STARTUPS WANDERLUST LIFE HACKING

Above was generated by a homegrown bolt-on script for Wallabag, which is a free utility for capturing web content so that it can be read later.

Sunday, September 6, 2015

What have I been reading this week? (20150906)


- How The Ballpoint Pen Killed Cursive
- Why is Windows lying about what root certificates it trusts? HA
- Telephone Keypad Design
- An Important But Rarely Discussed Lesson of the Stanford Prison Experiment
- Scientific method: Statistical errors
- Thinking too much: self-generated thought as the engine of neuroticism: Trends in Cognitive Sciences


- Fibonacci Flim-Flam.
- Google Starts Deprecating Web Hosting Support In Google Drive
- How A Powerful Criminal Network Infiltrated The Bank Of England
- Behind Deadly Tianjin Blast Shortcuts and Lax Rules
- Reason as memetic immune disorder


- The Johnson County War: 1892 Invasion of Northern Wyoming
- HP told some employees to choose between becoming contractors with no benefits or being fired without severance
- The man who sold his startup for $2.5b says it's made him miserable


- Exploiting Ripple Transaction Ordering For Fun And Profit
- You Don't Have to Be Good at Math to Learn to Code
- I Was Intimidated by Coding Until I Learned This Secret Strategy: Googling
- Learning to code: do I need to be good at maths?
- Rackspace's Major Hayden on how to deal with impostor syndrome


- Neural Networks Types and Functional Programming -- colah's blog
- It s probably a myth that we re not getting enough sleep
- Space Station Virtual Tour
- Evidence that Earth's first mass extinction was caused by critters not catastrophe
- The mysterious origins of punctuation

Above was generated by a homegrown bolt-on script for Wallabag, which is a free utility for capturing web content so that it can be read later.

Saturday, August 22, 2015

What have I been reading this week? (20150822)


- The network is hostile
- Deep learning for assisting the process of music composition part 1
- In Realtime: Prepping for the Transfer of 25 000 Manuals
- POMDPs for Dummies: Page 1
- DEFCON 23 Badge Challenge
- The TTY demystified


- Automation angst


- Build a Virtual SuperComputer with Process Virtualization
- Bitcoin Fork Divides Community - Slashdot


- The Changing Face of Shenzhen the World's Gadget Factory
- Basic CPU
- Work Hard Live Well
- Ashley Madison leaked data is now searchable but don't
- Raises $3M For Its Siri-Like Conversational UI Makes Developer Usage Free
- The Strange Appeal of Watching Coders Code Backchannel
- Stop calling it the Sharing Economy. That isn t what it is.
- Open-source distributed deep learning for the JVM
- Introducing the Technical Preview of Docker Engine for Windows Server 2016
- Cryptography And Quicksand


- How Autistic People Helped Shape the Modern World


- Cybersecurity s Human Factor: Lessons from the Pentagon
- Data Wrangling: Making data useful again
- When the U.S. Almost Nuked the Moon

Above was generated by a homegrown bolt-on script for Wallabag, which is a free utility for capturing web content so that it can be read later.

Example of shooting self in foot...

Interesting. This Business Insider article seems to indicate that the reason that children (and the rest of us) are watching less TV is the TV networks. Methinks the goddess Karma is involved.

Sunday, August 16, 2015

What's been in my bag this week? (20150815)

I seem to have gone a bit wild with my new tool. I promise that future posts will be a bit shorter. My other excuse is that some of the below is fall-out from "the silly season", that week or two after DEFCON where news gets a bit odd. It's amplified slightly, this year, by election "theater" starting early.


- The man making puzzles for hackers - BBC News
- Call off the bee-pocalypse: U.S. honeybee colonies hit a 20-year high
- Tech Firm Ubiquiti Suffers $46M Cyberheist Krebs on Security
- Here s Why Your Brain Seems Mostly Dormant - Issue 27: Dark Matter - Nautilus
- That 'Useless' Liberal Arts Degree Has Become Tech's Hottest Ticket
- The day I ordered pizza that 'doesn't exist' - BBC News
- The Point Of The Banach Tarski Theorem
- The Other Other Rope Around The Earth
- TV networks are stuffing more and more ads into the commercial breaks in a 'desperate' attempt to counter plummeting ratings
- What it means to go pro in data science


- Deleting your browser history could land you in prison
- Docker Basics: A practical starters guide Conetix
- Distributing files via DNS
- Composing Music With Recurrent Neural Networks
- Algorithmic Trading: The Play-at-Home Version
- Eisenbahnnet: Bohr's trip about spin
- Presumption of stupidity
- G is for Google
- The Turn - 93.12
- Design machines
- War in Space May Be Closer Than Ever
- Le Szil rd: A Forgotten Father of the Atomic Bomb
- Quantum weirdness is everywhere in life Johnjoe McFadden Aeon


- I spent a weekend at Google talking with nerds about charity. I came away worried.


- Not Even Close: The State of Computer Security with slides - James Mickens
- Which of the President s Men Exactly? JSTOR Daily


- Felicia Day's "You're Never Weird on the Internet Almost "
- Secrets of the Deep
- 20 Things I've Learned From Larry Page
- root localghost:


- 2015 Royal Observatory Greenwich
- Black Hat USA 2015: The full story of how that Jeep was hacked

Above was generated by a homegrown bolt-on script for Wallabag, which is a free utility for capturing web content so that it can be read later.

Sunday, July 5, 2015

Survey - GNSO Privacy & Proxy Services Accreditation Issues Working Group Initial Report

In reviewing the ICANN documents and responding to the request for public comment (described here), I'm realizing just how much BS is blamed on ICANN by at least one registrar that I've previously employed.  It's not enough to declare "Shenanigans" but it's close.

If you have an hour free, I recommend answering the survey (closes on 7 July).

Sunday, May 17, 2015


Not a good morning.  Woke up to house server's death rattle.  Need to take a look at what brand hard drive I've been feeding it.

Friday, May 15, 2015

Adding !page commands to Gleebox

To go with yesterday's post, I also wanted the ability to open TT-RSS in a new window.  Doing so is straight-forward:

1) Edit glee.js and add the following (somewhere near the entry for 'rss'):
     name: 'ttrss',
     method: 'openttrss',
     description: 'Open TT-RSS in a new page',
     statusText: 'Opening TT-RSS...'
2) Edit pagecmds.js and add the following (somewhere near Glee.getRSSLink):
Glee.openttrss = function(newtab) {
3) Restart your browser and test

Just in case you want to add other commands, Glee.Browser.openURL requires three arguments, in the following order:
Arg 1 = whichever URL you want to call, doesn't have to be http: or https:
Arg 2 = open a new tab? (0 or false = no, 1 or true = yes, "newtab" = dependent on input (enter = 0, shift-enter = 1))
Arg3 = selected? - if a new tab is opened, should focus be placed on it?  (1/true or 0/false)

Thursday, May 14, 2015

Gleebox fix for Google Reader command (using TT-RSS)

I'm a fan of Gleebox, especially since I'm getting older and marathon surf sessions can cause my elbow to ache (from reaching for the mouse, then the keyboard, then the mouse).  Using Gleebox saves wear and tear on my elbow and speeds up navigation across sites/pages.

One of Gleebox's drawbacks is that it hasn't been updated in awhile.  One notable broken part is the "open feed in Google Reader" option (Google Reader has been offline for years).  If you have your own TT-RSS instance, or have access to someone else's, the following steps will "re-purpose" the !rss command.

Assuming that you already have Gleebox installed as a Chrome extension on your workstation:

1) Find the pagecmd.js file.  On my desktop, it is located in:


2) Open pagecmd.js in your favorite editor and look for the following lines:
// rss: Opens the rss feed of page in google reader
Glee.getRSSLink = function(newtab) {
  // code via bookmark for google reader
  var b = document.body;var GR________bookmarklet_domain = '';if (b && !document.xmlVersion) {void(z = document.createElement('script'));void(z.src = '');void(b.appendChild(z));}else {location = '' + encodeURIComponent(location.href)}
Make them look like:
Glee.getRSSLink = function(newtab) {
  if(newtab) {
Note: there should be no carriage return between "public.php?" and "op=subscribe".  That should be a single line, starting with "Glee.Browser.openURL" and ending with "newtab,true);".  Of course, you should also edit the line so that the location of your TT-RSS server is accurate.

3) Close your browser, wait a few seconds, and open Chrome again.  Visit a page with an RSS feed and attempt to run the Gleebox "!rss" command.  It should attempt to add the feed to your TT-RSS instance.

Thursday, May 7, 2015

A forced marriage?

With apologies for a rambling rant, it's been awhile since I've written on a security-related topic.  Mebbe 'cause it'd mostly been an exercise in frustration (don't expect this post to be any different, please)...

ITWire has an article entitled "Microsoft's new secure boot strategy will suit Linux firms"[1].  The author describes Microsoft's strong-arming (my opinion) the hardware community into implementing yet-another-ineffective fix from Redmond.  Doesn't anyone remember the claims that ASLR and DEP were supposed to solve everything?  What happened there? (Hint: I'm pointing out that there's an arms race.)

This latest appears to be an attempt to add DRM to the hardware, making it impossible to use any OS other than those from companies[2] that can afford the costs of repeated code signing after each update (it's interesting who gets that money). If this latest effort goes into effect, I think the only option appears to be: give in and announce the death of the general purpose computer (as it will no longer be "general purpose").

What really spins me up about the article's discussion of the idea that this course of action is "best for everyone involved".  The thought that I can't get past is: I'd thought that arranged marriages[4] died out somewhere in the last century.  By removing autonomy (user choice), MS is only guaranteeing that a greater number of people will be frustrated with given (limited) offerings.  I guess we'll just have to "learn to love the one we're with" (with apologies to Mr. Stills for the paraphrasing).

One of the limitations involved will be the forced reliance on systems with ever-increasing complexity.  It's quite frustrating to read the articles where discussion is on a theoretical-only level.  What engineering seems to forget that the more complex a system is, the more byzantine a failure will be and the more likely that such a failure will occur[5].  By increasing complexity, the gap between theory and implementation widens[6] and the likelihood of undesired synchronicity between "small problems" increases.

Overall, the article was good, if you can ignore the last few paragraphs.  The author seems to have forgotten that the "Linux companies" exist because of their communities, not the other way around[7].  Of course, "Linux companies" will be reluctant to make comment on another company's actions as it will likely affect their own bottom line.

As part of the author-described "so-called Linux community", I'm a bit frustrated with him, having ranted on this topic and having listened to other's dire concerns.  The author seems to be a non-participant in any "Linux community" and resorts to cheap shots from the outside[8][9].  It raises concerns over who he considers to not be part of "the community[10]".

[2] Note: I'm writing this post on an OS that is not part of the group listed in the article.  First thing I did when I bought the workstation was to replace the hard drive and turn off UEFI.  I've written a number of tools for my own use and compile most other tools from source.
[3] Recommended reading: How Complex Systems Fail. [4]
[4]  The discussion of physical disabilities being a factor seems appropo to the article's premise (i.e., forcing/limiting/removing choice).
[5] An information security paradigm, relating to failure/compromise: "Not if, but when."
[6] Keep in mind that programs _still_ are rated in errors/KLOCs.
[7] Linux is written by "the community".  This means that responses tend to be numerous and varied.  It's rate that a single countermeasure will be universal across all flavors of Linux (things have to "seriously bad" for that sort of thing to happen).
[8] Re: the author's closing "lack of backbone" statement.  I see that as a sign of a community refusing to stoop to the same toxic tactics employed by it's opposition (points for remembering which company called the other "a cancer"!).
[9] I'm also wary of any author whose primary set of references is his own content.  The article contains 11 links, 7 of which point to other of the author's content.  Of the remaining 4, three point to the Linux websites and one points to someone else's article which only describes
[10] Just because you say there was no response, doesn't make it true...   From 2011:

Tuesday, May 5, 2015

USB IRToy v2 working

As much as I dislike using Stack Exchange (for being a pool of pedants, HTTA'ers, and LMGTFU'ers), there is the occasional nugget of gold to be found there.  Case in point: I'd thrown the USB IRToy (v2) in my junk box because it just absolutely refused to run consistently.  I'd even considered modifying the fan's remote, to give it an I2C or PiFace interface (a $40 solution to a $2 problem).

It wasn't that the issue isn't well known (it is).  My problem was that the suggested work-around (setting auto-suspend equal to -1) wasn't working.  I eventually tossed the device into the junk drawer with the hope that someone, someday would fix the firmware.

The good news: while researching tweaks for the RPi "IR Remote Shield v1,0", I stumbled across  Rael Gugelmin Cunha's response[1] about how changing autosuspend (on Ubuntu) from the command line is no longer viable.  Instead, he suggested to edit the grub, modifying the boot command so that the kernel recognizes the autosuspend directive.  I implemented this on my Kali desktop and it appears to have worked (or at least the board is still working properly 5 hours after it was installed).

Short version: I now have the ability to control the floor fan via web and Jabber.


Monday, May 4, 2015

RDA5807SP and Icecast problems

Spent an hour or so playing with a Raspberry Pi, a USB sound card, and the RDA5807SP breakout board.  Idea was to use the RPi to control the RDA5807SP, as well as streaming the output through an Icecast2 instance, also running on the RPi.

Overall, it works nicely for the first few minutes, then the audio begins to skip.  This happens regardless of the audio client employed (mplayer, vlc/cvlc, radiotray, etc.).  Based on mplayer's errors, it appears to be a caching issue:
A:  16.2 (16.1) of -0.0 (unknown)  0.1% 0% Cache empty, consider increasing -cache and/or -cache-min. [performance issue]
Since the issue appears to be independent of the client, I'm making the assumption is on the RPi end.  I'm hoping that this can be fixed.  More research in my future, I guess.

Saturday, April 25, 2015

I2C radios update

Have been busy in the past month.  Have tune, volume, mute/unmute, etc. functions written (in C) for the following chip sets: RDA5807SP, TEA5767, and Si4703.  Also have working code for the BMP085 temperature/pressure sensor.

I'm still pounding on the Si4707, Si4713, and Si4735 receivers, as well as the MOD-1016 lightning sensor.  Most stubborn one so far appears to be the Si4707.

Notes for all of the above have been updated to the point that I'm willing to share with anyone wanting to proof-read.  They're still a bit of a jumble.

Lastly, I finally dragged out the soldering iron and added an IR LED to the "IR Remote Shield v1.0" for the Raspberry Pi.  It's physically a slightly different color than the first but I'm hoping that (since the specs were the same) that it'll increase the range on the board so that I can control the fan on the other side of the office.  Will keep you posted (will add notes if it works).

Saturday, March 28, 2015

RDA5807SP fixed!

Finally had some time to play the the RDA5807SP chip set again.  Attacked the problem from a slightly different direction (probably what I should have done in the first place).  The documentation mentions specific bits (i.e., the chip id) being 0x58.  In dumping the registers to screen, it turns out that I wasn't swapping the 8-bit chunks around properly. 

What helped was the RDA5802 listing at Rockbox.  (Thanks y'all!!) One of the shortcomings of the Chinese programming guide is that it doesn't really address loading of the firmware.  Finding the proper firmware listing wasn't simple.  Getting it to load was somewhat of a guess.

Fixing the byte swapping, plus a couple hours of code pounding, and I now have the following functions working in RDA-mode (not in TEA5767 emulation): init, tune, and status.  It's enough to listen to local radio stations).  I still need to work out the volume, mute/unmute, and seek functions, as well as addressing a serious backlog of writing up the notes

Sunday, March 1, 2015

I2C code on Github

I've been playing with various I2C-based breakout boards.  Finally got around to posting the code on Github.  Currently I've posted code for the following breakout boards:

  • Si4703 FM radio receiver
  • BMP085 temperature/pressure sensor
  • TEA5767 (or RDA5807SP in TEA5767 mode) FM radio receiver

Some of it requires the wiringPi library, though I'm working to remove that dependency (to allow porting the code to the Cubietruck).

Also pending is code for:

  • Si4707 weatherband receiver
  • a generic lightning sensor