Cheepit: Sparrow (dev boards for smartphones)

The "Cheepit" project deals with the development of web based services for programming AVR microcontrollers with smartpones or tablets.

Similar projects worth following
Smartphones and tablets are starting to replace traditional PCs. In the nurseries of the new generation mobile devices are already widely used. Even in developing Countries mobile phones are found everywhere but not everybody has his own PC.
Is this a serious problem?
We live in a highly technical world but we refuse our youngsters (the next generation of computer scientists and electrical engineers) and many people in the world the chance to understand the technology that surrounds them. But are these devices suitable for development or electronic experiments? Try to write an App on a Smartphone. In the area of microcontrollers, the problem lies in the closed systems. Interfaces are available but not uniform and not readily accessible from the browser.
The "Cheepit" project deals with the development of web based services for programming AVR microcontrollers. The goal is the independence of inserted devices or operating systems and the minimization of existing barriers.

The Sparrow - a very small DIY Dev Board

The "Sparrow" is a cloud-based microcontroller system with an ATtiny13A. Programming is done via the stereo signal from the headphone jack of any mobile device.

The Hawk - Next Generation Prototype

How it works

Apps can be downloaded from the internet and directly uploaded to the controller using a browser that supports HTML5 AudioTags. If you want to develop your own programs there is an online assembler or an online C compiler.

The stereo signal represents the normal ISP-Interface. There is no bootloader.

Why use the audio jack?

Joint development and the community spirit stands in the foreground. No one should be excluded. With the advanced technology of the programming via the audio jack the integration with social networking is a breeze. Apps can easily be shared by Sound or simply be embedded into a video. In addition, there is no mobile device without a headphone output.

App Collection and Programming

There is a small App Collection with more than 60 Apps. (german)

Some cool things you can do with a Sparrow

Integrating RF LED Detector (How can I make the simplest possible RF receiver)

Development tools

The Cheepit Product Family

Several products are in advanced stages of development or in process of planing.

  1. The Sparrow - mini dev board with an ATtiny13a (prototype status)
  2. The Hawk - midi dev board with LCD and ATtiny261a (concept)
  3. The Nightingale - cheepit based ISP-Programmer (vision)
  4. The Hummingbird - dil breakout board with an audio jack (vision for a new concept: "hardware as an app")

Howto Online Assembler

The Online Assembler is a web service that compile and convert your programm in one step. The listing shows a simple blink example. For an easy entrance you can use an API with essential macros for digital Output, digital Input, delay, blink LEDs, uart, pwm, ...

How to build your own Sparrow - A Sparrow from the scrap

Normally the Cheepit Sparrow is a little PCB with an ATtiny13 microcontroller and a comparator LM339. But once you understand how it works you can build it much simpler. Just use some parts from the scrap. I found a piece of a wooden board that originated from a fruit box and some thumb tags to hold the parts. The battery is from an old mobile phone, much too weak to power the phone but doing well for the sparrow. I added a little bulb rating 6 V, 100 mA serving as a fuse. So everything is safe even in case if a short. The power switch is taken from an old toy. And the audio cable is from the scrap. All the other parts could be found in the junk box, four transistors BC548A, two LEDs, two momentary switches and a few resistors and capacitors. The most expensive part was the ATtiny13, less than one dollar?

On the right you can see the microcontroller with the two LEDs and switches. Left of the battery there is the little programming interface using four transistors. Its directly connected to the audio cable. And this is the circuit diagram.

The Tiny13 section with switches and LEDs equals the one in the original Sparrow. But the programing interface looks completely different. No special parts, only some transistors and resistors. All signals are inverted like with the Sparrow. When you use simple bipolar Transistors, you normally need more than 0.6 V to bring them into the conducting state. But here a bias of 0.6 V is made by the first transistor. So you need only small signals from the audio. The bias is even temperature compensated so it will work fine from Alaska to Africa. If you happen to have transistors with higher current gain like BC547B or BC547C you should use larger base resistors. The collector voltage should be close to VCC in the idle state.

One thing has to be noticed. The signal ground of the audio interface is different to the signal ground GND of the microcontroller. There is a voltage of 0.6 V between...

Read more »

  • 1 × LM339 SO14 SMD
  • 2 × BAT54-S, SOT23
  • 2 × 47 pF SMD
  • 5 × 100 nF SMD
  • 2 × 100 Ohm SMD (r0805)

View all 9 components

View all 14 project logs

Enjoy this project?



gevese4811 wrote 03/27/2021 at 13:57 point

Decent undertaking! Is the online IDE open source? Would be ideal to have this on a Raspberry Pi or something other low-power worker

  Are you sure? yes | no

peterlavelle wrote 06/11/2015 at 10:14 point

Very nice project! Is the online IDE open source? Would be nice to host this on a Raspberry Pi or something other low-power server

  Are you sure? yes | no

Thomas Baum wrote 06/22/2015 at 06:18 point

At the moment it isn't open source. The backend runs distributed on three server. A google app engine instance as gateway for the online Assembler. An other app engine instance for the hex-converter. And a linux server for the compiler (coupled  with a CGI-skript on a monkey web server). A Raspberry Pi solution for a single (or a few) user system? It can work.
Do you have a concrete use case?

  Are you sure? yes | no

peterlavelle wrote 06/22/2015 at 08:36 point

Use case would be for places with an unreliable internet connection. Was thinking of schools in developing countries, for example.

I wouldn't mind having a go at getting a Raspberry Pi image together to host the Assembler, hex converter and compiler.

  Are you sure? yes | no

Thomas Baum wrote 06/22/2015 at 10:27 point

A Pi image is a great idea. I'll give it a try. I call again.

  Are you sure? yes | no

Sophi Kravitz wrote 04/07/2015 at 16:59 point

Hello! If this is an entry for the 2015HackadayPrize, please tag it that way so you're entered. ~ Sophi

  Are you sure? yes | no

Thomas Baum wrote 04/08/2015 at 10:32 point

... already done. Thank you very much.

  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