Difference between revisions of "Contribution Priorities"

From ZeroPhone
Jump to: navigation, search
(Moving project information to this Wiki)
(Moving project information to this Wiki)
Line 84: Line 84:
** Misc
** Misc
The parts '''highlighted in bold''' should be easy to write for new contributors to the wiki.
The parts '''highlighted in bold''' should be easy to write for new contributors to the wiki, using the information available on the Internet, in Hackaday worklogs and in GitHub repositories (such as board schematics).

Revision as of 01:43, 17 May 2017

This is an outline of contribution priorities for this project. It's maintained so that project contributors know which parts of the project they can help with, and so that they can find links to information concerning these issues.

pyLCI development

The GitHub Issues page for ZeroPhone fork of pyLCI lists issues that are yet to be solved, mostly basic architectural issues that need a rewrite of portions of the system. Those could use some help from Python programmers, or at least advice, like ideas on how to better implement certain things, info on libraries that can help solve those issues, etc.

Updating documentation

The pyLCI fork documentation is currently outdated. In the original pyLCI repo, it's done by Sphinx and hosted on ReadTheDocs.io. Current version will need creating a new readthedocs.io site (will be done this week), creating new and updating existing .rst files in the docs/ folder, cleaning dosctrings in python code (mainly in UI elements) and updating the setup instructions. This would make app development for pyLCI a lot easier, so it's a priority task

Reviewing ZeroPhone PCBs and working on PCB TODOs

Current ZeroPhone boards are available in GitHub repository. They're not yet the v1.0 revision, and the main reason for that is that the gamma revision boards haven't yet been tested and possible bugs haven't been fixed, and there are also some more things it'd be great to have that are not yet added. By now, there's been plenty of changes that the boards have gone through, and there'll need to be v1.0 sooner or later - but for that, more people need to revise the current boards, help by discussing and solving at least some of the issues listed in the ZeroPhone-PCBs GitHub repository, as well as open new issues when appropriate.

3D design

A ZeroPhone case needs to be developed. For that, it makes sense to use KiCad 3D export option - but it requires that all the component models are present. So, currently it's necessary to make all component 3D models before a suitable case can be made. After the 3D models are created, the resulting VRML board files can be merged into a ZeroPhone model, so that case can be designed around

Moving project information to this Wiki

Currently, there's a lot of information about ZeroPhone scattered among Hackaday worklogs, comments, Reddit threads and GitHub repositories. This information concerns topics that warrant separate Wiki pages. Those topics are:

  • ZeroPhone hardware and software description
    • Hardware
      • CPU board capabilities (CPU, RAM, storage, interfaces)
      • Descriptions of carrier boards (front, back, keypad, Li-Ion holder board)
      • Extension ports
    • Software
      • Custom software used
        • pyLCI
        • Keypad controller firmware
      • Third-party software used
        • Debian
        • ESP8266-over-SDIO driver by ajlitt
  • ZeroPhone project priorities
    • Cheap open-source smartphone
    • A smartphone with basic features that work well, out-of-the-box
    • Repairability and modifiability
    • Education
    • Hacker-friendliness and empowerment of hackers
    • Respect for privacy
    • A way to promote open-source software and libraries, strengthening open-source software ecosystem
  • FAQ
    • Will it work with my cell provider? Will it work like a normal phone?
    • 3G modem addition
    • Why Raspberry Pi?
    • Why not Raspberry Pi CM?
    • Case plans
    • Similar projects and differences from them
  • Open-source-ness status of the project
    • Information about software components, links to their repositories and licenses
    • Information about hardware components with firmware blobs, their status, status of reverse-engineering efforts of those blobs and relevant links (if it's being done)
  • Bill of materials
    • Components used in ZeroPhone, their photos and short descriptions
      • Possibly, eBay/Aliexpress/TaoBao links (from user-verified sellers)
  • All ZeroPhone links (on the main page)
    • GitHub source list
    • Reddit, Twitter, email addresses
    • Newsletter subscription & archive list
    • ZeroPhone survey
  • Guides
    • Sourcing ZeroPhone parts independently
      • Getting PCBs
      • Getting Pi Zeros
      • Getting Chinese breakouts
      • Getting connectors
      • Getting passives
    • Assembling a ZeroPhone
      • SMD part soldering
      • THT part soldering
      • Soldering breakouts to PCBs
    • Flashing an SD card with a ZeroPhone image
      • Same as flashing a Raspbian image
      • Windows: Win32DiskImager
      • Linux: dd
    • App development
      • Setting up pyLCI emulator
      • App tutorials
  • List of Hackaday worklogs, grouped by topic:
    • Hardware worklogs
    • Software worklogs
    • Project status logs
    • Thought pieces
    • Misc

The parts highlighted in bold should be easy to write for new contributors to the wiki, using the information available on the Internet, in Hackaday worklogs and in GitHub repositories (such as board schematics).