Close

Project description and Frequently Asked Questions

A project log for ZeroPhone - a Raspberry Pi smartphone

Pi Zero-based open-source mobile phone (that you can assemble for 50$ in parts)

Arsenijs 01/14/2017 at 03:3438 Comments

Subscribe to hear project updates and be notified when crowdfunding goes live!

What is this?

This is a smartphone, with a Raspberry Pi Zero at its heart. It's open-source*, Linux-powered and you can make one yourself for 50$!

*except some parts, replacing which would make it crazy expensive

Why?

Because it has so many uses, the idea sems to be obvious and yet there isn't a project like that. Moreover, I've been studying the topic for a couple of years now and this project is meant to be useful to other people as well - so I have a chance of commercializing it (while still keeping it open-source).

What can it be used for?

  1. Front panel (used as a Pi Zero shield giving it WiFi and screen&buttons for using pyLCI)
  2. A prototype I'm using to see how thin it can be made
  3. The current prototype I'm using for development, with a powerbank hotglued on the side for portability
  4. Pi Zero for scale



But why X/Y/Z choice was made?

There are so many questions about project choices that I have a separate page for them and will be happy to add answers as your questions come in!

What OS is used?

It uses Raspbian Linux, which is currently based on Debian Jessie. This is because it can be tailored to suit our purpose very easily, and will still be /upgradable in the future - this project doesn't need a separate distribution since that's prone to obsolescence and is a maintenance nightmare (but I do plan on providing ready-to-go SD card images if the demand is there).

As for the user interface (controlling screen and buttons) - it's written in Python. I'll be using pyLCI as a base, but it's clear for me it needs a rewrite to have all the capabilities a decent mobile phone UI should, and developing a good UI is one of the main goals of this project.

pyLCI used for a management/configuration interface while the software is still being developed

How smart is it planned to be?

As it's Linux-based and can support all the programming languages typically used with Linux, I expect many original ideas for apps from all kinds of people. I myself will be working on a set of apps for productivity and healthcare - making it a great helper in everyday tasks and goals, instead of a distraction that we typically perceive smartphones as.

What are the privacy/security features you're talking about?

It's Linux, and the apps running on it are open-source (therefore more likely to be secure and not privacy-invading). If you don't like a feature because it's a privacy/security concern, you can just disable it. If an app you're using has any unwanted code, you can just remove it. It doesn't depend on any butt^W cloud services - not if you don't want it to be. Since, again, it's Linux, it's got many security-related software available, and you can install it - be it a firewall, I2P/Tor node or a secure messenger of your choice.

As a bonus, the software is meant to allow you to fully utilise all the features the hardware supports - including some manufacturers don't usually include in software but surprisingly helpful. For example, you can use modem-specific commands - that allow you to detect GSM jamming, fake GSM base stations and intentionally weakened GSM encryption (I know SIM800 has the first and provides data to help with the second, for a start).

Together with the powerbank I'm using till I can get a pouch battery that's large enough


How is it different from all those open-source phones available?

It's the only phone you can assemble by getting all the parts yourself (for less than 50$), not using any rare parts (everything's available on eBay) or fine-pitch soldering (typical pin spacing is good old 2.54) You can even breadboard this phone if you're dedicated enough. This is possible because of all those cheap and great Chinese modules, wonders of mass-production economy and smart design choices while picking components.

More importantly, this phone won't be left with outdated OS if the phone's development will stop. Since it runs stock Raspbian (with mods), it can also be updated the same way you'd update your Raspberry Pi, and you can easily do it yourself. That means you won't be left with unsecure versions of software that'd make your phone insecure or buggy - which is a feature almost none of phones listed currently have, and I'm not even talking about Android phones.

Again, for scale


How come all the parts are easily available and are so cheap?

Let's see.

That's 27$, not including the battery and PCB. PCBs are cheap from usual 10PCB places (like DirtyPCBs) if you do group buys, alternatively, there's @oshpark and similar board houses that have good prices. Batteries can be taken from mobile phones, or you can get a battery for one of popular Samsung phones and use it, for example. In total, it should be 50$ or slightly more.

Also, price falls quickly if you're assembling one or two more phones for your friend, too - eBay sellers can make discounts when you buy more than XX$ or "make an offer", and PCBs are cheaper (you won't get less than 3 pcs of PCBs in any of usual board houses, so you have to pay extra even if you need only one board - you'll still get two more)

Currently the back PCB with GSM modem etc. is just a custom-made protoboard, which is exactly what you want when you're not yet sure what are the coomponent placement and connections necessary


How do I assemble it?

You'll need a soldering iron, with a fine tip and enough power to heat up ground pins, which is an issue for Pi Zero (25-30W should be sufficient). You'll also need clippers to clip 2.54 headers to make them shorter - they are used for board interconnects, and in some places they're a little too long for that. Lead solder and a soldering station will make assembly much easier.

A heat gun will help - in the current revision, there's an ATMega328P on the board that's used for keypad reading. It's convenient to solder chips like this using a heat gun, and if you're getting it from an Arduino Pro Mini, you'll definitely need it.

Discussions

laughingcheeze wrote 02/18/2017 at 23:11 point

This gets me thinking; what if there were a version of the Raspberry Pi 3, except tailored for phones?

So it wouldn't need things like a large ethernet jack and 4 USB ports, and would thus be nice and slim, hopefully it would have instead a Type C USB 3 port. Of course it wouldn't need those bulky GPIO pins either. 

Basically just a flat Raspberry Pi 3 but with USB C and all other extraneous connections removed. Actually it could have an HDMI port, for the whole using your phone as a PC thing, which could work if the Pi foundation went with a faster arm soc, but then I guess it wouldn't be a pi.

Still, I would love such a thing, especially as Fairphone is only available in Europe, and I'm still not quite sure if thats even legit. 



  Are you sure? yes | no

Craig Hissett wrote 02/19/2017 at 01:42 point

You could always use a Pi Compute module, and design a board with only the connectors you want.

  Are you sure? yes | no

Stuart Longland wrote 02/19/2017 at 03:46 point

The other way is to take a Pi3 and de-solder the offending connectors.

  Are you sure? yes | no

laughingcheeze wrote 02/19/2017 at 16:57 point

But dont those stack like an Arduino? That kind of defeats the point. I'd like something as close to a real soc as possible, and as thin as possible. Which also means it would have to have built in sim slots, so something purpose built would still be required. 

An open phone soc! That's what we need!

  Are you sure? yes | no

kunstenaar wrote 02/03/2017 at 11:08 point

Very nice!! I like David Hunt's PiPhone a lot, and was wondering for some time, if someone would come up with a ZeroPhone... - and here we go... I hope to see you crowdfund it one day. My wish-list, if I may: modular construction + self assembly (keeps price low and allows hardware upgrades), an option for a larger screen (like the PiPhone has), open firmware and drivers (not your job, of course - but people like Eric Anholt and Kristina Brooks are quite busy with this, I guess).

All the best!

  Are you sure? yes | no

Arsenijs wrote 02/04/2017 at 09:09 point

Almost everything listed is a quality of this project =) The big display will surely be in the next version of ZeroPhone. 

Other than that, it's modular, designed for self-assembly (and you can source all the components yourself, too!) and software/hardware is chosen to be as open as possible, keeping in mind driver compatibility, too.

  Are you sure? yes | no

kunstenaar wrote 02/04/2017 at 10:14 point

Did you actually consider not to use the Pi Zero, but the Compute Module 3 (CM3 or CM3L)?

  Are you sure? yes | no

kunstenaar wrote 02/05/2017 at 10:43 point

I see and agree with your answer on reddit. But maybe we will see a somewhat 'better/faster' version of the Zero Pi, soonish... (2017/18?). - And then, it would be very nice of course, if a Zero-Phone-owner could easily replace the current with the new model. 

Personally, I always thought of getting a Fairphone 2 sooner or later, not the least because of its modular design, which should allow sooner or later hardware-upgrades without replacing the whole phone... But it is not very likely that the Fairphone will ever get an open hardware SoC - and this is still, despite the whole 'fair'-aspect, a disadvantage...

  Are you sure? yes | no

Arsenijs wrote 02/06/2017 at 06:38 point

Even if there'll be, say, a Pi Zero 3 - it's all cool but the fact that faster processors will consume more energy might leave it as a not-really-an-option =( I'll think of some kind of replacement ways (it's currently harder than usual because the phone is soldered together when it's assembled).

Fairphone is interesting! Do you have one? Can you tell about iyour experience with it?

  Are you sure? yes | no

kunstenaar wrote 02/06/2017 at 08:03 point

Did not get a Fairphone (yet); I wanted to wait, until they really come up with hardware upgrades, and until the community port of Ubuntu really runs without flaws.
I still follow the development of the neo900 - but their progress is very slow and it is going to be really expensive...
But maybe, I will end up with a Zero Phone, instead... ;)

  Are you sure? yes | no

jackie wrote 02/01/2017 at 21:21 point

> If you don't have a heat gun, you can just buy a bare chip

So, you mean like one of http://i.ebayimg.com/images/g/cJ4AAOSwImRYGqNi/s-l1600.jpg <-- those instead of one of the really small atmegas (http://i.ebayimg.com/images/g/~kkAAOxyV85Rzpfx/s-l500.jpg)? Cause if yes, thats great!

  Are you sure? yes | no

Arsenijs wrote 02/04/2017 at 09:12 point

Unfortunately, no, it needs the small ATMega, big one would take too much space on the board, I couldn't design it in =( I think it could be done with lots of jumper wire, but so far it's easier (and cheaper!) to desolder the small ATMega (from a 2$ Pro Mini board) with a soldering iron (there are ways), or just ask somebody at a makerspace/electronics repair place to help you with it. 

I have some more ways in mind, I'll try them out and make a big blog post on this exact issue, will ping you as well!

  Are you sure? yes | no

monty.adex wrote 01/20/2017 at 09:52 point

Hi i read piece of the post , not entirely .

It's a very well done work that i was dreaming someone was able to do.

I would like to point you to a more open source platform : Parallella.

I'm not so happy to deal with zynq and his windows DRM software but epiphany should be more than enough to run a phone, and at the same time you should be able to connect your phone to your desktop as additional cpu cores.

I'm not able to implement such a device but maybe you can take a look to parallella and if it's not too far from Raspberry Pi Zero you can move to that platform.
Maybe i'm just dreaming but thanks for your attention.
Other Interesting point of view from my side (maybe another dream) is the mechanical solution for assemble the hardware in different ways in function of your needs, based on sodimm connectors take a look to my youtube channel (montyadex) to watch a surrealistic concept on how pcb can be assembled together, the main key is a 4 route 2 way connector node that manage all bus signals.

Sorry if i'm saying stupid things but i believe in this , hope you find something interesting in what i wrote here.
Thanks for your time .

Sorry for my english

A




  Are you sure? yes | no

Arsenijs wrote 01/28/2017 at 00:37 point

Hi! 

Parallela: while it's an interesting thought, it'd make it quite hard and would take a lot of time to at least make a prototype. By using a known-to-work, cheap and popular CPU board at this point, it's much easier to bring this phone to the DIY market as quickly as possible. Later, when we have a community and all the other parts of the project polished, we can see if there might be CPU boards that'd be a better fit for this =)

Youtube: @monty.adex, the https://www.youtube.com/user/montyadex channel doesn't exist. Can you link the video here, please? I want to see your concept.

It's nothing stupid, believe me! I think about each and every idea that's sent to me, and I can draw inspiration from many of them. Thank you for your time and interest, too! Oh, and I didn't notice anything wrong with your English, just FYI =)

  Are you sure? yes | no

monty.adex wrote 01/28/2017 at 11:03 point

well, i do not remember my youtube channel :D so here is the link 

https://www.youtube.com/channel/UCv4wLkSjErXvmDXxhi4XH5Q 

Thanks for the interest sorry for poor quality of the video use pause to understand better :P.

Cheers 

A

  Are you sure? yes | no

GuybrushThreepwood86 wrote 01/16/2017 at 14:21 point

Hi,

I'm really interested in mobile applications for raspberry. DIY is my hobby, I'm not a specialist, so I found a lot of difficulties on my way. Basing on my avaible hardware, I'm palnning to replicate your project. Can I have some additional info's about your energy soution? I've got an "Adafruit 1000c " module, do you think using one of the biggest LiPo battery avaible can provide enough energy? It can make the project slimmest (but more expensive). Thank you for sharing this project, and sorry for my basic and uncorrect english.

  Are you sure? yes | no

Arsenijs wrote 01/16/2017 at 14:43 point

You won't need the Adafruit's 1000c with this phone, it doesn't use Adafruit-specific components =) As I said, the cost of all parts (components from eBay, Pi Zero with shipping and PCBs) is about 50$. Adafruit doesn't come into play for me because I can't order anything from there - the shipping to Latvia is outrageous. Thus, if I want to make an available product, sourcing parts from Adafruit is out of question.

On replicating this project: it's a little too early, I still have to iron out a few problems in the current board. Subscribe to the mailing list to receive news about when I'll have files for a design anybody, including you, will be able to put together! https://crimier.github.io/ZeroPhone/

About the battery - yes, a LiPo will do (but make sure it's one cell in series - i.e. the voltage 3.6v, not something much higher). If unsure, ask me!

  Are you sure? yes | no

GuybrushThreepwood86 wrote 01/16/2017 at 17:39 point

Really thank you for your fast reply.

I've thinked about an adafruit 1000c because I've got one from an old project, so I'm thinking to use it, and a pre-assembled number keyboard module like this: http://www.gearbest.com/boards-shields/pp_260253.html.

About the powerboost 1000c: same problem in Italy, adafruit prices and shipping are really high, I've found an used one on ebay some times a go and I've bought it, so now I'm thinking of using it: I can have a slimmest phone than with a power bank, and like the power bank (but unless a simple AA battery pack with a 5V Voltage Booster) I can charge it while I'm using the phone.

I'me really happy to get your help, for now I've subscribed your mailing list, hoping good news will come soon!!! :)

  Are you sure? yes | no

Arsenijs wrote 01/16/2017 at 16:17 point

On and your English is quite good! You don't need to apologize because I don't think anybody would really notice =)

  Are you sure? yes | no

Arsenijs wrote 01/16/2017 at 17:47 point

Do message me if you have any questions, the mailing list also has a button to directly email me if you might need design advice =)

  Are you sure? yes | no

mitcoes wrote 01/15/2017 at 14:25 point

First thanks; second so many suggestions:

1.- Make a compatible parts page, better is funded and done by a parts shop that already exists that also share part of that revenue with you and they sell kits with options as when you make your desktop computer by parts. As you write you can use other phone (or whatever) modules. This can be the users new "project ARA" for GNU/Linux portable devices that allow also to install ANY OS as we where used with old computer devices.

2.- I recently did read about the new Manjaro pi image. that was faster than the debian ones. XFCE , i3 or spectrwm are good very configurable and fast alternatives for a good desktop environment finger friendly and of course phone keyboard friendly. Please give it a try.

3.- Once this phone keyboard model is done, or at the same time, a 5" and or 5.5" model can be designed, with the mind focused in a around 50 USD phone as there are 7" tablets around that price. And capable of running: GNU/Linux, Ubuntu Phone, Plasma Phone, Sailfish, Android and MS WOS 10 plus some other OSs. And able to be UPGRADED BY PARTS

4.- Thanks even if you do not care about this suggestions, but some other can read them and help this "DIY communication devices" grow

  Are you sure? yes | no

Arsenijs wrote 01/16/2017 at 23:02 point

1. there definitely will be a page like that. It's supposed to be ready for self-assembly =) As about the revenue - I'll try to crowdfund a manufacturing run of these phones, the possible collaboration with any shops/resellers will be afterwards - and won't really depend on me since it's open-source =)

2. I try to keep it beginner-friendly, and Arch doesn't really fit yet. It's possible I'll try this at least for myself, especially when I'll be working on the touchscreen version of this =)

3. Yeah, I just wonder if it'd be possible to still keep it 50USD - maybe not so much. I definitely need to learn a lot and think of a lot of things before I could even get to this idea.

4. I do care - all your suggestions keep the inspiration going and the new ideas appearing =) Thank you for sharing!

  Are you sure? yes | no

tim wrote 01/15/2017 at 04:32 point

does it accept arbitrary simcards?

  Are you sure? yes | no

Arsenijs wrote 01/15/2017 at 09:08 point

It won't work with 3G or 4G yet, but that's only because the GSM module I'm using is limited to 2G - you could jsut use another module, and I'll do a design with another module too. Other than that - no restrictions.

  Are you sure? yes | no

Stuart Longland wrote 02/19/2017 at 02:57 point

Okay, silly related question… how many 3G/4G GSM modules are available out there?  I did a quick look this morning.  RS seemed to have the Adafruit GSM module available, but I know for a fact that Telstra are shutting down their 2G network as there are customers I support that have been bitten by this very problem.

I like the idea of the ZeroPhone.  Fed up with cheap junk that I can't fix from the usual suspects, and if ZeroPhone can be modded to work with an off-the-shelf 4G module, it'd be ideal.  However, I'm not sure what 4G modules are available on the market and what would have regulatory approval in what countries.

  Are you sure? yes | no

Arsenijs wrote 02/19/2017 at 16:15 point

@Stuart Longland There's SIM53x0, other than that, there are not many modules accessible to hobbyists, it seems. Regulatory approval... It's hard to get somebody not having regulatory approval - I don't know of any acessible Chinese brandless modules that can do 3G/4G - it seems that it's SimCom, ublox and maybe one or two companies that I didn't hear about, and those will have regulatory approval.

I'm going to develop a 4G version, too, so follow along =)

  Are you sure? yes | no

Charles An3man wrote 01/15/2017 at 04:15 point

What about using an SDR module or dongle for comma?

  Are you sure? yes | no

Arsenijs wrote 01/15/2017 at 09:25 point

SDR for the GSM - it'd load the CPU a lot, I'm pretty sure it can't be done with Pi Zero speeds and all the processing overhead delays and the code isn't even there yet. 

SDR for your own type for communications (say, IoT control or making a portable communicator set for a group of friends) - possible, though all the limitations still apply and you might be better off just buying a hardware module capable of the frequency you want, will be cheaper, easier to write code for and work better.

  Are you sure? yes | no

Charles An3man wrote 01/15/2017 at 04:06 point

love it!

  Are you sure? yes | no

Arsenijs wrote 01/15/2017 at 09:26 point

Yes, I took plenty of inspiration from all the projects out there, including this one =)

  Are you sure? yes | no

Shane wrote 01/14/2017 at 22:51 point

The sim800 is a 2G device which is being phased out within the United States. Go with a 3g or better module.

https://www.att.com/esupport/article.html#!/wireless/KM1084805

  Are you sure? yes | no

Arsenijs wrote 01/15/2017 at 09:27 point

Hi! Yes, Australia is getting 2G removed too and it's kinda sad though understandable. I'm working on a solution and so far there are very interesting modules available that fit the bill.

  Are you sure? yes | no

Lars R. wrote 01/14/2017 at 17:01 point

There are GSM modules available that include WIFI/BLE and LTE.

Please consider adding a camera to the CSI of the PI as well as an LED.

  Are you sure? yes | no

Arsenijs wrote 01/15/2017 at 09:28 point

Yes, I'm still in the process of picking the right modules =)

The camera port is free, so anybody can add the official Pi Camera. And I'm sure I'll add a notification LED for calls/SMS/user apps - those rock.

  Are you sure? yes | no

Lars R. wrote 01/15/2017 at 12:18 point

I was thinking about a bright LED for illumination.

IMHO, the challenge is indeed selecting and arranging the components.

Did you consider capacitive PCB touch buttons?

If you use thinner PCB (like 0.6mm) and remove solder mask and copper in some places around the buttons, you could even have illuminated (touch) buttons. Also, combining multiple PCBs gives you more space for routing signals and components. I'm curious about how this continues. Regards, Lars.

  Are you sure? yes | no

Arsenijs wrote 01/15/2017 at 12:43 point

A flashlight-like LED could be easily added, too. 

Capacitative: not really, I'd need to have a controller that'd support 25 capacitive buttons (and I would still have some mechanical ones - side buttons), and I couldn't think of a cheap available version. It's more likely I'll make a cheap metal dome-based keypad layer. Also, I like my buttons mechanical since it's harder for a misclick to occur - I get that all the sime with some of my devices and I hate it.
However, nothing stops other people from trying, I'm pretty sure about that one - and it just made me thing I could add I2C, 3.3V and ground to the keypad layer so that people could just swap a keypad out with a capacitive one (don't even need to route any traces, the signals are available right on the underside of the board). Want a capacitive keypad? Just remove the mechanical keypad PCB and replace it with a capacitive one! Add a GPIO and you get interrupts! That should help with any keypads people can think of.

Sourcing: I like how cheap Chinese modules allow us to get so many components for free, and that's what I take as the base when I'm sourcing things. Arrangement is tricky, yes. Got a lot of things to be shuffled/replaced on the board of this first revision.


PCB: So far, PCB design has been a breeze indeed - haven't spent more than a week on the first prototype, and learned KiCad along the way (the only reasonable choice for an open-source thing like this one).

  Are you sure? yes | no