Quoting Trent W. Buck (trentbuck(a)gmail.com):
The only reason I can think of that a cellphone's
transceiver couldn't
do the same thing, is 1) the FCC are scared of consumers using
(pre-built) programmable transceivers to "shoot down planes and
stuff"; and 2) it'd cost the hardware vendor an extra twenty cents per
unit.
Here in the USA, there was for many years a low-level flamewar between
Linux activists saying there's no reason completely open-source radio
stacks (for open source mobiles, software radio, etc.) would violate the
law and a coalition of (1) proprietary-software apologies (notably
Atheros people) and (2) a small but vocal group of control-freak amateur
radio ('ham') people claiming it's against FCC regulations to permit
open source. As you probably suspected, I was in the former group.
The other folks spun out an endless stream of rhetoric, dire predictions
of doom, and what seemed tantamount to threats, for years never _quite_
specifying what they were talking about. (We of the first camp remained
polite but detected the whiff of metaphorical rodent.)
I finally chased down ex-Atheros engineer Jim Thompson on this topic on
July 27, 2006. The conversation remained twisty and noisy, but made
some progress. Part of it was public:
http://lists.svlug.org/archives/svlug/2006-July/050194.html
Brief except from the even more noisy _private_-mail discussion (my side
of an exchange with Thompson) follows. A 'tl;dr' summary would be:
It's bullshit, but an informal conspiracy of nervous radio people and
paranoid corporate interests _grossly_ misinterpret an FCC regulation
designed to prohibit "user accessible controls" likely to be misused
to violate spectrum assignments and similar provisions, as (supposedly)
prohibiting any implementation of frequency-related code in open source.
So, in short, it's less FCC being scared than the industry
self-censoring and bullshitting the open source community.
---<begin long dialogue>---
Here are the relevant sections of CFR 47 Part 15
(http://
www.access.gpo.gov/nara/cfr/waisidx_01/47cfr15_01.html)
[snip]
(b) An intentional or unintentional radiator must be
constructed
such that the adjustments of any control that is readily accessible by
or intended to be accessible to the user will not cause operation of
the device in violation of the regulations.
So, Atheros's interpretation of CFR 47 15.15(b) is that "controls
readily accessible or intended to be accessible to the user" encompasses
_hacking and recompiling_ C driver source code? Sorry, that's
laughable. By the standards of past FCC declaratory rulings, that's
about as much a user-accessible a "control" as a radio's solder joints
are.
But it's pretty much the assertion I expected to hear, once some
industry spokesman finally bothered to specify what "the FCC won't let
us" means. It basically means "Well, if you stand on your head the
right way and cross your eyes, you _might_ be able to argue that the FCC
could conceivably disallow anyone outside the firm to see how we do
this, so screw the open-source community. They'll never even ask for
specifics, anyway."
[later:]
Does the HAL have to be proprietary? This is the
subject of some
debate.
I would be very interested in seeing a polite and well-informed
discussion on this topic. Maybe at a LinuxWorld BoF?
Part of the problem is that, much as you say Atheros (and possibly other
companies) has extensively analysed what may be done within the confines
of regulatory law, outsiders have not been able to see or assess any of
that.
I'm not speaking for Atheros here. I think the
regs are clear. You
may be unaware that the FCC has fined people for merely showing up at
a tradeshow with non-authorized equipment (even non-intentional
radiators) without the requisite sticker afixed to the bottom of the
unit.
No, I'm well aware of such things. (I was assistant chief engineer for
WPRB-FM in Princeton, New Jersey, once upon a time -- a commercial 17kW
college station.) I'm just saying that I've read quite a number of FCC
declaratory rulings and rulemakings (administrative law), and think
their classing driver source code as a "user accessible control" is a
ludicrously far-fetched interpretation. Did Heathkit Company give me
unlawful access to a "user accessible control" when it sold the plans
and build instructions to amateur radio transceivers? Because there was
more than enough information in their detailed kit instructions and
schemtics to modify them to intrude on the adjacent aeronautical
navigation bands.
Hell, with their plans and parts for even the Heathkit model FM-3, I
could probably rig up a modification to that receiver unit to listen
_and transmit_ on TV channel 6, without a lot of trouble.
Nothing would stop anyone even half motivated to
change the hal source
such that "underused" spectrum could (and would) be used. Atheros
went as far as they could. You want more? Change the law.
The notion that the law objectively required this is basically what I
class as a knee-jerk reaction from a company lawyer who thinks "It's not
a _credible_ risk, but I'm covering our asses when I include this in my
report to management -- and who's paying us to even have to think about
this, anyway?"
[still later:]
Your amateur radio transceiver is not a part 15
device. Amateur
Radio is regulated under Part 97, not Part 15.
You seem to be going rather far out of your way to evade my point:
Schematics and plans for Part 15 devices from any firm at all would
suffice. (And many kits in sundry FCC regulatory categories from
Heathkit Company and others are unlicensed devices.)
OTOH, the source code for the HAL is the >only<
(and I do
emphasize**only**) control available for the Atheros parts.
Again, you are ignorning the point: You are stretching credulity past
reason to suggest that hackable source code is a "user accessible"
control. Hacking C source is about as much consumer accessible as radio
frequency crystals or solder joints.
If you think otherwise, please show me an FCC docket where they
sanctioned somebody for making available source code and declared it a
"user accessible" control.
Hell, with
their plans and parts for even the Heathkit model FM-3, I
could probably rig up a modification to that receiver unit to listen
_and transmit_ on TV channel 6, without a lot of trouble.
Yes, and this is specifically covered by the regulations, (73.525)
but you (or rather the chief engineer) were in-charge of making sure
that your station was in compliance. If, on the other hand, you were
going to runs this under your HAM license, you'd have a different
license violation on your hands, since TV ch6 is centered at 83.25MHz
(82.0 MHz - 86.75 MHz, actually if you include the audio component),
and meanwhile the HAM bands jump from 50-54MHz (6m band) to
144.0-148.0 MHz (2 meter), so you'd be in violation of your (HAM)
license if you so much as keyed up the transmitter on 82.25MHz.
And, of course, if you were going to do it with no license, the FCC
has you covered there, too.
Once again, you are completely ignoring my point: FCC would not held
Heathkit to have violated regulations covering any of these spectrum
segments by merely selling me schematics and plans, no matter how
detailed. No matter how... how is it you say in English... hackable.
Of course, your apparent willingness to do this is
exactly the
problem. Far too many people would simply recompile the source code
to "allow" themselves or others to transmit anywhere between 2.3GHz
and 2.6GHz and/or the upper band I described before.
And _they_ would be violating FCC regs. Thank you for making my point
for me.
You're welcome to draw the obvious analogy to DeCSS, any time. ;->
The lawyer-in-question (at Atheros) is actually very
"open source"
friendly.
Suggestion: He or someone else familiar with Atheros's perspective
should write up the matter for the benefit of interested laymen --
"outsiders" in the exact sense used earlier.
And yes, the law requires it. I've already cited
chapter and verse.
And a beautiful non-sequitur citation it was, indeed! Fans of
legalistic analysis the world over will appreciate it.
---<end long dialogue>---