Happy Prototyping powered by Android

Similar projects worth following
With LabDroid you can directly reuse the hardware and software components of your Android device for your own goals.

A simple visual programming environment will help you to tackle goals like:
* learn coding (supported with real feedback/data)
* gather measurement data
* develop new algorithm
* boost your project (arduino, mindstorm, rpi, ...)

LabDroid provides an easy to use graphical interface which gives you direct access to all* hardware and software features of your Android device. By using your Android device instead of embedded components you can achieve several benefits:

▸ save money (don't buy components your phone has)
▸ spare time (just implement, no setup requred)
▸ be green (reuse instead of buy)

Let us just think about what you have to do, if you would like to add an IMU to your project. 

For an embedded solution you need to find a matching chip, order it, wait for the delivery, read the manual and configure many registers correctly. With LabDroid you can directly start to use the inbuild IMU of your phone. Just press install, launch your browser and start your implementation through an easy to use GUI.

Don't be shy and join the free beta today!

Currently supported features:
    ▸ Accelerometer
    ▸ GPS
    ▸ Gyroscope
    ▸ Light sensor
    ▸ Magnetometer
    ▸ NFC
    ▸ Proximity sensor
    ▸ Vibrator
    ▸ Script
    ▸ Text-To-Speech
    ▸ Bluetooth Client
    ▸ Http Client
    ▸ WebSocket Server

  • 1 × Android Device (8.0+)

  • Update

    HerrHerklotz07/01/2020 at 20:49 0 comments

    Okay I will put the source on GitHub:

    If I have time I will do a YouTube Video to introduce new users to LabDroid. I think the dice will be a good project for this. :))

  • A dice with LabDroid

    HerrHerklotz06/30/2020 at 21:17 0 comments

    Today I did a simple dice with LabDroid:

    function getRandom(max) {
      return 1+Math.floor(Math.random() * Math.floor(max))
    let force = 0.0
    let rolled = ""
    while(true) {
        const accel = $in(0)
        force += Math.abs(accel.x) + Math.abs(accel.y)
        if (force > 100.0) // Keep the dice on the floor
            force = 90.0
        else if (force > 30.0) {
            force *= 0.6
            rolled += getRandom(6) + " "
        else if (force > 10) // The dice wiggles out
            force *= 0.6 
        else {
            if (rolled.length > 0) {
                $log(rolled + "*" + getRandom(6) + "*")
                rolled = ""
                $sleep(1000) // Give the dice some time to cool down
            force = 0.0
    And the output:

    Still thinking about how I could share some example projects. Hackaday, Instructable, YouTube or Github?! :/

    Any other recommendations? :D

  • 20200628.1

    HerrHerklotz06/28/2020 at 21:33 0 comments

    New version is on the way.

    This time I focused on the UX : more shortcuts & feedback (toasts)

    ps. just found a small mistake: To delete a Node you also need to press CTRL + D (not DEL)

  • Thx for 100 followers :))

    HerrHerklotz06/21/2020 at 08:58 0 comments

    Here is a quick and dirty teaser for my next goal: Building a RC car with LabDroid.

    First step: Using the phone as a controller (GUI & rotation sensor)

    LabDroid -> BT -> Arduino

    Second step: Place the phone on the car and use the sensors to track the movements.

    Tablet -> WIFI -> LabDroid -> USB -> Arduino

  • update

    HerrHerklotz06/18/2020 at 20:31 0 comments

    A small update for #LabDroid is on the way.

    I added three new sensors: Pressure, Relative Humidity and Temperature!

    Note: If your device doesn't support one of the sensors you will never receive any data from the Data channel.

  • update

    HerrHerklotz06/16/2020 at 21:10 0 comments

    Small update is on the way to your devices.

    Improved the performance, design and fixed some issues with the examples.

  • Update

    HerrHerklotz06/13/2020 at 11:43 0 comments

    Nice 60+ followers. Thanks <3

    I was quite busy the last weeks with my normal job. We installed a robot in Luzern. :)

    I'm still fine tuning the new IDE design for the next release. It will include a basic editor that enable you to write your own interfaces with HTML/CSS/JS. 

  • FYI

    HerrHerklotz05/30/2020 at 10:14 0 comments

    Found a bug in the SensorFusion UI. It's not able to connect unless your phone IP is Sorry for that. :X

    Will use the long weekend to add one missing part to LabDroid. Stay tuned!

    p.s. Looks like a have another bug related to Android 9.0. Because I'm using a Android 10.0 device and the emulator with 9.0 works fine for me it would be lovely if you can submit the full crash report. Thanks for your help.

  • Documentation Uodate

    HerrHerklotz05/27/2020 at 19:58 0 comments

    Today I improved the documentation a bit. 

    Some parts are still missing. Hope to finish it tomorrow.


  • 20200524.0

    HerrHerklotz05/24/2020 at 14:23 0 comments

    Next version is published including the new Sensor Fusion example.

View all 19 project logs

Enjoy this project?



ve3mic wrote 05/05/2020 at 01:54 point

Thank you for your efforts and for the quick reply.  I will be using a Samsung Galaxy S9+

  Are you sure? yes | no

ve3mic wrote 05/03/2020 at 22:29 point

Tried to locate the LabDroid app on the Google Play Store.  No luck :(

  Are you sure? yes | no

HerrHerklotz wrote 05/04/2020 at 18:04 point

Hey for some reason some countries was deactivated. Now it's enabled for the whole world.Beside of that LabDroid requires an Android 8.0+ device. Can I ask you which one you use?

And thank you for your interest. :))

ps. still working on the new version :X

  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