Close
0%
0%

ESP32 WiPhone

The WiPhone project is an open source mobile IP phone. WiPhone is intended to be hackable, modular, cheap, and open, while remaining usable.

Public Chat
Similar projects worth following

The campaign is over. You can pre-order here:

https://www.indiegogo.com/projects/wiphone-a-phone-for-hackers-and-makers#/

Or join the mailing list to follow along:


Description

WiPhone Prototype
WiPhone Prototype

The WiPhone project is an open source phone capable of making free calls through the internet. It makes calls over WiFi, without the need for a cellular radio.

It's also an open source, self-contained Arduino development platform. It comes in a nice package, with a battery, power supply, and on/off circuitry, unlike most other dev boards. Once your project is done, instead of an eyesore of tangled wires, it's discreet and visually appealing.

The phone is intended to be hackable, modular, cheap, and open, while remaining usable by everyday people.

Motivation

Modern smartphones are more and more a tool we don't own, we're only allowed to carry around. One that serves the interests of those who allow you to buy it in return for the tentacles that get inserted into your life. You don't own it, it owns you. It tracks you, serves you ads, and sucks away your time with mindless dopamine hits. We want a phone that's firmly in our control, optimized for the convenience of the owner, not various corporate boards, ad and tracking networks and government organizations.

We want a phone that reverses that, and puts us back in control. Maybe even fights back a little. Full control of the firmware to allow us to repurpose the phone into whatever application we want. Hardware with accessible I/O and an easy disassembly process.

Benefits

  • Completely free calling, as long as you can set up an account and install a SIP/VoIP app on the devices you need to call.
  • International calls are same as local ones. No restrictions based on borders or calling plans.
  • Don’t need to deal with another country’s SIM cards or radio compatibility when traveling.
  • Keep the same address all over the world.
  • Set up your kid with a phone that lets them contact you without the distractions of a smartphone.
  • Give a pre-configured phone to an elderly relation set up with just the numbers they need.
  • Keep a spare in a bag in case your primary phone gets broken or lost. Don’t need to maintain a service plan for the backup.
  • Avoid being tracked by cell tower triangulation or IMSI catching (Stingray).
  • Load your own firmware to implement different calling protocols or completely different use-cases. The firmware is unlocked and freely modifiable.
  • Commercial phone interchange services are available if you need to call someone on a regular phone. Typical plans cost about $25/year (US or Europe providers).

Planned Features

  • polished enough normal (non-hackers) are happy to use it as an everyday phone
  • open source
  • can call other WiPhones using the internet
  • can call smartphones or computers (using an app installed on the device being called)
  • wireless firmware updates
  • Arduino compatible software
  • Espressif ESP32 processor
  • roughly 120 x 65 x 12mm
  • 320 x 240 (2.4“) LCD screen
  • spare I/O broken out to user-accessible header

grid.png

Portable Network Graphics (PNG) - 67.34 kB - 09/18/2019 at 12:14

Preview

1.4.jpg

JPEG Image - 23.27 kB - 09/18/2019 at 12:06

Preview

oven.jpg

JPEG Image - 49.41 kB - 09/18/2019 at 12:06

Preview

audio.png

Portable Network Graphics (PNG) - 7.75 kB - 06/28/2019 at 14:22

Preview

board.png

Portable Network Graphics (PNG) - 162.42 kB - 06/21/2019 at 07:23

Preview

View all 79 files

  • Add A Custom Button Function

    stupid07/16/2021 at 09:25 0 comments

    Having a dedicated button on your phone to do something special can be convenient.

    This video shows how to customize the WiPhone to respond to a button press and run custom software. Using software, or software combined with a daughterboard, this can give you a custom input for almost anything you like: turn the lights on in your house, remote start your car, open your garage door, control your stereo, or even act as an interface to other equipment built by you.

  • Soldering Tiny Wires To Avoid Buying A Thousand Fake Chips

    stupid06/11/2021 at 02:52 0 comments

    There is currently a shortage of ICs in much of the electronics industry and that means we need to be extra cautious about testing to verify the parts we are buying are actually what we paid for.

    An IC socket and a dev board can quickly test chips from multiple alternate vendors. We start with a regular dev boarddesigned around the same chip we want to test, remove the chip and solder 0.1mm wires between the pads on the dev board and a test socket. Now we have an easy way to swap the chip without additional soldering.


  • Self-Host Your Own Firmware For WiPhone

    stupid05/28/2021 at 10:09 0 comments

    Most phones, you can either accept the updates supplied by whoever made your phone or you just don't get updates.

    We've made the WiPhone firmware update system configurable. If you want to host your own firmware you can with very little setup required. Check the video to see how to do it, but basically you just:

    • set up an HTTPS enabled web server and put the compiled firmware on it
    • put an INI style config file on the same server that can always be found at the same URL. each time you add a new firmware file, update it to hold latest firmware version and what URL to find it at
    • in the WiPhone, set the firmware update URL from the default WiPhone firmware update URL to wherever you store your INI file
    • enjoy the benefits of running your own firmware update server and completely controlling what software runs on your phone

  • LoRa Text Messaging

    stupid04/13/2021 at 20:46 3 comments

    2 WiPhones with LoRa daughterboards can exchange text messages using the regular text message interface on the phone.

    It works just like sending a text message. Contacts have an optional LoRa address field that can be entered in the same place you set up phone contacts. When you send a text there is an option to send either to the contact's LoRa or SIP address.

  • WiPhone Teardown

    stupid03/26/2021 at 04:49 0 comments

    A quick teardown and reassembly of the phone.

  • Production Parts​

    stupid10/23/2019 at 01:57 0 comments

    Note: This post is out of date. Our blog is updated more frequently.

    Status

    Mostly doing assembly and reliability testing while we wait for the certifications to finish. So far we've spent a lot of time on choosing a clear adhesive for the front covers that looks good, is manageable from an assembly standpoint, and strong enough to work well with our limited bonding surface. We've also tracked down why the buttons would sometimes miss clicks. The 3mm metal domes we were using have issues with even slight misalignment so we're moving up to 5mm with a flat on both sides. Like these:

    We did recently exchange a few messages with the compliance lab. Hard to know when they will finish, but at least they are making progress. Fingers crossed for finishing in the next few weeks and then we can order production quantities of the main PCBA.

    We'll also be sending everyone the Cutest Screwdriver Ever for removal of the back cover:

    Daughterboards

    While I've been concentrating on the production side of things, Aamir has been working on releasing a few daughterboard designs: the Mega Battery Pack, LoRa, and a 4G LTE backpack. We committed to LoRa during the campaign, and hopefully at least these other 2 will be ready by ship time. If you want to upgrade, send a message to support@wiphone.io and we'll work out how to send what you want along with your pledge.

    Color Choice:

    After considering the replies, here's the plan: we'll do a green board overall since that's easy for production as well as rework, but we'll add some black to just the areas visible from the front. Best of both worlds. I briefly flirted with the idea of using black FR-4 with clear soldermask (which would have looked absolutely amazing), but backed away from the edge since it would be a colossal pain to find a vendor, expensive, and we need to actually ship parts soon. Maybe some sort of special edition later.

    Slideshow

    Some random pics from recent work:


  • FCC Certification and Reliability Testing

    stupid09/18/2019 at 12:13 0 comments

    Note: This post is mirrored from our Kickstarter page, and is a bit out of date.

    Status

    We got the next board rev back. Board fab took quite a while longer than it was supposed to, but so far it's looking like we may not need another significant revision before we make the real ones, so that's nice and it knocks a big chunk out of the schedule. Sorry for the relative silence, but from the time we got the boards back until now we've been doing everything we could to verify they worked well and prep for certification since that's currently what's blocking the final ship date. Currently working on:

    • debugging the soft reset circuit
    • amp chip isn't accepting the config on the new board. probably because the timing of the signal
    • RF tuning (just finished today)

    As soon as the remainder of the debugging is done we can start the certification process for FCC/IC/CE, assuming we don't find any show-stoppers on this board rev. Certification takes about a month, so we've lost any chance of shipping units in August unless we ship a few to places that don't require certification. But as soon as certification is done we can fab the rest of the production boards. Most of the mechanical parts are starting to be made over the next week or so.

    Board upgrades on this rev:

    • SMD vibration motor and mic
    • better ear speaker
    • added a footprint for a loudspeaker
    • added a footprint for a rear mic
    • brighter backlight, and now dimmable
    • SD card easier to remove

    Mechanical Design Tweaks: For the most part the mechanical design is done now and we've been concentrating on making it durable, easy to manufacture, and user friendly. Some changes:

    • Spent some quality time mashing keys and scratching my head. Finally ended up modifying the design to remove most of the material on the back side. This lets the buttons compress freely and gives a much better button feel. I am satisfied with it now.
    • Finished design of the little grills that go over the mic and ear speaker. These are kind of cool. The tiny holes are actually etched, the stainless steel sheet stock is stamped into a dome shape, then the (black) color is added by vapor deposition.
    • Tightened up some areas for better alignment and fiddled around specifying tolerances for various things so we don't have surprises later where things don't fit right.
    • Added a couple more locations for keypad backlighting to even it out. There were a couple dark spots.
    Mic and Speaker Grill
    Mic and Speaker Grill

    Reliability Testing:

    We're also in the middle of a testing and selection process for the adhesive to bond the screen to the frame. We want to get this right since there's not a lot of area for the bond and it will be exposed to UV over the life of the phone.

    To that end, we bought an oven so we can do some accelerated life testing on the adhesives, as well as general accelerated life testing on the overall phone. We've also been carrying the phones around and generally playing with them for a while now.

    What Color?

    We need to pick a color for the main PCB. I think either green or black would be good. Green is going to be obviously recognizable as a PCB and should provide a nice hacker aesthetic as well as an accent to the otherwise monochromatic color scheme of the front. Black is... black. A hacker-friendly color that matches the rest of the phone. Who has strong opinions on color?

    Backer Surveys

    Backer surveys will go out soon. I think we will try to send the survey to a limited number of people first so we have time to realize what questions we forgot to ask before we blast everyone with it.

    ...

    And finally, some people were asking about the results of the Noisebridge meetup: It went well. I think around 8 different people showed up over the course of the evening. Nobody obviously disliked the phone, so that's cool :). Had a few nice chats about how the phone works and various applications people...

    Read more »

  • Big Dead Bug

    stupid06/28/2019 at 14:25 1 comment

    We finally got to the bottom of some audio issues that had us running in circles for a while. This was a tricky one because there were actually 2 separate issues and we added a codec and changed our audio library at the same time we started noticing them, so we wasted a while thinking it was our stuff, or the new audio library (spoiler: the one that had us spinning our wheels the longest was an ESP32 issue).

    Issue #1 was the clock source for the audio codec. Originally it was coming from a separate oscillator, but apparently the right way to handle it is to drive it from the same source as the I2S.

    Solution: delete the external oscillator and add a jumper the existing boards to use a pin from the ESP32 as the clock signal.

    Issue #2 we originally called the drunken codec because we noticed it around the same time we implemented G.711 and it seemed like that was the source of the weirdness. It make you sound drunk. Funny, but hard to debug. Andriy spent quite a while trying to see if we had some sort of endianness problem or a math mistake in the codec, but everything looked right. Shortly after that we added an audio library so that we could play MP3s, and that sounded great. Yay! We fixed it. Except, no, actually it only sounded good for audio playback. Calls still were still coming from someone who had been at a drinking establishment for quite some time. So we started looking at the network stack and audio buffers used for calling. A lot of debugging later and the audio pipeline for calling is simplified considerably, but the issue remains.

    So eventually we tried recording audio in various situations and noticed something weird:

    For a 16kHz sample, it looked like high frequency (around 8 kHz) noise was overlaid on the signal. Except there was no noise when the input level was low. And we also noticed that what sounded "drunk" at 8kHz sounded like sort of a buzzy robotic voice at 16kHz. Strange.

    Now that we had some real observations to play with, the issue quickly unraveled itself as the following:

    • The ESP32 was doing it.
    • "It" being chronological swapping of every other audio sample.
    • But only for mono. Stereo came through as expected.

    One of the things that made it so hard to debug (apart from all the other changes we made clouding the issue near the time we noticed it), was it only happened in calls since that was the only time we used mono. And it only happened when the call was between a WiPhone and something else (not between WiPhones) since the error self corrected if the audio got sent to and processed another ESP32.

    Anyway, now you will only sound normal instead of drunk or robotic during calls.

  • First Production Candidate PCB

    stupid06/21/2019 at 07:28 2 comments

    The bank situation is resolved. We managed to pay some vendors yesterday. Hoping to switch banks ASAP once I'm back in the States. No sense in wasting any more words on an inefficient system with no hope of influencing changes.

    So, moving on to things we can have a positive effect on:

    Upcoming Board Revision

    Hoping to send out the next PCB revision within a week or so. This is the first production candidate (likely there will be at least one more revision).

    Other Miscellania

    • New speaker sounds better, but it's too thick. The actual part dimensions of the sample didn't match the drawing.
    • Also got a new vibrator motor sample.
    • Switched to a locking style SD card holder
    • Looking into why boot takes so long (bootloader + loading data from the external flash takes around 3 seconds)
    • Changed the I/O to eliminate screen flashing on boot
    • Started work on an automated tester/programmer
    • Added a dialing screen.
    • Ongoing call quality debugging.

  • Chase Bank: #$%^&!!!!

    stupid06/17/2019 at 16:35 3 comments

    Stuck in China due to Chase Bank simultaneously fucking the project in the ass and being a giant bag of limp, helpless dicks.

    Their fraud detection algorithm locked our account and now the WiPhone project can't move forward until Chase unlocks it again. Which apparently requires buying a plane ticket and fly half way around the world. Which requires money that's currently locked in the account. And time that could be more productively spent doing practically anything else.

    Details:

    https://www.kickstarter.com/projects/2103809433/wiphone-a-phone-for-hackers-and-makers/posts/2537406

    And a twitter thread with Chase here. Feel free to join in and let them know what  a bunch of helpless incompetents they are:

    https://twitter.com/Hack_EDA/status/1139769365119684608

View all 30 project logs

Enjoy this project?

Share

Discussions

Renne wrote 11/11/2018 at 13:07 point

Which SIP-stack/library does WiPhone use?

  Are you sure? yes | no

stupid wrote 11/12/2018 at 02:06 point

We wrote our own. There doesn't appear to be any existing available libraries that met our needs.

  Are you sure? yes | no

Renne wrote 11/13/2018 at 11:13 point

SIP will be implemented in the next release of the ESP32-ADF (https://github.com/espressif/esp-adf/issues/81#issuecomment-438226430).

  Are you sure? yes | no

stupid wrote 11/14/2018 at 00:41 point

Thanks for the heads-up about the upcoming SIP library. (replied to wrong message since hackaday.io doesn't allow 3rd level replies)

  Are you sure? yes | no

marazm wrote 06/11/2021 at 13:04 point

Why SIP? tox, matrix, or other open source protocol (encrypted)

  Are you sure? yes | no

virusleader324 wrote 11/08/2018 at 00:58 point

maybe you can add some app?

  Are you sure? yes | no

stupid wrote 11/08/2018 at 01:25 point

We are adding apps. We actually just finished making a video about the first app we did and we will post it to youtube soon.

We're still deciding the final implementation. Would you prefer apps to be done in something like MicroPython, or in the C/C++ (Arduino) code?

  Are you sure? yes | no

Renne wrote 11/07/2018 at 12:30 point

Wireless charging would be great, too.

  Are you sure? yes | no

stupid wrote 11/08/2018 at 01:28 point

That might be possible through a daughter board. I think there's a pin on the connector. I'll need to check if the circuit supports pushing current back into the battery.

  Are you sure? yes | no

Renne wrote 11/07/2018 at 10:22 point

CardDAV support would be great to synchronize contacts with the cloud.

  Are you sure? yes | no

Renne wrote 11/07/2018 at 10:18 point

I also suggest to use Invensense ICS-43432 or Knowles SPH0645LM4H-B I2S-MEMS microphones - one for voice and a second one on backside top for noise/echo cancellation. The ESP32 supports PDM audio output. You just need a 20 kHz low-pass filter per channel and MOSFETs  for the speakers. The ESP32 has 2x I2S stereo. This allows up to 4 microphones (e.g. voice + echo/noise cancellation microphones via I2S + stereo headset microphone via I2S codec) and 4 output channels (e.g. stereo headphones and stereo speakers via PDM).

  Are you sure? yes | no

Ed Wildgoose wrote 03/02/2019 at 14:45 point

Thumbs up for this one! One of the biggest challenges we see for voice quality, especially on lower bandwidth codecs is that the codec wastes a lot of bandwidth compressing background noise and there is a disproportionate drop in quality. I think good echo cancellation is a big ask for an ESP32, but having 2 mics at least offers the option to try...

  Are you sure? yes | no

stupid wrote 03/03/2019 at 14:05 point

We'll look into this more after the crowdfunding is done. Sounds like it should at least be considered. Need to figure out if the current design could easily support it and what the time+cost impact would be. And seeing how much it improves audio quality.

  Are you sure? yes | no

william wrote 06/24/2019 at 20:16 point

response to ben's reply above... (i just can't call u stupid...)

try to make sure there is slots for at LEAST 2 mic's in the case...

2 mic's is a MUST for echo cancellation...

echo cancellation is a MAJOR FACTOR in speech recognition for the hearing impaired...

even if you don't do it, allow us to do so...

william...

  Are you sure? yes | no

stupid wrote 06/25/2019 at 00:54 point

@william (or Ed):

2 mics in addition to the primary one, or 2 mics total? We did recently add a footprint for a second mic to the back of the phone. Can be seen on the recent Kickstarter update at the center/bottom of the main board.

  Are you sure? yes | no

Renne wrote 11/07/2018 at 09:48 point

I suggest a ground plane antenna like the RaspberryPi Zero uses (https://www.raspberrypi.org/magpi/pi-zero-w-wireless-antenna-design/).

  Are you sure? yes | no

stupid wrote 11/08/2018 at 01:21 point

Do you know what the performance of that style antenna is compared to something like a chip antenna? Right now we're using a little flex whip antenna, and we chose it because in our testing it was a nice balance of range/cost. We tested a trace antenna and the result was somewhat mediocre.

That particular Pi Zero antenna looks like it has some IP restrictions... not sure if Proant (the company who licensed it to Raspberry Pi) would be interested in giving a random open source project with no marketing a free license. Without looking at the details of Proant's IP protection and licensing scheme I'm guessing if we did do a ground plane antenna we would need to use a different design.

It would be nice to be able to eliminate the extra component, though.

  Are you sure? yes | no

Contagious Intellect wrote 10/02/2018 at 13:47 point

You could add a audio jack on the phone

  Are you sure? yes | no

Andriy Makukha wrote 10/06/2018 at 03:14 point

Great news! WiPhone already has it. You can see it on the prototype assembly video starting at 2:03.

  Are you sure? yes | no

fabian wrote 09/18/2018 at 16:02 point

One idea for design. please add small hole for phone rope. for  example https://www.bazaargadgets.com/image/cache/catalog/products/lights/flashlight/JETBeamHighQualityflashlightlanyardhand-ropewithropebuckle-SKU091134-2-800x800.jpg

second idea to add big arc over top screen for this http://elbrus.com.pl/media/products/25949a8d640c7674e6e67be767bb67d9/images/thumbnail/big_Karabinek_Skylotec_clipZ-SC_elbruss_b_tla.png?lm=1515237871

arc from left corner top to right corner can be stored antena, what You thing about this idea?

  Are you sure? yes | no

Christian Berger wrote 09/16/2018 at 12:26 point

I'd add a simple 40x25 character terminal, for example according to the old "Videotex" standards which were used for Bildschirmtext, Prestel or Minitel. That should be simple enough to implement (in fact the simplest version only needs to understand one "command") while enabling a world of applications.

  Are you sure? yes | no

fabian wrote 09/18/2018 at 16:05 point

USB host  for normal keyboard, router , computer will be better. And normal ssh+terminal 

https://github.com/search?q=ssh+esp I dont know how good it is

  Are you sure? yes | no

stupid wrote 09/18/2018 at 16:54 point

SSH (or even telnet) could be pretty useful. Are there any existing libraries for an SSH client on ESP32? I'm not seeing any in a quick search.

  Are you sure? yes | no

Christian Berger wrote 01/24/2019 at 20:13 point

There's actually now a project resurrecting xcept, a 1990s CEPT client for Unix. The code seems fairly portable.

https://github.com/bildschirmtext/btx_decoder

Best thing about this is that the service behind it can be controlled via a telephone keypad, and you actually have a service.

You can try it via this web frontend:

https://github.com/bildschirmtext/btx_decoder


The software can be found here:

https://github.com/bildschirmtext/bildschirmtext

And yes, it includes a Wikipedia gateway. At the login press # (or F2) 3 times, then press * (or F1) 550 # (or F2) and you can search for a page.

  Are you sure? yes | no

Christian Berger wrote 01/26/2019 at 11:01 point

Michael Steil recently ported the BTX decoder to iOS:

http://casandro.dyndns.org/temp/Screen%20Shot%202019-01-25%20at%2023.38.06.png


Historical demo pages look like this:

http://btx-seiten.rehbein.net/?991+exit

  Are you sure? yes | no

fabian wrote 09/15/2018 at 18:16 point

please add mesh and lora communication 

(text,small image,gpg)

  Are you sure? yes | no

Christian Berger wrote 09/16/2018 at 16:34 point

Lora doesn't have the bandwidth for speech.

  Are you sure? yes | no

stupid wrote 09/18/2018 at 13:21 point

But it does have the bandwidth for text messages, which is probably what Fabian is interested in.

(For what it's worth, I'd imagine LoRa also has the bandwidth to send Videotex  or whatever other pre-historic text encoded graphic formats get you off)

In any case, we have it on good authority that IP over Avian Carrier is the hottest upcoming protocol and as soon as we get our core functionality working, mesh, LoRa, and Videotex may all need to wait for the IPoAC implementation to go online before we have time to address them.

  Are you sure? yes | no

fabian wrote 09/18/2018 at 15:43 point

look at gotenna.com/ or https://www.sonnetlabs.com/ but open source and open protocol (for example AX25). Great communicator for emergency and for small data.

here is project https://hackaday.io/project/27791-esp32-lora-oled-module

on aliexpres or gearbest is many esp32+Lora, obly put it together

  Are you sure? yes | no

James Hall wrote 09/21/2018 at 15:15 point

I wonder if there are modes where Codec2 speech would fit. There's a version of that which works in 700bps. Doing something like a gotenna would be great too. Simple text messages, including sending things like GPS coordinates, over distance would be handy sometimes. There are some TTGO branded dev boards that combine a ESP32 with a LORA chip and stuff for a 18650 lithium battery that might work just as well for that though.

  Are you sure? yes | no

fabian wrote 01/24/2019 at 11:41 point

please look Pygo  https://www.kickstarter.com/projects/pycom/pylife-and-pygo-the-most-connected-device-in-the-w

Lora no need voice, only message. Buy independent of internet and wifi.

only add hardware for wifi and lora. everything other people writing himself

;)

  Are you sure? yes | no

stupid wrote 01/27/2019 at 00:16 point

We did recently design a lora daughterboard since so many people asked for it. It's still in the prototyping stage right now, but may end up being something you can get with the phone later.

  Are you sure? yes | no

doanerock wrote 02/07/2019 at 01:26 point

Having LoRa encrypted mesh messaging built in would be amazing.  GPS to send location to other WiPhones would be really handy.  

  Are you sure? yes | no

utf_8x wrote 09/10/2018 at 08:52 point

Is there enough spare GPIO available to hook up a GSM modem (such as this https://www.sparkfun.com/products/retired/9533)?

  Are you sure? yes | no

stupid wrote 09/10/2018 at 15:11 point

Maybe, depending on your use case.

We are shooting for 10+ pins broke out to the back of the phone. But if you want to do voice calls you may run into issues getting the audio signals where they need to go since a lot of those cell modules expect to directly control the speaker and mic.

I'll post a pinout once we have the next revision ready.

  Are you sure? yes | no

utf_8x wrote 09/11/2018 at 16:22 point

I hear you... Maybe some sort of a soft/hard switch for the mic and speaker... It would also be cool co connect a Iridium compatible module to this to be able to send text messages from anywhere in the world... 10 GPIOs sounds like a reasonable number for something like that.

  Are you sure? yes | no

James Hall wrote 09/06/2018 at 14:21 point

The new picture of the project is extremely attractive. How are you doing the buttons? Are those 3D printed?

  Are you sure? yes | no

stupid wrote 09/06/2018 at 14:37 point

Thanks! I did the mechanical design and model making.

Buttons are CNC + a really light coat of spray paint.

We have a pretty cool video we just put together of the assembly process that's about to go out to the mailing list if mailchimp ever finally decides we aren't Nigerian princes.

Looks like you're already on the email list, but if anyone else wants to see the video (and other early-access stuff) feel free to join. The form is at the top of the project details.

  Are you sure? yes | no

Neo wrote 08/26/2018 at 19:50 point

Neat project, the hardware is looking really nice. I'm curious about the actual VoIP part: how does it work, what protocols are used, what kind of server does it require? Is it based on some libraries or existing code, or is it an all new implementation?

  Are you sure? yes | no

stupid wrote 08/28/2018 at 01:06 point

SIP is the protocol used for VoIP. There are a bunch of commercial services that can act as a server, including some free-to-use ones if you don't need a phone number.

It should be possible to run Asterisk if you want to run your own server. We haven't done this yet so I don't have details.

We are not currently using an existing SIP library.

  Are you sure? yes | no

william wrote 06/21/2019 at 14:49 point

would it be possible to compress a voice recording and send it over LoRa...?

i forget the project name, but we were doing something like that back in 1982 at point loma naval research center...   (whiskey-5 network, we called it "turkey-talk")...

william...

(where my ... habit was born, 35 years and still can't break it)...

( ... = STOP/EOL )...

btw: finally got m/c to work (bank edited my billing address, don't know why)...

ordered "2 Pro WiPhones + 2 LoRa"...

gonna attempt am make a daughter board keypad using your scan chip...

(be my first use of new american beauty resistance soldering system)...

[ got any old prototype boards laying around...?  could be without display, just something with i2c traffic which a i2c monitor could watch... ( i could pay shipping both ways...) ]

so, when will they ship...?   ;-)

  Are you sure? yes | no

stupid wrote 06/22/2019 at 10:01 point

@william

cool! thanks for the order.

Voice recording: I thought not, but a few people have mentioned codec2 possibly being a solution. This link seems to have a proof of concept that runs over LoRa:

https://github.com/x893/Codec2WalkieTalkie

--------------

We do have some old hardware, but I need to understand what you want a little more before I can say if what we have would be useful to you. What do you want to learn from it? We have a few wiphone PCBs of the most recent revision that don't completely work, and also one breakout board we made back when we were prototyping that is just a keypad. This one:

https://cdn.hackaday.io/files/1598116837353824/SN7326_keypad.jpg

Also getting ready to make a new batch of boards soon, and I'm sure a few of those will have issues. May be a month before they are completely debugged, though.

--------------

The production version of the Pros is still scheduled to ship in August. There is every possibility we could have delays as we continue to do reliability testing, etc. But at least for now the schedule is still looking like August.

  Are you sure? yes | no

otstoypuksa wrote 08/26/2018 at 07:05 point

SN7326 seems to be missing from my common chip suppliers. Where should I look for it? Are here any more readily-available alternatives? Thanks! 

  Are you sure? yes | no

stupid wrote 08/26/2018 at 15:44 point

I believe you can get them on Aliexpress.
As to readily available alternatives, it's hard to say without knowing what you are trying to do. I don't know of any drop in replacements if that's what you're asking.

  Are you sure? yes | no

8bit-bunny wrote 08/24/2018 at 23:30 point

Love the design alot, but have you thought of using a tft with capacitive touch instead of tact buttons? And what is the idle power consumption like in milliamps? I see you plan to include bare bone games too, are thise inline compiled, or sideloaded over wifi?

  Are you sure? yes | no

stupid wrote 08/25/2018 at 00:44 point

We've played around with a few capacitive touch concepts and something other than physical buttons may still make it into the final version, but buttons won out so far because they are cheap and we felt that interacting with physical buttons would be easier for beginners to deal with. Like, if you want to adapt the hardware to something else it's simple to do so.  We do have a capacitive button panel in prototyping (not a touch screen, but actual capacitive buttons instead of tactile ones). I'm not sure if we can make it work with the tiny button sizes we need, but it would result in a nice flat screen if we can.

Power consumption: Haven't gotten to that yet. We are still debugging the hardware on the first integrated phone and after that is done we should know. It will likely be driven by what's achievable in the ESP32. From reading around, it has the capability to enter a low power mode where it periodically wakes to check in with the access point, so I'm hoping we'll be able to have our cake and eat it too.

Games: We will likely do something, but who know what, yet. Andriy keeps putting games on the menu screens, I think because he wants to implement them instead of all this boring debugging and system bring-up :). But for now we are spending our time getting the basic functionality up and working.

  Are you sure? yes | no

Renne wrote 11/07/2018 at 12:38 point

Using the capacitive touch button function of the ESP32 saves a lot of mechanical work in mass production. It is possible to etch the symbols of the keys into the copper pads and use the substrate of the PCB as light-spreader by drilling conical blind holes for the LEDs in the backside of the PCB.

  Are you sure? yes | no

stupid wrote 11/08/2018 at 01:42 point

@Renne, we tested a capacitive button panel, and for the main keypad it doesn't look like it could work. The buttons are too close together and it's too easy to press multiple buttons at the same time. Might be OK for a single button somewhere.

If you look at other capacitive button panels, they usually need a grid size of something like 10mmx10mm. but that's much too large for our application.

This is the initial testing we did: https://hackaday.io/project/159811/log/153139-capacitive-button-panel-testing

Later we also made a panel the same size as our keypad (not posted yet), and that one sort of worked, but as I mentioned, it was much too easy to press multiple buttons. Maybe with some more engineering time we could tune the circuit to get it working, but right now we need to concentrate on getting the core functionality working well.

  Are you sure? yes | no

prosto wrote 08/24/2018 at 15:45 point

look at gotenna , You project + lora = sucess

  Are you sure? yes | no

atltvhead wrote 08/21/2018 at 22:52 point

This is awesome! I'll definitely be digging in deep into this 

  Are you sure? yes | no

Arya wrote 08/16/2018 at 09:57 point

Hello from one open-source phone to another =)

  Are you sure? yes | no

stupid wrote 08/16/2018 at 14:43 point

We should schedule a call to congratulate each other directly on such great projects :).

  Are you sure? yes | no

fabian wrote 09/18/2018 at 15:57 point

interesting, imagine ssh + terminal and usb C host for normal keyboard.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates