Close

Does this project spark your interest?

Become a member to follow this project and don't miss any updates

Open Source Science Tricorder

Science in your hand. A pocket-sized instrument capable of visualizing and exploring the world around you.

23.1k 46 398 315

This project was created on 06/07/2014 and last updated 19 hours ago.

Description
It is my deep belief that knowledge brings about positive change.

We could live in a world where the same instrument that can show a child how much chlorophyll is in a leaf could also show how them much pollution is in the air around us, or given off by one's car. As an educator and a researcher, I feel that if people could easily discover things about their worlds that were also important social topics, that they would then make positive social choices, like reducing their emissions, or petitioning for cleaner industry in their communities.

By having access to general inexpensive sensing tools, people can learn about healthy leaves, clean air, clouds and the water cycle, energy efficient homes — and visualize abstract concepts like spectra or magnetism.

As a tool for exploration, we can discover things around us that we don't already know. And that's what it's about. Little discoveries, everywhere.
Details

Semifinals Prototype Video

Concept Video

Hardware and System Design

The Arducorder Mini is an Arduino-compatible handheld sensing device, and the next iteration of my open source science tricorder-like device project that's designed to be easy to use, have a large array of sensors, and easy to share sensing discoveries. The Arducorder Mini is designed to foster a community of open source users and development, and is ChipKit MAX32 compatible, which is a port of the Arduino platform to the much more powerful PIC32 family, and makes use of a PIC32MX795F512L with 128k of RAM, 512k of flash, a zippy 80Mhz processing speed, and a fantastic set of peripherals for interfacing to sensors.

The current prototype is designed to use a 1.5" OLED with 128x128 pixels and 16-bit colour, a touch interface, and connectors for 5 modular sensor boards that each contain several sensors. The sensor boards are designed to be interchangeable and upgradable, so that a large number of configurations are possible with different sensing capabilities and price points.

While the Arducorder Mini is being designed with a wide array of sensing capabilities off-the-shelf, it's also designed to be easy for folks to tinker with and upgrade. Accessibility is a central goal of the project -- If you're familiar with Eagle CAD and have ever made an Arduino shield, it should be easy to design your own sensor board. Using OSHPark and Digikey, the parts cost for a new sensor board (PCB and header, not including sensors) is about $5, which is even less than most protoboards!

Sensing Capabilities

The current prototype has been designed to include the following sensing capabilities:

Atmospheric Sensors

  • Ambient Temperature and Humidity: Measurement Specialties HTU21D
  • Ambient Pressure: Bosch Sensortec BMP180
  • Multi-gas sensor: SGX-Sensortech MICS-6814

Electromagnetic Sensors

  • 3-Axis Magnetometer: Honeywell HMC5883L
  • Lightning sensor: AMS AS3935
  • X-ray and Gamma Ray Detector: Radiation Watch Type 5
  • Low-resolution thermal camera: Melexis MLX90620 16×4
  • Home-built linear polarimeter: 2x TAOS TSL2561
  • Colorimeter: TAOS TCS3472
  • UV: Silicon Labs Si1145
  • Spectrometer: Hamamatsu C12666MA micro-spectrometer, with NeoPixel light source

Spatial Sensors

  • Inertial Measurement Unit: Invensense MPU-9150 9-axis (3-axis accelerometer, gyro, and magnetometer)

Other Sensors

  • Microphone: Analog Devices ADMP401

Check out the project logs for the current build progress, and stay tuned!

GitHub Repository and Source Files

The source files are available on the Arducorder Mini GitHub Repository as the development progresses. The hardware is licensed under Creative Commons By-Attribution Share-Alike 4.0 International, and the firmware and libraries are available under various open licenses. Please see the licenses file included with the source for more information.

Contributions

In addition to the device, this project has developed open source Arduino-compatible libraries for a light weight live tile based graphical user interface, supporting tools, open libraries for new sensors including the Radiation Watch Type 5 and Hamamatsu micro spectrometer, additions to the Adafruit MPR121 library to support capacitive touch wheels, and a port of the Adafruit CC3000 WiFi module to the Chipkit MAX32 platform.

Project Log Navigation

The project logs help tell the story of the project's development, from concept through assembly and revisions:

1: An Introduction and Background

2: Concept and Industrial Design

3: Board Layout Part 1

4: Board Layout Part 2: Motherboard

5: Board Layout Part 3: Lots of boards!

6: Beginning Motherboard Prototype Assembly

7: Assembling the First Sensor Boards

8: Sensor Board Mega-update

9: Capacitive Touch Wheel

10: Wifi Module Update

11: Spectrometer Board Design, and Beginning User Interface

12: Tile-based User Interface, and Spectrometer Board

13: Hardware Revisions

Components
  • 1 × PIC32MX795F512 Microprocessors, Microcontroller
  • 1 × HTU21D Sensors / Temperature, Thermal
  • 1 × BMP180 Sensors / Pressure
  • 1 × MICS6814 Sensors / Gas
  • 1 × HMC5883L Sensors / Hall Effect, Magnetic
  • 1 × AS3935 Sensors / Special Functions
  • 1 × Radiation Watch Type 5 Radiation Sensor
  • 1 × TSL2561 Sensors / Ambient Light
  • 1 × SI1145 UV Sensor
  • 1 × Hamamatsu C12666MA Micro Spectrometer

See all components

Project logs
  • Hardware Revisions -- Preparing for Release

    12 days ago • 3 comments

    After a marathon programming session, the different modules of the software came together wonderfully for the prototype video nearly two weeks ago -- it's been very exciting to see the Arducorder Mini hardware coupled with an attractive and intuitive user interface:


    Hardware Errata

    I tend to think of first prototypes as a sketch -- in hardware -- that's as close to the final project as time and experience afford, but with the knowledge that for a sufficiently complex project there will always be an errata, or list of items that need to be modified or corrected in the next revision. The idea here is to make our mistakes cheaply so that everything has the best possible chance of working the first time -- and to ensure that we have enough wiggle room to tinker with any critical bits that don't work the first time, so we can quickly narrow down any design changes for the next revision.

    With PCB turn times taking about two weeks, my recent focus has been revising the few issues that popped up when validating the hardware, and sending these new boards off to be made. It's my hope that if everything validates fine, that these boards will be the first official release candidate for the Arducorder Mini.

    Motherboard

    I confess that when I designed most of the first revision boards, I failed to include mount points on the motherboard and capacitive touch board that would allow the whole thing to be placed in an enclosure! This was a bit of an issue, since the motherboard is only 2-layers, and so densely populated that I had to increase the size a small amount (4mm in both width and height) to accommodate four M2 mounting holes. If I was willing to increase the PCB specifications to 4-layers the board would have been significantly less dense and made mounting much easier, but I'd like to keep the specifications as low as possible so that the boards can be made inexpensively, and the open source community can easily modify the designs with the free version of Eagle CAD. I remember years ago reading that when Stephen Hawking was writing A Brief History of Time, his publisher told him that his readership would be halved for every equation he placed in the book. I feel the same about open hardware -- for every barrier I place on people easily modifying the hardware -- expensive software, 4 layer boards, etc -- that it will reduce the reach by at least an order of magnitude. So I'm trying to keep it simple and accessible.

    Other than mechanical considerations -- the four mounting points, and switching to a connector for the capacitive touch board itself with mounting holes -- there are a few minor schematic changes for the motherboard:

    • Added I2C pullup resistors on motherboard
    • Fixed VCC/GND pin swap on two sets of the PIC32 pins
    • The OLED 13V booster VIN is now sourced from the 3.3V regulator instead of the battery. When sourced from the battery and the booster was disabled, the OLED 13V line would be equal to VBAT, causing a few pixels to stay on, and draining the battery a bit.

    These are largely minor changes, and the technical challenge is largely in rerouting big chunks of an existing board for the modifications.

    The capacitive touch wheel board also has largely mechanical modifications to allow it to securely mate with the motherboard, and to mount in a case. The parts have all been moved to the underside of the board (except for the two pushbuttons), leaving a flat surface for some acrylic to mate with for the touch wheel. I'm hoping to have the opportunity to camp out infront of the laser cutter at Xerocraft one evening in the next week or so to design an attractive case with the hardware in hand.

    To help the indicator LEDs for battery charging and programming to shine through to the front face of the enclosure, I've added the small notch along the length of the bottom of the capacitive touch board. Inventables has some back-surface laser-engravable acrylic that looks very interesting, so I've ordered a few pieces and I'm excited to see what some...

    Read more »

  • Tile-based User Interface, and Spectrometer Board!

    a month ago • 1 comment

    User Interface Design

    Visualization and user interface design is a hobby that I really enjoy, and I've been lucky enough to have friends and colleagues who are usability and visualization folks that I've been able to periodically soak information up from.  The open source science tricorders present a really interesting UI problem -- where most mobile devices have at most a few different sensing modalities, here we have 12 different physical sensors, each of which measures between 1 and 3 different things!  What's more, while some of these measurements are single values (like temperature, say 24C), others are vector values (like the three separate 3-axis vectors coming from the MPU9150 -- one vector for acceleration, rotation, and magnetic field strength, giving nine values total, from a single sensor).  In the extreme case, the spectrometer returns a vector of 256 values. That's a lot of data!  I'm really not aware of any other device that comes close to having so many different kinds of sensing data pouring into it constantly, and while this is very exciting, it's also challenging -- we want folks to intuitively browse and navigate through that data very quickly. 

    I've spent the past few weeks researching design concepts for user interfaces by browsing popular design websites, and talking to some friends, and I think I've settled on a very intuitive, attractive, and useful interface design.  I'll confess that I've been working harder, not smarter about this in recent years -- I'd try and design very complicated things that looked like how other people had done mobile devices and visualization (like android phones), which is a fantastic amount of work for a single human being.  Starting this Arducorder mini project almost 4 months ago, and keeping it attractive and capable but tractable has finally helped me work smarter about this, and figure out a lightweight, usable and intuitive interface concept. 

    I like the idea of live tiles.  When done well, it reminds me of Danny Hillis's idea (30 years ago) about maximizing the amount of computing silicon active on a processor at any one time, but attractively applied to data visualization.  Instead of having icons that just take up space and give you a name, here you have tiles that display a live updating value.  This is powerful from a usability perspective -- instead of having to enter each application to obtain this information (which can consume a lot of time), the most important information is available at a glance from many applications.  While this has largely been applied to communication (e.g. messaging), web (weather/news), and I'm sure sensing applications, here we're going to construct an interface  made almost entirely of sensor data. 

    The really interesting aspect (if you're a data abstraction nerd, like me) is that if we consider only this special case -- visualizing sensor data through tiles -- then we can formulate the software engineering aspect of this very elegantly.  If each tile has a sensor data buffer behind it, then we can browse it's most recent data on the top of the tile, then activate the tile to display additional (historical) data and different visualizations.  If we abstract the sensor data buffer into a few different types, like continuous streaming data (from something like a temperature sensor or an accelerometer) and discretely sampled data (from something like a lightning sensor, that only activates when an event occurs), then we can get rid of the idea of an application.  The design concept becomes browsing sensor data buffers first through a high-level tile interface, and then activating an individual buffer and using a suite of generic visualization tools to better explore it. 

    Interface Implementation

    All of the software engineering aside, what the user sees is very attractive -- tiles with live data that they can browse through very quickly with...

    Read more »

  • Spectrometer Board Design, and Beginning User Interface

    2 months ago • 0 comments

    A quick update with lots of progress designing the spectrometer (and thermal camera) board, attaching the radiation sensor board, and beginning to work on the low-level routines for the user interface!

    Fast and Efficient Bitmap Rendering

    Now that much of the hardware is in good shape (or being fabbed), I've been working on the low-level software and APIs that would support building an intuitive and attractive user interface. 

    A bit of background -- from my hobby of indie game development in undergrad and participating in the Ludum Dare 48-hour game competitions (a really fun experience!), I've picked up that in a desktop system (and some embedded systems), a graphical user interface is often functionally implemented as a large collection of bitmaps stacked atop each other with transparent layers.  This has the benefit of being able to make large changes to the user interface through editing configuration files that describe which bitmap corresponds to which background or widget or font (instead of recompiling code), and also allows the user interface artist to easily use whatever tools they're most comfortable illustrating in to rapidly iterate without having to use middleware, or (even worse) be constrained to building an interface entirely out of low-level graphics primitives like squares, ellipses, and triangles.

    This is the approach that I'd initially planned on using, but I'd discovered about a month ago when running a display verification test that the ChipKit SD card library has a read speed of around 100k/sec, which puts the time to load and display a bitmap on the order of about one second -- far too slow for an interface.  There are faster libraries like sdfat, but these required more than a solid evening of porting, and at some point you have to put these on the wishlist, accept the constraints, and exploit the benefits of your existing system while architecting it in such a way that you could drop more advanced functionality in later with a minimum of effort. 

    Posterizer Tool

    While loading bitmaps from an SD card is currently slow, the PIC32MX processor that the Chipkit Max32 uses does have 512k of flash memory that (in addition to code) can store bitmaps that can be loaded very quickly.  A full screen (128x128) 16-bit (2bpp) bitmap takes 32k of memory, so we can't fit very many in memory, but if we manage our resources and store things efficiently, we should have plenty of space for backgrounds and widgets and icons in ~128k or so. 

    One way of compressing bitmaps is to reduce the colour depth -- if we can reduce an image from 16-bit colour (64k colours) to 8-bit (256 colours) or 4-bit colour (16 colours), then we can store the image in half to a quarter of the space.  The trick is selecting a smaller colour palette so that the final "posterized" image still looks very good. 

    There are automated algorithms to do this, but they often give non-ideal results, and I want this thing to look /good/.  I've been looking at user interface concept art the last few days to get ideas, and I'd had the idea of having a main menu that showcases a space theme by having a scrolling background under an icon-based main menu with multiple pages of icons, similar to Android.  I grabbed a copy of NASA's amazing public "earth at night" photograph, downsampled it to 256x128, and used manual posterizing tool I quickly put together in Processing to reduce the colour depth to 4-bit, and store the image as a static array in flash.  Despite being 256x128, the image only uses 16k of flash, and the manual conversion (above) is so good compared to an automated algorithm that I would never have known it was poserized if I didn't do it myself!  It also scrolls back and forth at about 50fps, which looks really impressive.  While I'm still deciding the final user interface concept, it was a good test, and a useful tool to compress the graphic assets into flash so that they're...

    Read more »

View all 13 project logs

Discussions

relias36 wrote 7 days ago null point

Hello Peter, i just joined this site and found your project it looks very interesting. I'm a mechanical engineering student so i do not know much about making and designing computer hardware but I am still interested in trying to make one of these devices. Is there any way that i could use your board designs and have them built or could i possibly buy one from you?

Are you sure? [yes] / [no]

Robert Hoffman wrote 8 days ago null point

do you plan on trying to mass produce it?

Are you sure? [yes] / [no]

David wrote 9 days ago null point

Congrats on making the Top 5!

BTW, I'm really liking that Arduino-compatible Hamamatsu Spectrophotometer sensor. After the competition, if there any chance of seeing its code separated into a new Arduino Library?

Are you sure? [yes] / [no]

peter jansen wrote 8 days ago null point

Thanks David! It really is a beautiful little instrument. The driver is already standalone ( https://github.com/tricorderproject/arducordermini/blob/master/firmware/test2k/SensorSpecHamamatsu.cpp / h), and includes some example code at the top, with the exception that one of the methods does resample and export the data into a SensorBuffer() (a circular buffer storage class used by the Arducorder mini for efficiently storing data and graphing it). You could include this too, or just comment out that method and access the data directly.

I have standalone test beds that I use to write and validate the drivers before incorporating them into the main Arducorder Mini firmware (it takes a few minutes to compile and upload, and so the testbeds get that down to ~10 seconds), and either just before or shortly after the competition I'll try to package these as separate Arduino Libaries!

Are you sure? [yes] / [no]

Ryan Shill wrote 9 days ago null point

You should throw GPS on board for the Mark 6!

Are you sure? [yes] / [no]

peter jansen wrote 8 days ago null point

I've been thinking about this too. I removed it because it's large and everyone
carries around phones that are very good at map applications right now, but I
think it's important enough to warrant coming back. There isn't a lot of sensor
real estate left, but I have been thinking of replacing the microphone with the
Venus638, or even sneaking it on the back of the capacitive touch sensor board.
I designed something with the 638 in it last year, but I used a very small
antenna (and don't fully appreciate RF design, I work with much shorter
wavelengths), so maybe someone from the community with GPS experience can lend a
hand after things are less busy in a few weeks! The sensor boards are meant to
be part of an ecosystem that's easily modified or added to by the open source
community, with a minimum of effort. :)

Are you sure? [yes] / [no]

vipersan wrote 7 days ago null point

I think EVA-7M from u-blox is bit smaller, has higher sensitivity and consume less power.

Are you sure? [yes] / [no]

peter jansen wrote 7 days ago null point

Thanks! That looks like a wonderful chip -- 3.3V @ < 20ma draw while running, and only 7x7mm! Unfortunately it doesn't look like it's regular stock at any of the major distributors, and having to go through the manufacturer usually means a minimum order quantity and long lead times. I'm trying to keep it as easy for folks to source parts and build as I can -- hopefully a major distributor starts carrying these or a similar part!

Are you sure? [yes] / [no]

n49o7 wrote 9 days ago null point

This is truly from the future.

Are you sure? [yes] / [no]

peter jansen wrote 8 days ago null point

One of the folks at Ars Technica once claimed in an article that I might be a time traveller from the future borrowing Berlinghoff Rasmussen's business model... I had no idea who it was, so we looked it up, and it made the lab mates and I laugh *so hard*. http://en.memory-alpha.org/wiki/Berlinghoff_Rasmussen

Are you sure? [yes] / [no]

vipersan wrote 9 days ago null point

Few suggestions:
- upgrade MLX90620 thermal camera to Flir Lepton,
- add 2-3 Mpix camera,
- HTU21D and BMP180 replace with BME280 (it's not yet in production, but maybe you can get engineering sample),
- add ALS (ambient light sensor) - IR / IR+visible sensor eg. MAX44009,
- add distance measurement feature.

Are you sure? [yes] / [no]

peter jansen wrote 8 days ago null point

Thanks. The challenge with most of these is a combination of size, cost, data, and tractability, and this is largely a device that's about balance. The standard configuration tries to strike a very good balance of sensor coverage with cost, while allowing folks who want extra functionality to design their own boards and modify the software very quickly. I would love to see someone design a small camera with a footprint on the order of 1-2cm sq with an integrated framebuffer that could be accessed over SPI. Similarly I'd love to see a small distance sensor with a good range, but right now many distance sensors have a large volume. Even the small maxbotics ultrasonic rangefinders would take up nearly the entire volume of the spectrometer/thermal camera board. That being said, it would take an hour of work to put together a sensor board that contained only the maxsonar, if one wasn't interested in the spectrometer/thermal camera. Eventually someone will make a very small distance sensor, and I would love to place it on the Arducorder Mini, or a future device.

Are you sure? [yes] / [no]

Jordatech wrote 10 days ago null point

Wow What An Awesome Open Source Instrumentation Project! Thank you for making this project so nicely documented! What type of design modifications and distribution costs would this project be looking at for a "3rd world" implementation?

Are you sure? [yes] / [no]

reciprocum wrote 21 days ago null point

This project is just perfect!
I wish all the hardware can be made available in a kit form as soon as possible.
Willing to support it right away if presented at kickstarter platform.

Are you sure? [yes] / [no]

Marcus Vinter wrote 16 days ago null point

I can't agree with you more.

Are you sure? [yes] / [no]

Kojote wrote 14 days ago null point

Jupp, same here

Are you sure? [yes] / [no]

Ronny wrote 22 days ago null point

Hey guys. What do you expect when the development process goes to rollout for public? I really would like to have that personally and in our store here in Switzerland.

Are you sure? [yes] / [no]

peter jansen wrote 19 days ago null point

Hopefully soon!

Are you sure? [yes] / [no]

Andrej Mosat wrote a month ago null point

Hi Peter, excellent project.
I was reading your questions on mini spectrometer page. One of them was: how to better connect the grating to the enclosure. I use double-sided automotive 3M foam tape, which just works. Maybe you already use the same system, but I could not find how you actually do it. You would also like to use 4mm optics, I might have some suggestions, but again, could not find exactly what the design requires, like the focal length. What is your workflow in programming / debugging / engineering the PIC32 ? It seems like Chipkit Max32 with the modified Arduino / PIC32 platform. Have you found a better diffraction grating? I have an answer to manufacturing of precise, cheap optical slits. What would be the quickest & plug-n-play way to obtain and test your mini spectrometer? Thank you!

Are you sure? [yes] / [no]

peter jansen wrote 19 days ago null point

Hi Andrej, the transmission for the open mini spectrometer is small enough that it just sits in place, and tends to stay (but you're absolutely right, in a real environment you'd want to use a dab of glue or something to keep it there). The open mini spectrometer is basically a pinhole camera, with the transmission grating at the end of a deep, wide slit, so there currently are no relay optics. This, of course, is non-ideal. If you'd like to experiment with making a better optical head, then the sources files are available at the link above -- I use oshpark for boards, and the parts are available at digikey. Unfortunately if you're not comfortable with soldering surface mount parts, there's currently nowhere that the boards are currently off-the-shelf. Maybe someone will post them on tindie!

Are you sure? [yes] / [no]

Steve Pomeroy (xxv) wrote a month ago null point

Sweet project. Have you considered using a pre-made GUI/OS layer? You could build on top of things like Linux, QT, Android, etc. and save a ton of dev time.

I suspect one of the things that really make a project like this shine are the way the data are interpreted and visualized, which would be pretty hard to do with an entirely hand-rolled GUI layer. Cheers!

Are you sure? [yes] / [no]

peter jansen wrote a month ago null point

Thanks Steve. Microcontrollers are very different than desktops, and have much more modest computational resources, so they're not usually able to run OS's, and the few that they can run are a little complicated to code for. The PIC32MX I'm using has the most RAM of almost any commodity microcontroller (128k), which is barely enough for a display backbuffer and some rolling buffers for the sensor data. :)

Developing an attractive and intuitive GUI from nothing but a pointer to video memory is a bit of work, but it's also a lot of fun, and very rewarding. Architecting it well in this case also means that folks will be able to customize it with very little background knowledge, and (more generally) that Arduino/ChipKit folks will have a lightweight GUI library that they can use for completely different projects.

Over the past few weeks I've been browsing through a lot of design concepts for ideas, and designed something like a Live Tile interface that's controlled through the scroll wheel. It's very intuitive, and looks beautiful, and feels very good on the actual device. There's still a bit of work to do (and the deadline is coming up), but I'll post pictures shortly! Stay tuned!

Are you sure? [yes] / [no]

justin.m.riddle wrote 2 months ago null point

This looks freaking incredible. When the first round is ready for purchase I'll be first in line. My dad is a superintendent of a golf course, and could use something like this to detect soil and water chemistry, weather conditions, and we could even build a sensor that interfaces with his irrigation system. So many possibilities! Good work, I'm very impressed. I'm guessing this is going to get you to space.

Are you sure? [yes] / [no]

peter jansen wrote 2 months ago null point

Thanks for your kind note. I hope you and your dad will get to have all sorts of fun with one, I'd love to see how it works out for that environmental monitoring task!

Are you sure? [yes] / [no]

Jasmine wrote 2 months ago null point

Hello Peter,

there are a few small things you can do to your documentation give your project the best chance of going through to the next round of The Hackaday Prize.

By August 20th you must have the following:
- A video less than 2 minutes long describing your project. I see you have a couple of videos. Put a link to the one you want our judges to watch most in the external links section.
- At least 4 Project Logs. You have this covered.
- A system design document. Is it this image https://static.hackaday.io/images/5974661405800489211.jpg?
- Links to code repositories, and remember to mention any licenses or permissions needed for your project. For example, if you are using software libraries you need to document that information. You can highlight these in the project details or external links section.

Thanks for entering. Good luck.
Jasmine

Are you sure? [yes] / [no]

peter jansen wrote 2 months ago null point

Thanks Jasmine, I think I've put everything up today, including the updated video, the system design diagram, and uploaded the current source snapshotto the GitHub repository!

Are you sure? [yes] / [no]

James wrote 2 months ago null point

maybe in a future version you could add a full-color lcd, and an infrared camera for monitoring heat, and plant chlorophyl levels.

Are you sure? [yes] / [no]

peter jansen wrote 2 months ago null point

Hi James, the OLED is a beautiful full 16-bit colour (the graphical user interface is just unfinished), there will be a low-resolution thermal camera, and the spectrometer may be able to monitor chlorophyl levels. :)

Are you sure? [yes] / [no]

[deleted]

[this comment has been deleted]

peter jansen wrote 3 months ago null point

I mean, you're not wrong -- if you don't value science based on observation and measurement, science education, or being generally interested in learning more about the world around you, then yes, this device will be of little use to you.

If you've taken high school chemistry or physics, you should know about measurement error, and that every measurement from every device has some accuracy and repeatability associated with it -- for example, 25C +/- 0.1C. This is a fundamental property of all sensors (electrical engineering), or the nature of measurement (physics), and is true of a one dollar sensor or a million-dollar instrument. That being said, nearly all of the sensors have been chosen to be particularly accurate, especially for their price point. I think there was an example floating around where the atmospheric pressure sensors are so accurate that, under ideal conditions, you could nearly measure someones height just by measuring the atmospheric pressure at their feet and head, and subtracting the two altitudes you infer from those pressures.

As to why I might be a trustworthy source on sensing and science education, Yes -- I do have a PhD, and have spent the last decade choosing to do academic research (for much less than one makes in industry), teaching, and donating my evenings to projects that help make it easier for folks to learn science -- because I love it, and think it does a world of good. But, as always, you should critically evaluate any source (including me) before you trust what they say.

All that being said, if (after taking time to sleep on it), you still don't understand why folks might find this project exciting, that's okay too. But now that you've (repeatedly) voiced your very strong opinion, I think there are lots of more productive things we can all do with our time.
Best wishes.

Are you sure? [yes] / [no]

[deleted]

[this comment has been deleted]

peter jansen wrote 3 months ago null point

I'm not sure what you mean -- the open source science tricorders I've been building for 7 years are clearly very real devices. In the case of this one, the Arducorder Mini, when complete it will have about a dozen different sensing modalities. It's basically a multitool for science, like a swiss army knife. So maybe your question becomes, where would you use a thermal camera? Where would you want to detect radiation? Where would you want to characterize the atmospheric conditions of an environment, or sense potentially harmful gasses? Where would you want to take the spectra of an object? And so on...

Are you sure? [yes] / [no]

Piotr S wrote 3 months ago null point

I fully support your Project.
Few things from my Point of View:
The Case Design should be more Handheld like an Remote
And when it comes to remotes. What about an IR Transmitter/Receiver Package?

Are you sure? [yes] / [no]

peter jansen wrote 3 months ago null point

Hi Piotr, the industrial design shows that the Arducorder Mini is handheld, like a phone or MP3 player?
Could you make a scientific use case for an IR transmitter/receiver? And what wavelength?

Are you sure? [yes] / [no]

Piotr S wrote 3 months ago null point

I was considering that IR waves are everywhere.
And you could use it to read signals from Remotes and other IR driven Devices.
With the Transmitter you could even copy those Signals.
Greetings and thanks for the Questions :)

Are you sure? [yes] / [no]

Fredwordsplat wrote 3 months ago null point

I Recommend A Voltage Detector With a Detachable Housing and Wireless InfraRed Communications. Like Doctor Bashir uses to Scan Humanoid lifeforms For Injurys.
Image of Scanner :


http://2.bp.blogspot.com/-NP06Lgv6zyA/UFAflMA_WhI/AAAAAAAADBk/LMVzn_71k3c/s1600/Improved+Star+Trek+Medical+Tricorder+Papercraft.jpg

Are you sure? [yes] / [no]

Fredwordsplat wrote 3 months ago null point

I Love The Thought of a Tricorder. I am both a programmer and a Trekker (Star Trek Super Fan!!). I Support This To The Max!!! Epic :)

Are you sure? [yes] / [no]

matt venn wrote 3 months ago null point

super inspiring!

Are you sure? [yes] / [no]

Gasump wrote 3 months ago null point

I agree with jixijenga; a modular sensor system would be a good idea, that way people can adapt the tricorder to their personal needs. For example - people living near a manufacturing plant that 'smells bad'. They could test for various gases/chemicals that could be harmful to their health. While I don't fear opening up and swapping components, I also think the plug in 'accessory' sensor block is a good idea. There is not much commonality in gas/chemical sensors formats so it would be more difficult to accommodate a wider range of possibilities in the instrument dimensions you are working - which I think is spot on!

But there are new electrochemical sensors (much better for specificity than MOS) available that are about the size of a thumbnail and only 4-5mm thick.

You are doing excellent work, keep it up!

Are you sure? [yes] / [no]

peter jansen wrote 3 months ago null point

Thanks Gasump! If you have a look at the project description, video, or the project logs, you'll see that the design is ultra modular with 5 modular sensor boards, 4 of which share a common footprint so that they can be interchanged in position. It should also be relatively easy for someone who's designed an arduino shield to put together their own sensor boards. All of the sensor boards are on the outward surfaces of the device, so if you're willing to make your own case mods, it should be possible to accomodate larger sensors of different dimensions (like those giant gas sensors you mention).

One of the current sensor boards (the atmospheric board) contains sensors for atmospheric temperature, pressure, humidity, as well as three gasses using a tiny sensor similar to the ones you mention -- have a look in the project log Step 2: Concept and Industrial Design for more information.

thanks!


Are you sure? [yes] / [no]

Boz wrote 3 months ago null point

Very similar, yet totally different to my project, I've upvoted it just for the awesomeness of what you're trying to achieve.

Are you sure? [yes] / [no]

Noman wrote 4 months ago null point

Anxiously waiting for the updates and checking project daily I found boards log. Breakout boards for sensors and compatibility of interfacing is cool. Another expansion option might be possible through a converter board that would enable any standard (if there are any standards for these) breakout sensor board from sparkfun or adafruit to plugin to device, or this may be expansion slot?
Capacitative touch wheel is another innovation added and it is impressive. You are not adding ultrasonic sensor due to size limitations but how about adding HB100 doppler motion sensor? Also will the mic would be able to listen to bats?
Sorry for too many questions but that's what strike my mind while reading through.

Are you sure? [yes] / [no]

peter jansen wrote 4 months ago null point

Hi Norman,
I'm hoping that after the device is completed, that instead of working on building these open source science tricorders, there can be more focus on building new sensing packages for them. I'd love a small distance sensor, but I'm not sure that there are any good options out there yet. The HB100 is interesting, but I think also much too large (I think it's nearly half the size of the Arducorder mini!). It also seems to only measure relative change in motion (like an accelerometer), rather than position.
There really are no standard pinouts for sensor boards from sparkfun or adafruit. But with such a low cost to spin your own sensor board, the barrier to creating your own sensor module is much smaller.

Are you sure? [yes] / [no]

Jixijenga wrote 4 months ago null point

Noman, Dr. Jansen,

Perhaps later iterations of the tricorder could have a modular sensor system? Like a plug and play type setup, you pop open the housing, unplug the board(s) and then plug in a different one. We've reached an understanding with technology now that upgrading one's computer isn't seen as a daunting and highly technical challenge anymore, it's largely switching out or adding components that conform to a standardized plug or socket. I think that any advancement in this tricorder could benefit greatly from having such a system, rather than defining the capabilities based on packages or defined variants. An end-user, no matter how uninformed they may be, could customize and configure their tricorder for use in their life. Perhaps people sharing a tricorder could have entirely different uses, and require constant switching of sensors.

Or maybe have a USB type getup, where the sensor packages or modules aren't just restricted to a tricorder and can be used in anything that accepts a USB device. I think that would be great, because while a handheld tricorder is cool, (very cool actually) giving basically anyone with a laptop the ability to emulate one would be even better. Especially for people who wouldn't be able to afford the purchase, or construction, of an entirely new device but would benefit from it's functionality. Perhaps the tricorder could have little "ports" where you plug in this small card-like sensor with a USB plug on the end. I'm sure such a modular and truly plug-and-play sensor would be very robust and durable, further enhancing the utility of the tricorder.

Are you sure? [yes] / [no]

Noman wrote 4 months ago null point

Dear Dr. Jansen, thanks for your kind and informative reply. Yes, BLE and IOS device attachment both have their drawbacks. TechBasic (Basic programming language) skips any need to know IOS programming, I found it easier to use than my aged Casio 880P. I suggested BBB as it is fully opensource and has a small footprint but larger as compared to your mini tricorder version, off-course. I can not wait to see Mini version come to life. I would like to contribute in kind for any component or anything holding it back to come to reality.

Are you sure? [yes] / [no]

peter jansen wrote 4 months ago null point

Hi Norman,
Thanks for your kind note, and those are good questions. There are a few main thing that limit making this into an open source sensing device that connects with your phone (I've thought about this a bunch of times, as a potentially simpler route to development). One of the main issues is the BLE bandwidth is very limited, only around 1k/second -- way too slow for some of the sensor data. There are also mechanical issues trying to make one device that could mount to different phones (and not obscure the camera), software issues (I'm not an iOS or android programmer), and cost issues (ideally I'd like to make these available for kids, and it'd be unfortunate if the kids also were required to have a $500 phone to pair the sensors with).

I've investigated using different platforms -- the gumstix, the new raspberry pi compute module, and the beagle bone black, just to name a few. The major issues are size and power draw. With this mini version with a motherboard designed from the bottom up for size, portability, modularity, and power efficiency, I've designed it to be small enough to comfortably fit in pocket, and ideally have a lengthy battery life (more than just the hour or so you're likely to get with any of the modules I listed above).

Are you sure? [yes] / [no]

Noman wrote 4 months ago null point

I am a tricorder enthusiast since childhood. Dr. Jansen, you has come a long way [4 Gen before this 5th Gen device creation! Cool] and doing a great job. Brilliant. To me it is more inspiring and motivating project than any of others.

I am just curious, how about using an "IOS device with TechBasic" as front end while MC+Sensors board connected through BLE doing sensing job? TechBasic is good at graphics and visualization of data. Also how about using BeagleBone Black as main board with LCD Cap?

Are you sure? [yes] / [no]

Similar projects