Close
0%
0%

Kite : Open Hardware Android Smartphone

Make & 3D print your own phone with sensors, displays, electronics, batteries and antennas. Customize Android and do exactly your thing!

Similar projects worth following
A smartphone is the prettiest black box in existence. Due to volume economics, smartphones only expose features needed by the common man. That's a shame, as even a low end smartphone includes powerful technology that could be used to solve a variety of computing problems.

Kite breaks up the smartphone into pieces, creating a set of building blocks that you can use to create any device that needs the features of a smartphone: high performance in a battery powered mobile form factor, augmented by complete connectivity and great multimedia features.

Kite empowers anyone to build a smartphone with nothing more than a 3D printer and a screwdriver. Kite's architecture allows anyone to build the devices of their dreams by changing the casing, antennas, batteries, and adding custom electronics.

Kite is not limited to phones. You can build everything from a dumb-phone to a drone, and even a powerful desktop. Your imagination sets the limits of what you can do!

We are currently at Kite v1.  We have built various prototypes with Kite v1 - many custom smartphones, an in-car prototype, and even made an Android desktop with HDMI output!

We are crowdfunding right now for an improved version, Kite v2, on KICKSTARTER:

Kite v2 will be an improved design with a powerful new core board - KiteBoard v2 - based on Snapdragon 450.  KiteBoard v2 will be open hardware (unlike KiteBoard).  The crowdfunding campaign closes on May 27tth.

Kite's design is reasonably well documented in this post. The design & key ideas behind Kite v2 are available in this post.

Some of the capabilites of Kite v1 are explained in this video:

A few detailed posts serve to reasonably document what it takes to build some of the prototypes:

Kite consists of:

  • KiteBoard
  • 5" 720p bright display module, with integrated 5 point capacitive touch screen
  • 8 MP Autofocus Camera
  • An expansion board that plugs into the KiteBoard and exposes
    • a Raspberry Pi compatible 40 pin HAT connector
    • Audio interfaces - Mono Speaker, Mic, Earpiece & signals required for stereo 3.5 mm audio socket
    • Common buttons - power, volume up and down
  • Antennas for 4G, WiFi/BT, and GPS
  • Vibrator, Speaker, Mic, Earpiece & 3.5 mm audio socket (Standard audio components of a smartphone)
  • Pogo pins for battery connection
  • Switches for Power, Volume up and down
  • Flex cables for display & camera
  • 3D printable designs for complete smartphones that use the components in the kit
  • A complete Android implementation, including the Linux kernel. Also includes examples of integrating external electronics.

The complete kit is pictured below, except for the 3D printed parts:

KiteBoard (http://www.kiteboard.io/) is a compact, low power, single board computer that integrates complete connectivity (4G, WiFI/BT), GPS, sensors, powerful Qualcomm Snapdragon processor with excellent processing & multimedia features. KiteBoard is highly extendable - it has separate connectors for all important interfaces. Kite complements KiteBoard with important components, resulting in a complete smartphone design that is highly customizable.

Kite empowers makers to build their own phones that are customized to meet their exact needs.  Various types of customization are possible (be sure to look at the gallery & video):

  • Raspberry Pi HAT compatibility makes it possible to make a device that include useful HATs and pHATs. 
  • Common sensors that use I2C/SPI/UART can be added to your device.
  • Buttons & LEDs can be included and placed exactly where required.
  • Common Li-Ion and Li-Polymer batteries can be used as the power source.  These can be charged in the device.
  • You may also use an antenna of your choice for 4G, WiFi/BT and GPS.  KiteBoard has IPX connectors for each type of antenna, allowing you to use a wide variety of off-the-shelf antennas.  You can also use IPX to SMA connectors to allow usage of external antennas!
  • The 3D printable case designs can can be customized easily to integrate additional electronics. Common things like LEDs, buttons, sensors, displays, batteries, antennas can be included with reasonable effort.  Put your 3D printer to good use!  Want to make a phone that is customized to your grip - or reflects your personality ? Kite is your best bet. With commercial phones, you print cases.  With Kite, you make the...
Read more »

piano-phone-v01.zip

Files for PianoPhone. Includes 3D models, code & code snippets, system configuration files.

x-zip-compressed - 28.50 MB - 04/04/2018 at 08:08

Download

kite-hdmi-v01.zip

Schematics of HDMI board for Kite. Licensed under Creative Commons Attribution-ShareAlike 4.0 International License.

x-zip-compressed - 70.07 kB - 04/02/2018 at 12:42

Download

minchu-v01.zip

Design files for Minchu - Kite model that includes a name badge on the back, using Pimoroni Scroll pHAT HD. Includes 3D models, and source code.

x-zip-compressed - 2.04 MB - 02/14/2018 at 14:53

Download

poorna-v01.zip

STL files for the enclosure of Poorna - minimal 3D printable phone design using Kite. Licensed under Creative Commons Attribution-ShareAlike 4.0 International License.

x-zip-compressed - 1.93 MB - 02/09/2018 at 11:11

Download

kite-design-v01.zip

Files related to Kite. Schematics of boards & flex cables. Licensed under Creative Commons Attribution-ShareAlike 4.0 International License.

x-zip-compressed - 1.86 MB - 02/09/2018 at 11:10

Download

  • 1 × KiteBoard "Motherboard" of the phone, with connectors for low speed I/O, display, camera, IPX connectors for antennas
  • 1 × Expansion Board This breaks out the low speed I/O (and level converts) into a 40 pin Raspberry Pi HAT connector. Also provides 5V and 3.3V power. Plus breakout for speaker, mic, earpiece and buttons
  • 1 × Button Sized Vibration Motor
  • 1 × 3.5 mm Audio Jack Digikey P/N SJ-43515TS
  • 3 × Standard Push Buttons For power on, volume up, volume down.

View all 17 components

  • Kites Flying Around the World

    Shree Kumar5 days ago 0 comments

    In our KICKSTARTER campaign, we introduced the idea of "Backers we Love" - basically anybody backing the project on KICKSTARTER gets a chance to try out a Kite.  We now have Kites flying around the world as we speak.

    @Lexie Dostal  got the first Kite - shipped to USA.  Lexie is a windows game programmer. He has made a cool game controller Android phone with Kite (painting in progress):

    Do checkout his twitter feed for more work-in-progress images.  He has painted the case with a nice blue color, sanded it, and is making it nice & smooth. 

    This prototype will be shown at Maker Faire tomorrow, as part of the Hackaday Prize information session:

    Lexie will also have a separate KitePhone with him as demo unit.  If you are attending Maker Faire, do give a shoutout on twitter to @hxLexie.

    On the other side of the world, @Stuart Longland  has been flying one in Australia.  He has made a quick review of the unit:

    We have another Kite flying in Germany too - it's with an Apple fan! ... But that update has to wait for Monday.

    One Kite is with Dave Hakkens (of Phonebloks fame! - he now runs Precious Plastics). We've passed on a unit to him for evaluation.

    Our Kickstarter project needs a push at this time.  I have been keeping track of the statistics of the project.  Today, I was startled to see the following information on my project dashboard:

    419 users waiting for a reminder before the project's funding ends !?! Why oh why.  Please jump in guys - this project needs your help...

  • A sneak peek into Kite v2

    Shree Kumar05/09/2018 at 05:28 4 comments

    Before reading this post, I highly recommend reading "Design of Kite Open Mobile Platform".

    Kite v2 is the upcoming design of Kite.  We are crowdfunding for it on KICKSTARTER  (do look at that page for a quick pitch, but without too many tech details) 

    Let’s look at the desirable properties of Kite v2; this is on top of everything that holds for Kite v1:

    • Minimal phone model must be not require soldering, must be very quick to assemble & disassemble. 
    • Swapping custom hardware in & out must be easy
    • Make a powerful, and more generic kit
    • Maximize "open"ness
    • Maximize local sourcing possibilities

    In short, Kite v2 takes a good design, and aims takes it to the next level.

    Design of Kite v2

    Let’s start with a block diagram treatment of the design being considered for Kite v2:


    Compared to Kite v1, the Core board design has a few major changes.  Let’s run through them.

    We get connectors for audio & standard buttons right on the Core.  This is part of the “soldering free” promise for the minimal phone on Kite v2. Pushing the connectors to the core has an interesting side effect: it makes the expansion board truly optional! Any user who doesn’t need the extra electronics can skip it (everyone will still get it as part of the kit, though). We think that the first assembly of a KitePhone for most users will not include the expansion!

    Kite now includes add a “smart” battery component.  This component integrates a fuel gauge (and protection circuitry) and a Li-poly cell.  To get an accurate estimate of the state of charge (battery percentage), the fuel gauge is programmed with the characteristics of the cell.  If a user wishes to change the cell, it’s possible to do that.  To get accurate fuel gauging, however, the fuel gauge needs to be reprogrammed. 

    Finally, it’s not enough for display & camera connectors to be “generic” (Kite v1).  We need them to be “forward compatible”.  That way, we can upgrade KiteBoard to v3 in the future, while hopefully keeping the same peripherals (hopefully the camera too, but everything else will work 100%).

    Kite v2 will include a camera board.  Like the display, an intermediate board is the key to making the connector independent of the actual camera. The camera board is expected to be much simpler than the display board, and extremely compact.

    We can reasonably expect to have more displays & cameras over a period of time. To accommodate this, we may need to implement a simple way to detect the peripherals.  Simplest way to do that may be a simple I2C EEPROM on the peripheral boards.

    Implementation of Kite v2

    Implementation hasn't started yet (depends on crowdfunding), but we are at an advanced stage of design.  Here's what we know...

    Kite v2 will be based on KiteBoard v2. KiteBoard v2 will be based on Snapdragon 450 (was Snapdragon 625, but we had to change it) - bringing an across-the-board improvement performance in all areas: 

    • Faster octa-core ARM Cortex A53 at 1.8 GHz
    • Adreno 506 GPU
    • 2 GB LPDDR3 RAM at faster speed
    • Faster LTE
    • WiFi ac!
    • BT 4.2
    • USB 3.0
    • Two independent displays
    • Two cameras

    Support for two independent displays will make things very interesting. A few combinations would be interesting:...

    Read more »

  • Woohoo! We are in the finals!

    Shree Kumar05/04/2018 at 08:45 0 comments

    Got the great news - we are in the finals of the Hackaday Prize 2018 ! This project is competing under the "Open Hardware Design Challenge".  A great honour for this project !

    The details of the announcement are at this link !   Thanks a lot everyone for all your encouragement too. 

    This project branched off to hackaday after a meeting of hardware enthusiasts!

    These guys dropped the apple on my head.  Open hardware is the way to go, I said! I am happy to make this idea grow further and become 100% open hardware with our crowdfunding attempts at KICKSTARTER for Kite v2

    Please back this project there and help Kite v2 reach everyone! Thanks a lot!

  • Can the makers & hackers show up at the party, please ?

    Shree Kumar04/24/2018 at 18:52 0 comments

    Hello hackers, makers, DIY enthusiasts, etc!

    A quick introduction for those of you who don't know me: My name is Shree. I am trying to bring a novel idea into this world. The idea that you can make your own smartphone.  Free of chains, in every way.  At $300 a piece, roughly. I have launched a campaign on Kickstarter to realize this dream. 

    I have a little more than 25 days from now to make this happen. I need close to a million dollars to make this happen.  That's not chump change,  I know that.  But it's the smartphone we are talking about here.  A million dollars is chump change in that business. Achieving freedom for a smartphone is no small deed.  But there is a price to pay, and it is not too high.  Individually maybe yes. But collectively ? No. 

    My campaign has been live for a few days. There is a site called kicktraq that helps campaign creators understand their chances. It's not perfect, but it's probably not too bad either!

    We are showing an interesting downward trend. 

    So, the simple prediction seems to say that this campaign will fail ?  I refuse to believe that less than 200 people in the world need a DIY smartphone kit...

    I need your support to make this successful.  It's a community project designed to save 10% for everyone by avoiding a "publicity/marketing" budget. If you care about this, then you should help me. Not just for me, but for yourself too.

    Kite solves many technology problems. I can give you proof for that:

    • Look at the pages of the Kite Open Hardware Android Smartphone project, you will find that I have already made this happen in a large way. If you think that's a fancy claim, let me know & I can explain why it is not.
    • A reasonably complete story is told well on the kickstarter page - it was long to begin with - but we've made it simpler now.

    Please note that I am only looking to take Kite to the next level here - make it soar, into your hands.  I am asking money from you guys to upgrade KiteBoard to v2, running some required safety certifications, and achieve a reasonable volume (3000 pieces) without burning my own hands.

    If you interested to try out Kite, please pledge to the project.  Our very own @Lexie Dostal is trying it a Kite in California, USA, as we speak.  We call this the "Backers we Love" program in KICKSTARTER.

    If you are reading this far, please note that I need your support.  Back this project on KICKSTARTER and I will do everything in my power to do what you need.  I have the technical know-how - but marketing is not my suite. That's why this project is on hackaday!

    Please back this project on KICKSTARTER. You don't have to back the kit if you don't want to - even a "Thank You" ($5 or $1) will do!  We can go a long way...

    Note that I do appreciate & understand that not everyone needs this. Frankly, this is not a problem for this project - we only need 3000 people to make this happen!  Every donation helps too, and we will use those to ship free kits worldwide to backers.

    However, if you don't feel like backing the project, then here is my humble request: Please tell me why! Give me the reasons why you do not need it.  If you have any need that is not met by the project, please let me know. I can find ways to fix things, but not everything. I am talking of technical solutions.  That's what my project promises!

    Finally, do help to share our campaign. Share it with your friends.  Let me hope that the hackers, makers and everyone else shows up to the party, before it is too late...

    Thanks a lot...

  • Kite is now Live on Kickstarter

    Shree Kumar04/23/2018 at 14:31 0 comments

    I am excited to announce that Kite is now LIVE on Kickstarter!


    Basically, we have kits available at $274+shipping right now.  Please back the project . I can tell you that Glory Days of Open Hardware are ahead - if we do this!

    Thanks in advance & hoping for your support.  If you have any questions, please let me know..

  • Kickstarter Launch : 23rd April, 2018. 7 PM IST (GMT+5:30)

    Shree Kumar04/21/2018 at 16:50 0 comments

    Hello World!

    Yes, that's right.  I am preparing for a massive launch on Kickstarter.  The countdown has already begun... to free the Smartphone !

    We have subscriptions from USA, Canada, Mexico, Ecuador, Brazil, South Africa, Spain, UK, France, Belgium, Netherlands, Switzerland, Germany, Italy, Austria, Sweden, Bulgaria, Lithuania, India, Russian Federation, Thailand, Singapore, Vietnam, South Korea, Australia, New Zealand and Japan. Phew!

    Apologies, but I would rather not try to convert the launch time to your time zone! Here's a handy conversion link.

    Thanks to all who have subscribed..If you subscribed to our mailing list, you should have got an email already with the launch information.  If not, please do check your spam folder!  There is still time to subscribe at www.kiteboard.io/contact !  I look forward to your support... KitePhone is coming to Kickstarter...

    And this, I think, is the an important indicator of what is going to happen. I am thrilled to receive this message from a potential backer:

    That's an empowering vision - but written by someone else, and someone who uses Apple products! Who would have thought?  

    This is the gist of our quest - the personalities that we are after!

    To make this idea a reality, I really need your help!  In fact, we all need all our help. I said it on twitter in the morning, and I will say it again: Is this history in the making, or an empowering idea that will go down the drain ? You will get to decide, over the next 35 days.

  • "Feature Requests" in the Democracy of Kite

    Shree Kumar04/17/2018 at 20:33 0 comments

    The more I think about Kite, the more interesting I find it.  It is not about me being the creator of Kite. It’s about the possibilities that are open for everyone. 

    Kite is, first and foremost, a hardware freedom project for Android.  Android is the most prevalent open source platform for phones.  There is no open hardware for Android. Kite aims to be that platform.  That’s the primary reason for the existence of Kite!  

    What sort of freedoms are these? Any antenna, any battery, lots of your own hardware you can add, and of course make your own enclosure/case.  We provide Raspberry Pi HAT compatibility – but that’s just a simple board (with a few level converters etc) that anyone can change to adapt to any system.  No restrictions there either.

    This immense freedom in hardware makes the software freedoms more than meaningful - it raises the hardware software combination to a level of freedom never attainable before by the masses.

    A whole lot of people are sufficiently empowered to do some bits of hardware, courtesy the maker movement.  However, the real problem is in the area of software.  The sort of hardware freedom this project gives has been the territory of OEMs. Phone vendors.  Folks with big pockets. Most of the freedoms of the underlying platforms are suppressed by OEMs to deliver consumer goods; this is not wrong! It’s the nature of their business.  Kite makes those goodies available.  Kite shows you how to mod Android to achieve your goals.  We provide a great starting point so that you can achieve what you want to – without us getting in the way.  That’s what we call, “empowerment”.

    Kite begins as a hardware project with a standard configuration – Kite v2.  The hardware configuration of Kite v2 is setup in a way that attracts maximum users at a fair price point for everyone. This is one of the tricky parts of the project.

    The backers of the project are the citizens of the “democracy” of Kite. Each one effectively is a “voter”.  Voter for what? The direction of the project. Note that it’s too early to ask/answer questions like, “if I buy ten kits, will I get ten votes” 😉. Thing about this democracy, like any democracy in the world, is that each voter will have a different interest & agenda. 

    Even me, the creator of the project, can’t predict how this democracy looks like.  I can bet, though, that's it is going to be quite diverse.  So, before deciding the future direction of the project, we let the community form.  Kickstarter ends successfully.  And lo & behold – here’s the community. The democracy of Kite.

    What next? Now, people are free to come up with their own list of what they want us, the creators of the project, to focus on.  This is what we call “feature requests”.  Feature requests can be related to hardware or software.  Let me give you some examples.

    Hardware features: 5” 1080p screen, barcode camera, “can I make a tablet with Kite?”, and anything else that you may imagine. There is a large ecosystem of component catering to the mobile, handheld & PDA industries - and it's not only in China. We can tap that as required.

    Software features: Can I dual boot linux? How to get <piece_of_hardware_X> working with Kite? Can I have an API to control that camera focus distance from Python? and anything else you may imagine.

    How do we act on feature requests? In a reasonably democratic manner.  Let’s tackle the hardware first.  Hardware may involve costs, but not necessarily always.    E.g. “how do I use that 18650 battery with Kite” is likely to come at zero cost. That flexibility is engineered in Kite; it’s a matter of configuration of the fuel gauge chip & the charger. ...

    Read more »

  • IMPORTANT: an update (Crowdfunding D-Date: 23 April), and a downgrade...

    Shree Kumar04/16/2018 at 15:31 11 comments

    The important update first: assuming all goes well, we should be launching our Kickstarter campaign on 23rd April, 2018 (i.e. exactly one week from now).  I do request anyone who has not done so to subscribe at www.kiteboard.io/contact .  Among other things, this helps us understand the *cellular* requirements.  Please subscribe if you haven't already.  Thank you.

    Now, to the other part: I had earlier communicated that we will launch with the Snapdragon 625.  I regret to announce that we will not be able to do so.  Instead, I am forced to settle for the Snapdragon 450 (for reasons read below).

    This downgrade effectively means the following:

    • No 4K video encode/decode. (450 is limited to 1080p)
    • The application processor is 1.8 GHz, instead of 2.0 GHz
    • Reduces L1 cache by half - ouch ! (SD450 is 512 KB, compared to 1 MB in SD 625)

    Summary: lower performance in some areas (I am not able to figure out the GPU performance difference. Any info here would be useful).  How exactly it will impact you, I will leave you to decide that. Sorry for the change. I think it's better to do this right now.

    I have mixed feelings about this, to be honest.  Of everything, I was hanging onto the SD 625 for the 4K encode/decode capabilities.  I am sad to see it go. 

    So – why did I decide on the Snapdragon 450? To answer that, let me tell you what I think are my responsibilities are in this project:

    • Get great technology to everyone’s hands. Larger the community, better for everyone.
    • Ensure that we have a great, predictable & deliverable plan.  Once I start my campaign, there should be no going back.  (If I am to lose face, now is a great time!)
    • Run the project, with my team.  Deliver as promised during the campaign.

    This project includes certification plans of all sort.  Global LTE will require us to have two SKUs for KiteBoard v2:

    • North America (USA, Canada)
    • Europe & Rest of the World

    The largest number of folks who are likely to back this project will come from USA. My subscription list tells me that. Kickstarter provides a “Community” part for every project. A cursory scan on a few projects – and surely projects in the DIY Electronics category – will help prove that too.  I expect 40-60% of my backers from USA, if not more.

    So – USA is an important geography for this project.  USA is also a problematic area for cellular connectivity – courtesy carriers & carrier certification requirements.  Countless projects have been delayed due to cellular certifications. And famous ones. I am talking about people with deep pockets. I don’t want to add to that list. I have a great plan for predictable, on time delivery – if I stick to the Snapdragon 450.

    But that’s not the only reason.  Another equally important reason is that I am unable to see who is buying the Snapdragon 625, and for what purposes.  This project is expected to deliver in Dec-Jan window for the early orders.  8 months is a long time in this business.  And if I don’t have this visibility now, you can imagine what will happen next year.  I need a minimum of 3000 backers, but that’s the minimum.  I intend to do a great job – and that means that I should expect more people backing me. 

    With larger volumes, and longer life, comes a predictability requirement. That’s where the Snapdragon 450 scores again.  It’s a fresh chip.  The Snapdragon 450 also has most of the goodness of the 625 – two independent displays, two cameras(wee bit less powerful), USB 3.0, WiFi ac, and everything else, including Cat 6 LTE.  What you lose is what I have mentioned earlier.  Whether it’s worth losing that to get what this project gives you - that's something you need to decide.

    There are other benefits of the SD450 being a “fresh chip” – software updates,...

    Read more »

  • Design of Kite Open Mobile Platform

    Shree Kumar04/08/2018 at 14:41 3 comments

    For the past couple of years, me & my team have spent a lot of time working with & refining Kiteboard & Kite.  Things kind of evolved to reach the current state.  Looking back, I can’t find a single document that anybody wrote which summarizes the design in a useful manner.  This post is an attempt to explain what has happened till now, and how we intend to change things in the future. 
     
    Before we go into design, architecture, etc, I would like to offer a simplified bird’s eye view of what goes into creating a phone.  I am painfully aware that it’s a simplification of a rather complex process fit into a few short paragraphs. If you are an expert, please excuse any inaccuracies in the next few paragraphs 😊

    Smartphones are based on SoCs – basically a lot packed into a single chip.  SoC vendors (Qualcomm, MediaTek) don’t stop at providing just SoCs, they provide complete reference designs for phones.  Generally, a reference design tightly integrates various chips from the same vendor – the SoC, a PMIC (power management IC), WiFi/BT, RF circuitry, and Battery Charging.  Reference designs also include other parts required to build the full phone: RAM, storage, peripherals, connectors, antenna designs, and everything including the enclosure of the phone.  A reference design generally provides several alternatives for various components (it’s a huge market, choice rules!).  Reference designs represent reasonably tuned solutions, from a hardware, software, cost and performance perspective (that is saying quite a lot in one sentence, by the way!). 

    Most smartphone vendors leverage the reference designs, changing mostly the “peripherals” – display/touch, cameras, maybe sensors, casing, battery.  Peripherals & the base platform decide the market positioning of the device.  Making a smartphone is a tight exercise in space optimization too. For every device, shape of the board and connectors on it are changed to accommodate the selected peripherals & the overall design.  Antennas are designed & positioned carefully, and are highly influenced by safety testing (SAR) considerations.

    Overall, a complete smartphone is a single block of tested hardware & software.  It is “hard”ware – hardcoded (in software terms) to achieve a single, cost optimized device.  Mass market consumer devices essentially go through an aggressive BOM optimization, which eliminates unnecessary components – down to the lowly resistors.  Smartphones are designed to sell in the millions. Even a few wasted resistors are a no-no at that scale.

    Reference designs are the secret to the flood of devices you have been seeing in the market for the past N years.  Most devices based on any given platform don’t differ much in terms of performance and feature set.

    Abstract Design of Kite v1

    We wanted to create a design that would allow us to build a variety of devices using a standard set of components.  Here’s a block diagram that reasonably captures the design of Kite, in generic terms – without reference to specific technology:

    Before I get down to explaining each piece, here is the color coding used in the block diagrams in this post:

    • Green for PCB
    • Blue for peripherals
    • Pink for connectors

    At the center of the design is a “Core Board” (henceforth shortened to “Core”). It’s basically the guts of a full featured smartphone… If I were to draw an analogy with the PC, I would call it the “motherboard” of a smartphone....

    Read more »

  • PianoPhone, with LOUD music

    Shree Kumar04/04/2018 at 05:32 0 comments

    Smartphones include amazing technology.  Unfortunately, a lot of it never gets exposed to users, mostly due to form factor considerations (my guess), and possibly due to “consumers don’t need it”. 

    What do we have for this post? Let’s make some music with Kite… And not just any music – let’s make it LOUD.  The speaker in Kite is fine for personal use, but that’s not something that showmen would fancy.  To motivate you to read the rest of the post, here’s the PianoPhone:

    For reference, the files required for this build are in piano-phone-v01.zip.

    The centerpiece of the Piano Phone, is Pimoroni’s Piano HAT. This includes one octave implemented with capacitive buttons. It has LEDs for feedback - could possibly be used a learning aid too. Plus octave & instrument keys. To top it off – it’s a joy to behold. 

    Wiring this up is a bit more work than wiring up our name badge, though.  Nothing too difficult.  Let’s open the back cover & see for ourselves. Looks a bit of a mess, but hey we need quite a few wires.  The Piano HAT is sensitive to exactly which wires you connect, though.  At first try, we wired up the other 3.3V pin, which the Piano HAT just didn’t like.  To cut a long story short, here is wiring:

    That bit of tape ensures that we don't end up with accidental shorts.  An essential safety mechanism...

    The wiring looks a bit messier than what it is. Reason for that is I have cheated a bit & wired the I2S and power lines that we will need a bit later in this post (all the wires going over the pogo pins).  I am documenting this at the end - after putting everything together - too lazy right now to tear up a beautifully built up unit for documentation.   

    Coming to the software : Kite runs Android, and that means that you need a tiny bit of effort to get Raspberry Pi HATs to work.  Not too much work , mind you – but things may not work out of the box completely.

    One of the things I like about the stuff from Pimoroni are their decent Python libraries.  The chroot linux environment on Kite is the best way to get started (for a background on this, do have a look at the Name Badge post).  The Piano HAT has two capacitive touch controller chips. The Piano-HAT library talks to it over I2C.  The LEDs are connected to the same chips – making them very easy to control from the code.  Each touch controller has an “Alert” GPIO associated with it.  This is monitored by the python library. 

    Now, if there’s anything that Arduino has taught me (and the world) – it is this: interrupts are evil.  Don’t do interrupts when… when you can just poll.  The Piano-HAT library relies on RPi.GPIO, getting which to work with the same semantics on Kite would have been a serious pain; not something I was keen on.  I wanted to make music, not war.  So, I went to poll.  I did.  Luckily for me, Piano-HAT already had code to help me poll.  Set the alert pin to -1 to unlock the magic.  I wrote a silly wrapper for RPi.GPIO to ensure I don’t change code unless absolutely required.  In case you are wondering what “poll” means in this context... it’s a while loop that executes in a separate thread, and periodically checks the capacitive touch sensing chips over I2C for events (checkout piano-phone-v01/kite-chroot-pianophone for all the gory details!)

    --- a/Piano-HAT/library/pianohat.py
    +++ b/Piano-HAT/library/pianohat.py
    @@ -191,11 +191,11 @@ def setup():
             return True
     
         # Keys C, C#, D, D#, E, F, F# and G
    -    _piano_ctog = cap1xxx.Cap1188(i2c_addr=0x28, alert_pin=4)
    +    _piano_ctog = cap1xxx.Cap1188(i2c_addr=0x28) #, alert_pin=4)
         _setup_cap(_piano_ctog)
     
         # Keys G#, A, A#, B, C, Instrument,...
    Read more »

View all 16 project logs

Enjoy this project?

Share

Discussions

davedarko wrote 05/08/2018 at 07:29 point

  Are you sure? yes | no

Shree Kumar wrote 05/08/2018 at 11:29 point

Thanks for this, @davedarko ! Looks like you made this happen ??

  Are you sure? yes | no

davedarko wrote 05/08/2018 at 12:36 point

nopes :) I have no influence whatsoever :)

  Are you sure? yes | no

Shree Kumar wrote 05/08/2018 at 12:39 point

@davedarko haha - we all think we have less influence than we have.  Kite is about democracy .. we can all pull our weight !

  Are you sure? yes | no

Lars R. wrote 05/08/2018 at 05:38 point

You were asking for feature requests:

I don't need to plug maker stuff on my phone or in my phone. Bluethooth and Wlan modules are dirt cheap.

I don't want a phone with alternative hardware. I want a phone with alternative software. In particular, I would like to have a phone with a native Linux distribution with long term support, so that I don't have to worry about security updates after just two years.

However, Phone that gets security (and even feature) updates for 5+ years and has open source software, is no money machine. Then, you can't sell software and you can't make money with selling phones to the same guy every two years.

And that's is why, in my opinion, such a phone must be open source to quite some degree, since no company is making one; except for very expensive ones.

What software do I need?:

. Google map should run natively.

. A program for phone calls and SMS.

. Emails with a native/simple linux program.

. and so on

IMHO the hardware components don't have to upgradeable. I haven't replaced my phone for over 6 years now; I didn't need to. As a consequence, I am not even affected by most of nowadays security issues. The android on my phone is just to old, haha.

  Are you sure? yes | no

Stuart Longland wrote 05/08/2018 at 09:44 point

Is having a hardware expansion port a deal breaker?  Yes, there's Bluetooth, but then said widget also needs its own battery… and interfacing to it becomes more complicated.

For me, the hardware expansion is a "nice to have", I'll probably find a use for it sooner or later.  Being in charge of my own destiny is what I think *really* counts here.

  Are you sure? yes | no

Lars R. wrote 05/09/2018 at 04:11 point

The hardware expansion port is no deal breaker. Weight and size can be deal breakers.

"Being in charge of your own destiny" with Android: Good Luck.

  Are you sure? yes | no

Shree Kumar wrote 05/08/2018 at 12:37 point

@Lars R. If you need a Linux distribution supported directly, then the Librem 5 is a good alternative to look at.  That's not me "recommending" them, but just saying that it's a possibility.

Google maps won't run on a non-google blessed device, btw.

A key feature of KitePhone is the battery is in your control.  Use a local battery. Change it after two years.  Upgradability of hardware is important, IMO.  It is a key design feature of Kite v2.  Basically, upgrade the base board & BAM get all new features.

  Are you sure? yes | no

Lars R. wrote 05/09/2018 at 04:23 point

Thanks for the hint. At the moment, it looks to me as if the Librem 5 will be quite expensive whenever it will be available.

Does google maps run on a Raspberry Pi? If so, then it should also run on a Linux Phone.

Replacing stuff is important, I agree. But I personally do not need to upgrade components all the time. What should I upgrade with?

The only significant development of the last couple of years, that I see, are microphone arrays (more than one mic). But is connecting multiple mics even possible with your base board...

What is the weight of your Phone including battery?

  Are you sure? yes | no

Shree Kumar wrote 05/09/2018 at 05:12 point

@Lars R.  I don't think google maps runs on a Raspberry Pi.  Pi does not have a GPS, right ?

Librem 5 is expensive, yes, but as they say "freedom comes at a price". 

Kite is ~2x the cost of a standard phone of equivalent base configuration - but we offer insane value in terms of what you can do....

In the minimal configuration, a KitePhone weighs approx 200 grams.  See https://hackaday.io/project/42944/log/88691-building-poorna-your-first-kitephone for more information - assembly steps, dimensions, 3D model files and even schematics of various boards.

Upgrades may not be required, I agree with you. There are many things you can "upgrade" - e.g. use a speaker of your choice, or a larger LiPo battery.

In our concept, the idea of "upgrade" applies only to the base board - Kiteboard.  Everything else is "configurable".  The KiteBoard tightly integrates most of the specs of a phone.  So, upgrade gives a performance benefit to those who crave it.  E.g. let's say two years down the line, some important technical change happens, then we just change the board.  The connectors on Kite v2 will be forward compatible to achieve this.


Regarding the "being incharge with Android part" - that is very much possible with Kite.  Kite does not ship with "Google Apps".  It comes unlocked in every way.  All parts of Android are open to modification, so you can remove all traces of dependency on google infrastructure, if you so wish.

  Are you sure? yes | no

Stuart Longland wrote 05/09/2018 at 06:35 point

> "Being in charge of your own destiny" with Android: Good Luck.

How do you mean, good luck?  You've got schematics, firmware sources, toolchains, the works.  If we as a community can't maintain a platform with that available, then we really aren't trying.

Yes, I have ported Linux to a machine with nothing more than schematics.  KaRo TX-27 and Technologic Systems TS-7670 (both rev B and rev D) come to mind.  It can be done, it is not rocket science.

The Raspberry Pi is a more closed platform than this, and it's seen as the darling of the open-source movement.

  Are you sure? yes | no

Lars R. wrote 05/09/2018 at 16:38 point

How much effort is it to run Linux on the Kite phone?

Does Qualcomm provide Linux support for the Snapdragon 450?

Are the drivers available? (Which ones are not?)

  Are you sure? yes | no

Stuart Longland wrote 05/09/2018 at 18:05 point

> How much effort is it to run Linux on the Kite phone?

On paper, we the community should have access to all materials needed to do this as a collective group… maybe push support into the mainline kernel.  The community at large has managed to do it with the Broadcom chips used in the Raspberry Pi, which have datasheets under NDA, so anything more open than that should be doable.

> Does Qualcomm provide Linux support for the Snapdragon 450?

If they didn't, Android could hardly run could it?  Who would they flog the CPU off to?  Not Apple, they DIY.  Not Blackberry, they use Android these days.  Microsoft aren't exactly big in the phone business either, so that rules out Windows Mobile/Phone/CE.  Few others would have a use for a CPU with 8 cores in it.

Looking around, I see there are a few kernel trees, openly published, that support the SDM450 CPU.

> Are the drivers available? (Which ones are not?)

There look to be a few drivers out there, already spotted are things like the camera interface, not sure where some of the other components hide their drivers in the kernel tree.

The drivers must be available *somewhere* though; this is the same chip as the Motorola Moto G6, Samsung Galaxy A6+ and HTC Desire 12 Plus, to name three.  If a driver did not exist, these products would not be viable.

  Are you sure? yes | no

fabian wrote 04/23/2018 at 14:40 point

Why not tizen and android? why blocking phone ?

  Are you sure? yes | no

Shree Kumar wrote 04/23/2018 at 14:59 point

Hi fabian - not sure what you mean by "blocking phone" ? We plan to start with Android, Everything is open here...

  Are you sure? yes | no

Stuart Longland wrote 05/08/2018 at 09:42 point

The beauty of this is you can port Tizen yourself.

  Are you sure? yes | no

Just4Fun wrote 03/29/2018 at 16:18 point

Wow!!! This thing is really revolutionary!

Even more with open source HW...

  Are you sure? yes | no

Shree Kumar wrote 03/30/2018 at 13:28 point

Thanks a lot!

  Are you sure? yes | no

dethoter wrote 03/25/2018 at 13:21 point

Awesome project! Can't wait to back you on kickstarter!

  Are you sure? yes | no

Shree Kumar wrote 03/25/2018 at 15:32 point

Thanks a lot! Any feature requests ? I am all ears :)

  Are you sure? yes | no

Lexie Dostal wrote 03/30/2018 at 22:43 point

Would be nice if it was a single board rather then needing a breakout board for the pins. This would hopefully make the board more compact or make the profile of the device not as thick.

If the screen could connect directly to the board with out going through a controller board it would also help with keeping the profile of the device thinner as well. 

I know its going to be impossible to get anywhere near the thinness of current mobile phones, and this board is more then just a phone. But these changes would go a long way to make custom devices made with kite fit in a pocket.

Looking forward to the kickstarter regardless.  

  Are you sure? yes | no

Shree Kumar wrote 04/02/2018 at 05:24 point

@Lexie Dostal for some reason, hackaday isn't allowing me to hit "reply" on your message.  So here it is :)

You are right about the single board.  However, that comes with a drawback : we get tied to a single display or camera.  With generic connectors, we keep the main board free of such dependencies.  Have a look at the HDMI post I made today for an interesting take on this : https://hackaday.io/project/42944/log/137235-kite-has-hdmi-convergence-ahoy .

That said, I do agree that lowering the thickness is not only desirable, but an often requested change! A possible solution is to have all the required boards lie on a single plane - rather than being stacked.  My hope is to get the thickness of the device down to the range 10-12 mm with such changes - if not better.

Reducing the thickness is  truly is a multi-dimensional problem : we have various off-the-shelf components of various sizes - and all of them play a role in the current form factor.  We will try our best here.

  Are you sure? yes | no

Lexie Dostal wrote 04/04/2018 at 22:12 point

Thanks for the response, I also cant reply for some reason. 

I understand having a generic connector would make the board work with more devices in the future. if the controller boards were designed with the dimensions of the main board in mind it wouldn't be too hard to fit them into a portable device.

Another nice feature would be having analog inputs. Always seems strange to me that the PI didn't come with any.

A lot of people were worried about the specs of V1 (me included), I just saw on the product description that V2 will be using Snapdragon 625.  I think those specs should be more then enough for most people looking for a DIY board like this. 


Cant wait for the kickstarter. Good luck

  Are you sure? yes | no

Shree Kumar wrote 04/05/2018 at 04:44 point

@Lexie Dostal I guess hackaday doesn't like deep nesting for comments...

Thanks for your wishes. Coming soon to Kickstarter -- hopefully the week after next... Good to hear that the Snapdragon 625 works for you!

Analog inputs would be really nice to have. How many channels would be sufficient in your opinion ? 4 ? 

We could implement this by adding a discrete ADC chip on the expansion board.  I think the extra cost could be well worth it - in terms of allowing users to do stuff without adding an extra microcontroller just to get an analog input working.

  Are you sure? yes | no

Lexie Dostal wrote 04/06/2018 at 21:37 point

@Ahmad Shrif 8 would be amazing, but 4 would be the smallest amount that would still be useful IMO. I plan on adding analogs joysticks to my kite project, I'm fine using ADC to get more analog inputs if need be. But 4 would go a long way to making the base board more useful for everyone.

  Are you sure? yes | no

Shree Kumar wrote 04/07/2018 at 02:28 point

@Lexie Dostal  I think this requires some careful thought, then.  Looks like the beginning of a stretch goal to me :)

To get 4 analog inputs, you could easily use something like an adafruit ADS1015 ADC board(about $10).  To get 6 analog inputs, you could put an Arduino pro mini(again $10), and communicate with Kite over Serial pins. If you really need 8, you could use two of those ADS1015 boards.  All these boards are small - so you will end up with a great solution.  Do any of these solutions work for you ? I can work out an example & post it if need it, too!

  Are you sure? yes | no

Lexie Dostal wrote 04/07/2018 at 06:16 point

@Shree Kumar I can add some ADC my self, its not a problem. Was more bringing up the suggestion incase the chip you are using for the GPIO comes with some analog inputs already and could be broken out.

  Are you sure? yes | no

Shree Kumar wrote 04/07/2018 at 06:29 point

@Lexie Dostal Oh I see! great to hear that :) Now I see your point about the Pi in a new light.  I can't speak about the Pi, but I can offer some insights about my board.

You are right in the SoC having ADCs. However, exposing these to users can be problematic, for at-least a couple of reasons: 

   1. The usable voltage range is generally low - e.g. between 0-1.8 V. 

  2. Chances of damaging the SoC in unpredictable ways are high - when a user feeds a higher voltage by mistake. 

With an ADC on the expansion board, if something goes wrong, only the expansion board is impacted.  Less of a problem, as the expansion board is cheap, and something anyone can replicate easily.

Finally, platform ADCs are generally specialized, not well documented & may be built to suit very specific purposes.  An off-the-shelf ADC can easily outperform the internal one, in a very safe, well defined manner. 

  Are you sure? yes | no

Anool Mahidharia wrote 03/09/2018 at 06:41 point

I had a good opportunity to seen these devices up close in Bangalore during a meetup with @Shree Kumar. The design is fantastic and the modularity is something all of us hackers would love to have. This is the Google Ara beater phone we've all been waiting for. Can't wait.

  Are you sure? yes | no

Shree Kumar wrote 03/09/2018 at 13:05 point

Thanks a lot, Anool.  Always a pleasure meeting you! Very soon we are coming.  I need to update the page too - caught up making video and plans.  More updates surely next week!

  Are you sure? yes | no

Tillo wrote 02/18/2018 at 20:20 point

That's lit AF....

  Are you sure? yes | no

Shree Kumar wrote 02/19/2018 at 04:12 point

Thanks very much @Tillo !

  Are you sure? yes | no

brtnst wrote 02/09/2018 at 10:10 point

Wow, this is a very cool device! Do you use it as your everyday smartphone? What is the battery life? Do you have any estimations on how much it will cost? Can it run something other than android? (some normal linux distro with xorg?)

  Are you sure? yes | no

Shree Kumar wrote 02/09/2018 at 10:38 point

Thanks! I have used it as an everyday smartphone for about a month.  Battery life is about as good as a consumer phone.

We are planning to put this up on Kickstarter soon.  If that interests you, then please subscribe for updates at our website http://www.kiteboard.io/contact . Also, watch out for an update I will make later today, on this page. I am quite sure you will like that!

Yes, it can run Linux... like your SDA project. I am catching up on a lot of documentation. Will get to that - hopefully next week.

  Are you sure? yes | no

Sourabh S Nath wrote 01/31/2018 at 03:14 point

Why is it running an older version of Android? If it isn't powerful enough to handle it could you try Android Go? 

  Are you sure? yes | no

Shree Kumar wrote 01/31/2018 at 04:26 point

The phone can already run Android N (with somewhat lower performance - N is RAM hungry).  Our demos are running on Android L at the moment.

A bigger reason, though, is that we are putting all our efforts towards our concept of modularity - interfacing various types of hardware, finding good use cases, making demos, spreading the word, and getting feedback. That's why the older version of Android.  

However, we do understand the value of upgrades. We are planning to address this in time for our Kickstarter campaign. If you're interested in that, please sign up at http://www.kiteboard.io/contact !

  Are you sure? yes | no

Stuart Longland wrote 01/29/2018 at 10:39 point

Have you considered support for the 850MHz band?  I think Telstra (here in Australia) mainly uses that band.
I have a ZTE T83 which, whilst okay, I'm fed up with ZTE's lack of support for the device… completely ignoring its pirated OS.  The thought of having a nearly fully open phone with a SMA connection for an external antenna (there are places about 30km from Brisbane that have pathetic mobile coverage) is a real winner, but it counts for nought if the device can't connect to the bands the local networks use here.

  Are you sure? yes | no

Shree Kumar wrote 01/29/2018 at 10:58 point

Yes, we do support the 850 MHz band - LTE Band 5.  Do checkout the gallery for a picture of the signal receive strength with the SMA connector and external antenna. Just for reference : the LTE antenna in that picture is http://www.taoglas.com/product/tg-08-cellulargpsglonass-beidou-monopole-antenna-2/

  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