Comments (5)
I literally just responded to your email to the OHIS mailing list and came here to enter an Issue in the backlog. You beat me to it. :-)
This is absolutely an appropriate place for this. Thank you for submitting your idea. It's a great one.
Unfortunately, the pinouts you listed above are not OHIS compliant. OHIS is the definition of the signals, and what pins they go on. Repurposing the Mic+ and Mic GND pins for contact closures breaks OHIS compatibility.
Instead, I propose the PTT line be extended from "Contact closure to ground for PTT" to a more complex analog signal:
- 1.00 * V_cc: Idle.
- This is the "pulled up" state, same as before.
- 0.75 * V_cc: Button 3, Dit, Up
- 0.50 * V_cc: Button 2, Function
- 0.25 * V_cc: Button 1, Dah, Down
- 0.00 * V_cc (aka GND): PTT.
- This is the "contact closed to ground" state, same as before.
This should probably be an optional extension that not every device has to support. eg: some radios that don't have or use extra buttons like a keyer, won't bother implementing these.
Encoding this would be pretty easy, just a voltage divider, so long as the pull-up impedance is known, or higher than the voltage dividers.
Decoding is more tricky. Probably a pair of LM393 comparators, a voltage divider ladder, and some logic gates on the output to select only one output at a time. Unless someone knows a better way to do this.
If I help with the circuits for this, would you be willing to prototype and test this @hcarter333 ?
from ohis.
@SmittyHalibut I'd be wilingl to prototype. The circuits as described above seem straightforward enough. Cool!
from ohis.
Updating summary to reflect how I'm thinking about this now.
from ohis.
Also worth considering that CTIA has something similar, but on the Mic line instead of PTT (which CTIA doesn't have.)
https://source.android.com/docs/core/interaction/accessories/headset/plug-headset-spec
I can think of several reasons NOT to go this route with OHIS, but its worth thinking about.
from ohis.
This came up on the OHIS mailing list again: https://groups.io/g/ohis/topic/classic_radio_integration/102146840
Rather than define it by voltages as in https://groups.io/g/ohis/topic/classic_radio_integration/102146840, I think I like defining it by impedance instead. Something like:
- Hi-Z is idle.
- 0R to ground is PTT. (These two make it backward compatible with the current design.)
- 10k to ground is Dit.
- 33k to ground is Dah.
- 7.7k to ground is Dit and Dah together (spoiler: 10k||33k=7.7k)
from ohis.
Related Issues (16)
- Write OHIS document HOT 3
- Design Mic pre-amp HOT 11
- Add OHIS Logo to Standards Doc HOT 1
- Research proper Electret mic driving requirements HOT 8
- Add alternative physical standards HOT 1
- Research: Audio taper trim pots HOT 2
- OHIS Doc: Update the Mic level definitions
- Write an article for publication
- Feedback from W6EL
- Microphone spec levels, generation, and calibration HOT 3
- Design an Open Source in-line volume meter HOT 5
- Design an open source OHIS to Line Level adapter pair. (One for Radio, one for User.)
- Reference Vcc supply
- Clarify requirements around headphone levels HOT 1
- Use RFC 2119 key words
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ohis.