Hacker News new | past | comments | ask | show | jobs | submit login
WiPhone: A professionally-packaged Arduino phone (wiphone.io)
133 points by catherd 27 days ago | hide | past | web | favorite | 93 comments

Dang suggested I post these links, as support that the project is far enough along to merit being considered "real":

Build logs here: https://hackaday.io/project/159811-esp32-wiphone

YouTube videos showing the phone working: https://www.youtube.com/channel/UCUi0AFZymOmszc-LLFISStQ

looks interesting, but what is the price? even an estimate would be helpful.

under $100

Did you consider adding a DECT antenna?

It could potentially be done as a daughterboard.

It's not on the immediate priority list, but especially if businesses start buying these and using them on corporate networks it might become important. I feel like most hobbyists aren't that interested in DECT. Too old. LoRa is apparently the hot thing if you are a hobbyist. :)

Lots of comments here focus on the fact that this device is WiFi-only and not a "real" cell phone. I find this sad. Are LTE calls really the only use case you can think of for a device that has its source code open, has WiFi and Bluetooth, carries an LCD, a microphone, and a keypad? How boring!

I am really excited about the wiphone, here are some of the ideas I have for it:

* 2FA token generator

* IoT remote

* retro game console

* modern game platform (think pokedex etc)

* educational hacking

And those are just off the top of my head. Essentially, it's a wonderful package for an ESP32 that makes creating useful devices out of that wonderful little processor even simpler.

None of those have anything to do with a supposed "open source" phone. An open source phone should be able to be a handheld computing device, with cellular and WiFi radios, running a libre OS.

That being said, I do like the fact that it is moddable and the schematics are open. Calling it a phone is a stretch though, it's more like a hobbyist kit.

As others have pointed out, the lines between cell phone, smart phone and phone are getting blurrier today.

There are a lot of devices that fulfill those criteria...

And being honest, I wouldn’t want to use it for any of the reasons you listed. I think this project would be a lot cooler if, you know, it actually worked as a phone.

I've been searching for something like this for a while and have not found anything suitable. Honest question: do you have pointers for any of the other devices you mention?

https://www.dragonbox.de/en/45-pyra is pretty cool

also gp2x https://en.wikipedia.org/wiki/GP2X (discontinued but you can find them on ebay). Comes in 3 models, GP2x, GP2X Caanoo, and GP2X Wiz.

I had one as a kid and loved it. Got into Linux and programming because of it.

Or a rooted old android phone is pretty similar, more functional than the WiPhone, and probably cheaper as well.

Hmmm, I don't know. If it's not filling the function of a phone, don't market it as one.

> * 2FA token generator

These already exist and are much more secure.

> * IoT remote

No thanks

> * retro game console

No thanks

> * modern game platform (think pokedex etc)

No thanks

> * educational hacking

Ok, I do agree it is interesting from this perspective. I get your overall point, but I still think it's a valid criticism.

"it's not filling the function of a phone"

At the very minimum, it matches and surpasses the capabilities of a landline phone (since it works at home where there's WiFi.)

Not really, landlines work when the power is out. WiFi doesn’t.

If you have POTS and a wired phone. Probably dependent on your location but both are becoming pretty rare.

VoIP can be iffy with home ISPs. I have it and the quality varies from excellent to unusably bad. I assume it's due to inconsistent latency.

Do you have QoS enabled on your router?

Touché :)

You're missing the point, which I agree with shezi is "it's a wonderful package for an ESP32". If you don't want a standalone WiFi phone and can't think of any other useful projects to use it for, then don't buy it, but I most likely will (depending on the cost) because I love this kind of stuff.

You are right. I was being needlessly snarky in response to his proposed use cases.

My main point, though, was that it is reasonable to expect something marketed as a phone to have LTE/cellular capabilities. I don’t think “Show HN: an ESP32 with LCD display — think of all the possibilities!” would hit the front page.

You're right as well :) But I think it's the stuff we did to take it from ESP32+LCD (which there are thousands of) and make it more like a phone are what makes it useful. Not having to build your own power supply and battery charger every time you start a new project is pretty useful. Or a nice enclosure with buttons that work right, feel nice, and are splash proof, etc., etc.

It is technically a phone. Just not one many people would want to replace their smartphones with. Home phone or backup phone maybe. We aren't marketing it as a smartphone replacement. The mobile form factor is useful and not just an evil marketing trick.

in my mind, calling it a "phone" automatically implies a smartphone replacement, so finding out that it's not does feel like a let-down even if that wasn't your intention.

and yes, the form-factor does make this awesome.

how about calling it a wifi-phone?

it would immediately make the limitation clear and avoid disappointment for those like me who are seeking a replacement for their regular phone.

Well, it is called WiPhone...

There is a pretty clear issue with people getting grumpy once they learn it's not a bleeding edge smartphone. I don't know how to solve it. Open to suggestions, but I think calling it a phone is perfectly reasonable and doesn't imply it's a smartphone. Just because all the big phone makers have sold us the idea that LTE and an OS you can play games on is absolutely essential doesn't mean this isn't a phone.

i meant the reference to a phone as in: WiPhone: A professionally-packaged Arduino wifi-phone or in the tag line WiPhone: An Open Source Wifi-Phone That's Really Yours

the definition of a phone for me is a device that i can use make phone-calls 100% of the time and send sms messages. today that implies cell phone (GSM) support. it does not imply a smartphone, especially not a bleeding edge one, nor the ability to play games. (although games on the arduino are actually possible)

btw: i have been traveling without a sim-card before (because i did not have roaming) and the success of finding wifi was more like 20% rather than 80%. rather frustrating.

Lots of desktop and mobile SIP clients are sold as phones despite having only ethernet or WiFi. You probably have one on your desk at work. If it can make phone calls, it's a phone.

I think you mean 'cellphone.'

Thank you. Talking to people about this project often feels like 80% explaining why they don't actually need LTE for this use case, and 15% listening to whining that we haven't released the source code yet :)

I can understand the 15% complaining that you haven't released the source yet - your website very clearly calls this an "open source mobile phone". Something can't be open source if the code hasn't been released yet under an open source license. It might be open source in the future, but it isn't yet, in direct contrast to multiple claims on your website.

You're 100% technically correct, but "WiPhone: A Phone That Will Almost Certainly Release The Code Later As Open Source" doesn't flow quite so well.

It's also not a phone you can buy today, should we put a disclaimer about it not being a real device either?

I think this project looks awesome. I get why you aren't releasing the source code until launch, as I've heard of many interesting Kickstarter projects finding a knockoff on sale before they even ship! So long as you ship it with the source code, you are in good shape. Good luck with the launch!

that's not 100% technically correct. as long as the source is released together with the device the the proper procedure is being followed. if the source is specific to the device, it wouldn't be very useful without the device anyways. (sure parts of the code might be useful, but that's besides the point)

if you want to pay a carrier for always-on connectivity, get a wifi hotspot (i carried one for nearly 2 years). added bonus is that you can connect other devices to it on the go.

as low as $30/month in the states (this is a steal comparatively): https://bestmvno.com/data-only/att-unlimited/

So it says all over the site that it says it's open source, but I can't find a link to the source code.

Why are there embedded Facebook and Google tracking scripts in your site about a supposedly privacy-focused phone?

The website doesn't the website have https.

I see a lot of claims of privacy focused and openness on this page, but not a lot to back those claims up.

EDIT: So I guess the source code isn't available, so I'll have to ask here: how are phone calls on this oh-so-privacy-focsed phone secured? It says VoIP, does that mean it's SIP? Does the SIP use TLS? Is the TLS verified? is the media encrypted? Is it end-to-end encrypted? What encryption is used?

We are in this to make money, it's not a side project. Marketing is almost impossible without tracking and I'm not going to say I like it, but I haven't found a way to do without it. I like open source/not tracking/privacy, but it's not my religion. This project would be dead already if we couldn't run Facebook ads.

The phone is for people who want hardware that can be used for hacking. We don't have any code that does anything related to tracking in the phone, and once it's released anyone can verify that.

That page is static, so I don't see how https is relevant.

Right now there is no security whatsoever. We are still getting the system to work, and work reliably. If enough people buy one we will probably add some sort of transport layer encryption.

> That page is static, so I don't see how https is relevant.


Disclosure: I wrote that doc in collaboration with the Chrome security team.

So the marketing emphasizes the privacy aspects of this device, yet in the comments (not noted on the website), you state that it has "no security whatsoever". This seems like an important disclaimer that should be given on the website.

"Please respond to the strongest plausible interpretation of what someone says, not a weaker one that's easier to criticize. Assume good faith."


dang, the author includes an entire privacy section on his site about this device. He then contradicts it downthread. Try clicking 'Privacy' in the footer... oh right, you can't.

The website doesn't use HTTPS, includes trackers, and it might be the case that the author hasn't figured it out that without mitigations, wifi can be tracked just like cellular radio.

In short, it's the scammiest looking project I've seen posted to HN in a long time. At least they aren't taking money yet so the author can continue to shoot himself in the foot in comments.

Fair enough, but the GP comment still breaks the guideline I quoted. No? Plus it breaks the one asking people not to snark.

I can edit the comment to be less snarky if that helps...

Sure! I've reopened it for editing.

It's not a privacy focused device. It's a device intended to give hackers the ability to do things they aren't able to do with typical commercial hardware.

As a side effect of that there are some properties related to security that you get for free (no tracking cookies, no black box cellular radio), and others, like encryption, that we will try to add if we make enough to fund doing it. But we won't feature creep the project and risk never delivering just to check a box that's not part of our core goal.

you can do online marketing without tracking by giant ad companies like facebook and google. for example, facebook ads don't require their tracking scripts on your site. retargeting requires tracking, but i'm not sure that's worth the hit to your nascent brand, given the target market.


Would you please stop posting uncivil comments to Hacker News? Regardless of whether you have a point, it damages the already-fragile container here.


In the FAQ, under the Technical section it says:

> Q: Where can I download the code?

> Probably Github. After we ship the rewards.

So, unfortunately, it looks like it'll only be open-sourced after it ships.

Don't most licenses only require the source to be available when it ships to end users?

I guess we could nitpick over the word "after" but if they ship the first phones 8am and release the code at 1pm I think it still complies.

https://github.com/ESP32-WiPhone only has the keypad as open source.

I don't think it'll be released until the phone is.


…this is a pretty reasonable rate of upvote accumulation?

Looks really cool, I can imagine re-purposing it as a general purpose remote for my custom hardware. Very nice looking interface, and I use the ESP32 on the other ends usually anyway!

What is involved in doing something like writing an "app" that would run on the device and send wifi commands out? Am I looking at low level C++ to interface with a LCD, or is this all in a nice API?

How do you connect an API for a smartphone to an Arduino? I assume the phone part is running on the second core, does it have a lot of cycles leftover?

Thanks! Yes, one of the major design motivations wasn't so much to make a phone, but to make a nicely packaged device hackers can use at the hardware level for other purposes (we are practically locked out of modern phones for a variety of reasons).

Apps: The end goal is to embed a Python interpreter in the firmware, and then it would be a matter of interacting with an API in Python. Right now it's C++.

I'm not sure what you mean by "connect an API for a smartphone to an Arduino". Do you mean: What does the plumbing look like between the code that calls the API and some physical pin?

Yeah, I think I meant the plumbing in the sense of providing simple ways to create and draw a UI and call functions when actions are carried out. It sounds like python and perhaps FreeRTOS? I've never programmed Android or iOS, only embedded systems, so even FreeRTOS is getting a little high level for me. My question might be phrased extremely poorly.

I mostly ask because in my experience writing graphics drivers for LCD displays by hand is that it is very hard and slow to run, last time I had to make a touchscreen interface it was like writing in QBasic again the functionality was so primitive. Seconds of lag because of the serial interface and all.

Can Arduino run Python? Seems a bit heavyweight for an embedded system like the ESP32…

The ESP32 can run something like MicroPython or CircuitPython.

Please don't put "Show HN" on posts about projects that aren't out yet. It's against the rules: https://news.ycombinator.com/showhn.html.

As a person who likes Arduino very much, I have to ask: Why Arduino?

It seems like you have to design a quite complex system here with many parts and gears to communicate and synchronize together. You'll need an OS for that kind of work. Arduino is not the language/paradigm for that kind of sophistication: even multi-threading will require some kind of hack.

It seems like an Arduino-phone is a development nightmare just waiting to come out.

It's not ideal for a few reasons, but it's what most of the people who play with hardware know, and there are lots of libraries out there for interacting with sensors, displays, etc.

If the project gets big enough we may split it into 2 versions, one Arduino and one with a proper RTOS.

That said, at this level using interrupts and a state machine is pretty workable, so I wouldn't say multiple threads are a must. Would probably make it easier for regular programmers to pick up and start developing with, though.

> If you need an always-connected phone capable of making calls from the side of the road or wherever you happen to be, WiPhone is not that phone. However, if you're like most of us, 80% or more of your time is spent near accessable WiFi.

So this looks like a VoIP phone? I can't see myself using this, since I still need my phone to work the other 20% of the time…

Yeah it’s pretty disappointing since an LTE module is cheaper than ever.

There's a big section on the page devoted to these points, but the main reason is this:

We aren't designing a phone, we're designing a device that allows hardware and low-level firmware hackers to do the things we want to do with phones, but can't due to being effectively locked out of modern smartphones.

That said, it should work perfectly fine as a home or office phone, or as a light-duty mobile one.

Longer reply here: http://a.wiphone.io/#but-i-need-my-gsmcdmalte

Not requiring a service subscription is one of the selling points. Additionally, there are no open-source cell basebands and they all allow your carrier to track you.

I see that, but I'm trying to find a use case for this that doesn't require people to carry a regular cell phone around anyways :/

They have a pretty good answer for this [1].

Basically, it's a black box component that introduces privacy risks and requires service plans.

[1] http://a.wiphone.io/#but-i-need-my-gsmcdmalte

I wonder if anyone is working on an open source baseband processor? I'm led to understand that existing parts are a mish-mash of documented protocols and "hacks" that are needed in practice to make it work, so I suppose it's a difficult task.

What is cheap? I see some modules on aliexpress for about us$20 but with very limited bands... And I wonder if patent fees are being for those.

This is so cool. I will always try to support any project that takes mobile computing/communications in a more libre, hackable, privacy-respecting direction.

However, I don't buy the argument for WiFi only. Sure, you are often on WiFi... But if I wanted to make a private VoIP call in such locations, I would just use my Linux laptop (or, realistically, any computer).

The reason for having a phone like this is for essential communication on the go -- not just to be an application specific piece of hardware.

That said, they have to start somewhere and I'm sure LTE integration is a lot of work. It's cool just to have something like this being developed. Keep it up!

If you give me a team that's already delivered a modern smartphone design from scratch I'll have a tilt at that windmill. :)

For now this is a realistic goal. We'll see what happens after.

I don't think that's what's being asked for. What would be valuable here is simply having a GSM/LTE radio with sim slot. I realize it would most likely be properitery/closed source (are there open source cell antennas/firmware?) but at least having that option would be way more useful than Wi-Fi.

I totally get it. This is a good start. I'm a big fan of achievable goals.

The website seems to be trying to suggest that WiFi only is a feature -- which I disagree with. No harm in just saying you will get to it eventually, imo (maybe you do say that further down the page)

Why not use one of those mobile hotspots? Sure, it's one extra thing to carry around; but now your phone always works.

I'm in Japan at the moment and I carry a tiny "pocket wifi" (so my phone just uses wifi). It's very practical. It only weighs a few grams and lasts all day on one charge.

Love the idea (ish) and the form factor, I am a firm believer that a small and thinner (width not depth) form factor will be the future of phones until the next big leap, so a lot like this form factor, but with the ability to throw some LTE hardware in here and make a phone you can slap any pay as you go SIM in, I just wonder why not?

Btw this is not the future: https://techcrunch.com/wp-content/uploads/2019/02/ezgif-4-fb...

But isn't it illegal to sell phones having no secret backdoors?

Edit: /s obviously ;) but open source phones for improved privacy and control are always welcome!

> makes HD voice calls, for free, over WiFi

What SIP gateway are they using for free, that doesn't track you or monetize your metadata somehow?

I can't find any info on the page.

There are a number of SIP gateways that you can use for free. You'd have to read their individual TOS and/or trust them about tracking and monetization.

One of the other guys that's working on this has a list of a few providers that offer a free account and work with the WiPhone. I'll see if I can post it once he's here.

The last time I looked at this space was ~10 years ago for a hobby project, so definitely curious if they exist.

And what "HD" codec are they using?

Came here to ask the same thing. G.722 springs to mind as the simplest to implement that could reasonably be called "HD".

Yes, right now we use G.722. Possibly others later.

These gateways will give you a free SIP account:

- linphone.org

- iptel.org

- opensips.org

- sip2sip.info

Also interested in this

Depending on the cost I would definitely buy one as a hackable remote. For now the esp32 based M5stack fills this role.

If someone builds a backplate with 4G I would definitely consider this to replace my smartphone.

> If you need an always-connected phone capable of making calls from the side of the road or wherever you happen to be, WiPhone is not that phone. However, if you're like most of us, 80% or more of your time is spent near accessable WiFi.

Except the 20% of the time where I'm not near wifi is when it's often the most useful to be able to use a phone -- when I'm on the side of the road with a car problem, for instance.

My family of four decided to go Wifi only on our iPhones five months ago. We've encountered a few inconvenient moments but nothing that has caused us to reconsider and go back to cellular service. We live in an area with wifi in practically every retail space. It's easy. Just requires a tiny bit more overhead for planning. The payback is having no internet temptation away from wifi spaces.

Don't you need cellular service some time when you are away? A small car issue become a much bigger issue without a simple phone call to CAA. I can understand avoiding data service (even more so if you have enough wifi around you), but cellular, I think that's an actual big loss.

Does it have snake?

Asking the real questions here.

or tetris.

> "Micropython for user applications"

If I'm not at work, the only app I use regularly is Signal. Can anyone comment on the feasibility of making a Signal client for this device? I'd love to ditch my phone on the weekends and carry this instead.

Highly unlikely you'll get Signal to run on an Arduino.

I just don’t see the point to this. If I’m on Wifi I already have my computer. Why would I need an extra phone...?

Vote purchasing?

If you suspect something like this, email the mods using the Contact link in the footer.

Thanks, done

Applications are open for YC Summer 2019

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact