WebJack
webjack

## What Does It Do? **WebJack is a wired, bidirectional data link between the Arduino Uno and your phone, established via headphone jack.** It uses two distinct frequencies for a modem-like serial transmission of data. WebJacks runs in the browser and its goal is to provide a way to read sensors without the burden to install native applications. Look for recent updates on Public Lab [here](http://publiclab.org/tag/webjack). ![webjack-circuit](/system/images/photos/000/023/509/original/IMG_20180207_135242.jpg) ## Activities This is a list of community-generated guides for specific applications and the development of WebJack. These [activities can be categorized](https://publiclab.org/wiki/activity-categories), and some may be more reproduced -- or reproducible -- than others. Try them out to build your skills, and help improve them by leaving comments. Together, we can repeat and refine the activities into experiments. ### Activity grid [activities:webjack] **** ## Frequently Asked Questions Ask a question about WebJack [notes:question:webjack] **** [![IMG_0138_web.JPG](//i.publiclab.org/system/images/photos/000/017/089/large/IMG_0138_web.JPG)](//i.publiclab.org/system/images/photos/000/017/089/original/IMG_0138_web.JPG) WebJack is an open source client-side JavaScript library that acts as audio modem. It is built for use with [SoftModem](https://github.com/arms22/SoftModem), the Arduino-side code. For example, with WebJack you can transmit: * data as text * binary data * Firmata RPC messages *** ## Challenges We're working to refine and improve WebJack on a number of fronts; here, take a look at the leading challenges we're hoping to solve, and post your own. Be sure to add: * constraints: expense, complexity * goals: performance, use cases [questions:webjack-challenge] **** ## Build a data link with WebJack Instructions on the circuit and software needed for WebJack can be found here: https://publiclab.org/notes/rmeister/07-18-2016/webjack-testers-needed ### Demo WebJack applications - [Using Firmata with WebJack as transport](https://publiclab.github.io/webjack-firmata/example): - [WebJack demo website](https://publiclab.github.io/webjack/examples) ###Notes: - For more information about WebJack, post a question to the "dev" mailing list [here](https://groups.google.com/group/plots-dev)) (also listed in the left sidebar) - The github repo of WebJack is [here](https://github.com/publiclab/webjack) ...


Author Comment Last activity Moderation
rmeister "If the nanite's output is 3V, then the voltage at your phone will be about 3V as well for the first few periods. But after a couple of periods the ..." | Read more » over 8 years ago
warren "Another question... I see that voltage on a 'nanite' arduino clone is ~3v, and I'm wondering; peak to peak line load seems to be around -1.5-1.5v f..." | Read more » over 8 years ago
warren "https://github.com/publiclab/webjack/issues/17 " | Read more » over 8 years ago
warren "Maybe we should create an issue on the WebJack project so as not to make this thread too long. I made some progress (rather crudely) copying over ..." | Read more » over 8 years ago
warren "It looks like SoftModem-for-attiny85 doesn't include this line: https://github.com/rmeister/SoftModem/blob/webjack/SoftModem.cpp#L273-L304 // Bri..." | Read more » over 8 years ago
warren "OK, finally got some feedback, though not sure how helpful; I actually got stuck on installing softmodem itself; error here: https://gist.github.c..." | Read more » over 8 years ago
rmeister " For an (unequally) attenuated signal, the amplitudes for f_low and f_high are uneven. In this case, the amplitude for f_high is very low. Cool, ..." | Read more » over 8 years ago
warren "What are you looking at specifically when you see that the higher frequencies are attenuated? What part of the waveform, can you highlight it? I s..." | Read more » over 8 years ago
rmeister "Oh yes, the signal is still attenuated. Didn't see that on my phone yesterday. " | Read more » over 8 years ago
kinasmith "yeah. no dice...still doesn't work. I'll try it on a different phone when I get home. " | Read more » over 8 years ago
rmeister "Cool, looks good. Thanks for your effort! Maybe try switching the wires to sleeve and ring2. " | Read more » over 8 years ago
kinasmith "Hah. That's flattering, but my background isn't electrical engineering...I just kind of stumbled into it. The circuit is pretty obvious now that I ..." | Read more » over 8 years ago
rmeister "Probably you ment an other circuit, as I see you have a background in electronics engineering :D " | Read more » over 8 years ago
rmeister "It's a voltage divider (so your phone won't be damaged by a too large voltage) and a high-pass filter (removes DC voltage). Would you give it a tr..." | Read more » over 8 years ago
kinasmith "I was using Chrome. Didn't try any others. Just curious, but what is the function of the circuit? " | Read more » over 8 years ago
rmeister "Wow, thanks @kinasmith! Probably this pulses are sort of a presence detection for the microphone? Could be an issue, but most of the signals from ..." | Read more » over 8 years ago
kinasmith "Just tested, didn't work. Phone: Xiaomi MI3C, MIUI 7.1.2 (Android 4.4.4) Component Values: R1, 2.2k; R2, 2.2k, C1, 2µF; R3, 10k. I also tried s..." | Read more » over 8 years ago
rmeister "A friend of mine just tested the demo site of the FSK generator with his iPhone (ios9.3.3). The script does not seem to work anymore :( " | Read more » over 8 years ago
dusjagr "@warren, i am referring to some barriers for connecting to iphones. conceptual barriers that can be circumvented exactly by this method. we use the..." | Read more » over 8 years ago
warren "Wow that's pretty exciting -- safari/iOS would be a huge feature to have. I'm wondering if folks are interested enough in this project to submit a..." | Read more » over 8 years ago
rmeister "Hi @dusjagr, thanks for that hint! Found a Safari compatible version of the FSK generator in your link section. At least sending data to the µC sho..." | Read more » over 8 years ago
warren "Oh, that's so rad, @dusjagr! Why are you keeping it from apple? The WebRTC lib doesn't work on iOS anyhow, since it's not an open platform, but jus..." | Read more » over 8 years ago
warren "Indeed -- maybe it could either just say "not safari or iOS" as https://spectralworkbench.org/capture does, or could specifically return an error a..." | Read more » over 8 years ago
dusjagr "Very nice! we have experimented with the same softModem library on the attiny85 for the same reason of an ultra cheap communication to send data to..." | Read more » over 8 years ago