Clippet: A new app for daily one-minute audio newsclips

clippet-news

I love reading news… But like most of us, I feel like I don’t have time to read as much as I would like to.

As I walk to work every morning, I thought I should try to listen to podcasts to have my daily dose of news while walking. However, the podcasts I want to listen to seem to be always quite long (sometimes 40min!) so I end up not finishing them or even not bothering…

I understand that to cover a topic properly, you need details and time, but sometimes you just want this quick summary, just to keep up to date with what’s going on in the world or in a specific industry.

Today, I found an app that pretty much does that! It’s called Clipper, it’s available for free on Android and iOS and it delivers daily one-minute audio newsclips.

The concept was to create news for young people by young people. You can create your own playlists, browse categories, and the UI is really nice!

clippet-categories

As a way to stay informed, I found the idea pretty good. Of course, if you prefer in-depth news, this is not gonna be enough.

I just downloaded it today so I haven’t had time to test it properly but if like me you want to give it a shot, go and check it out here or watch the video below to learn more.

Advertisements

A Brain-Computer Interface That Lasts for 2 Weeks

wearable-brain-computer-interface

The evolution of research around brain activity has led scientists to a new invention. They managed to create a wearable conductive gel that sticks on the skin without irritating it and that allows to track and collect brain signals.

These wearable electrodes stick onto and near the ear like a temporary tattoo and can be used for more than 2 weeks without being damaged by normal activity.

This invention could allow a better collection and analysis of brain waves and be the beginning of better prosthetics and interfaces for people with disabilities by being able to control devices with your brain.

Before this, brain signals were analysed using Electroencephalograms with electrodes stuck onto the head with conductive gel. This technique only allowed short-term collection as the gel would deteriorate and the electrodes would have to be changed.

This new method proved to be working for more than 14 days despite showering and exercising. It consists of a flexible collection of gold electrodes on a soft plastic film and sticks to the skin using electric forces better known as van der Walls interaction.

To record the brain activity, the sensors were connected to a monitoring device using stretchable wires. This device recorded well enough to enable patients to spell words using their thought.

This type of invention could revolutionise the life of people with disabilities for whom mind-controlled devices would considerably change their life.

Controlling the Parrot AR Drone with the Myo armband in Node.js

myo-drone-nodjs-tutorial

Following the last tutorial I wrote on how to control the Sphero with the Myo armband, here is another one on how to control the Parrot AR Drone with the Myo using Node.js.

If you want to follow along, you can find the repo on my github.

To begin with, we need to setup the server configuration. After requiring the necessary modules, here is what we need to write:

var env = process.env.NODE_ENV || 'development';
if('development' == env){
  app.set('port', process.env.PORT || 3000);
  app.use(express.static(__dirname + '/public'));
  app.use("/node_modules", express.static(path.join(__dirname, 'node_modules')))
}

server = require('http').createServer(app);

var bayeux = new faye.NodeAdapter({
    mount: '/faye',
    timeout: 50
  });

  bayeux.attach(server);

  client = new faye.Client("http://localhost:" + (app.get("port")) + "/faye", {});

  client.subscribe("/drone/move", function (d) {
    console.log(d);
    console.log("drone move?")
    return drone[d.action](d.speed);
  });

  client.subscribe("/drone/drone", function (d) {
    console.log(d);
    console.log("drone stuff")
      return drone[d.action]();
  });

  server.listen(app.get('port'), function () {
    console.log("Express server listening on port " + app.get("port"));
  })

We use express to set up the server and Faye & Bayeux for the communications between the Drone and your app.

We also use the module ‘dronestream’ to be able to stream video from the drone to the browser that is listening on port 3001.

The rest of the code deals with the commands sent from the Myo to the drone. First of all, we need to create an instance of the Myo and then define some commands.

myo = Myo.create();

myo.unlock();

myo.on('fingers_spread', function(){
    takeoff();
});

myo.on('wave_in', function(){
    goLeft();
})

var takeoff = function () {
    flying = true;
    return faye.publish("/drone/drone", {
      action: 'takeoff'
    });
};

var goLeft = function(){
    stopped = false;
    setTimeout(function (){
      return faye.publish("/drone/move", {
        action: 'left'
        // speed: adjustXspeed
      })
    }, timeout);
  };

Once the instance of the Myo is created, it can detect certain types of movements and run functions accordingly.

The ‘myo.unlock()’ command should allow the Myo to be unlocked while you use the app. However, I noticed I still needed to execute the unlock gesture ‘double tap’ between each command… Then the ‘faye.publish’ allows to send the commands and make the drone move. You can adjust the action and speed as you like.

This is just a snippet so once again, if you wanna have a look at the rest of the code or if you want to play around with it, everything is available on my Github 🙂

Hope it helps and enjoy!

Video: Teenage NASA Employee Creates Mind-Control Bionic Arm

This is just amazing… Definitely worth watching!

Controlling the Sphero with the Myo armband in Node.js

myo-sphero-node

I received my Myo armband a few months ago and I have been working on a few projects to control my other devices with it. To start with, I thought I would explain how I managed to control the Sphero ball using the movements of my arms and Node.js.

To follow along, you can view all the code on my github repo.

The setup of the server side is pretty straight-forward, here’s what is in my app.js file:

var express = require('express'),
    path = require('path');

var app = express();

var lab = require('./my_modules/myo_sphero');
lab();

// app.use(express.static(path.join(__dirname, 'views')));

//.all('*', function(req, res){
// res.sendfile('views/index.html');
//});

app.listen(3001);
console.log("Server running on port 3001");

As you can see, you start by requiring ‘express’ and ‘path’ to be able to start your server and serve your different files.

You then require the module you created and you call it so it can be executed when you start your app.

The commented part of the code gives you the ability to serve something in your browser as well by calling the files in your ‘views’ folder but I am not using it at the moment as I just make the connection between the Myo and the Sphero without building anything in the front-end. The first part calls all the files in your folder whereas the second part allows you to serve a single file.

Finally, the app uses the port 3001 that you can check in your browser by visiting http://localhost:3001.

Then, you can write your commands in your module; here’s a snippet of my index.js:

module.exports = function() {

  var spheron = require('spheron');
  var myo = require('myo');

  myo = Myo.create();

  // Set this to the device Sphero connects as on your computer.
  var device = '/dev/tty.Sphero-RBR-AMP-SPP';

  var safeMode = true;

  var controlSphero = function(sphero) {
    myo.on('wave_out', function(){
      myo.setLockingPolicy();
      console.log('RIGHT');
      sphero.heading = 90;
      sphero.roll(70, 90, 1);
    })
  }
}

Wrap your code into a ‘module.exports’ function to access it from other files.

Then, require the modules you need, create an instance of the Myo and find the reference of the Sphero on your computer by entering ‘ls /dev/tty.Sphero*’ in your command line once your Sphero and your bluetooth connection are on.

The controlSphero function checks if you are doing the ‘wave out’ movement with the Myo and if so, makes the Sphero roll to the right.

The myo.setLockingPolicy() command stops your Myo from being locked after a few seconds so you can keep on making movements and tracking them.

Myo updated their firmware and API recently and introduced an automatic locking of the armband to avoid accidental tracking of gesture but for this app, we need it to be turned off. You can usually pass in the value ‘none’ or ‘standard’ but I made it default to none. If you want to change this, you can find the myo.js file inside the myo module and find the function ‘setLockingPolicy’. You can learn more about this command on the API reference.

With the update of the firmware, new gestures have been added such as ‘index to thumb’ or ‘click’ and the ‘thumb to pinky’ has been removed so there is a little bit more you can play with.

Once again, if you’re interested, you can find the full code on my github.

Let me know if you have any question 🙂 Good luck!

A Brain Sensor That Could Detect Strokes Before They Happen…

C-Lab-Brain-Sensor-Detect-Strokes-Samsung

A few years ago, a team of engineers at Samsung started working on a project to detect strokes by analysing brain waves.

Considered pretty much impossible at the time, they now built a real prototype called the EDSAP for Early Detection Sensor & Algorithm Package. This device allows everyone who has a smartphone or a tablet to monitor the electrical impulses in their brain and therefore give them the chance to detect an oncoming stroke and see their doctor before it happens.

With 15 million people suffering from stroke every year, and 66% of them resulting in death or permanent physical disabilities, this device could be really helpful.

How does it work?

The headset is composed of sensors that wirelessly transmit data to a mobile app where the algorithm calculates the risk of stroke all in 60s. Besides, the data collected can also be analysed to inform the user about stress level, anxiety and sleep patterns.

How does it defer to any other brain sensor?

  • Unlike other brain sensors on the market, the EDSAP is more focused on health-related matters rather than controlling other devices.
  • It is also a lot faster than the normal time required from the material used in hospitals (60s instead of 15min).
  • The highly conductive rubber-like material invented by the team allows the headset to scan brain waves in a larger amount and more comprehensively.
  • It is easier and more comfortable to wear as the Saline usually required does not need to be rubbed in the hair anymore.
  • Last but not least, the rubber-liked material invented allows the creation of multiple smaller devices that could be implemented in people’s everyday life. For example, for a longer use, the sensors could be added to hairpins or eye glasses.

Based on the analysis of brain waves from patients suffering from stroke combined with Artificial Intelligence, this project, once ready, could also be applied to other neurological health issues such as depression.

Wireless Brain-Computer Interface

BCI

I am fascinated about brain-computer interfaces and all the research around using computers to try to recreate some brain functionalities.

In the United States, a team at the Brown University and BlackRock Microsystems  have been working on a new interface that would work wirelessly and created a device that could fit in the palm of your hand…

This device could help paralyzed people take control of devices using their own thoughts without using long wires to connect their brain to signal processors.

You can learn more about this by reading the article by the MIT Technology Review here.