Smart Dog Collar
11 December 2015
Smart Dog Collars at Work! As a guest of Intel* at Maker Faire Rome 2015, we demonstrated an automated dog food dispenser (aka smart pet feeder) being...
722
Destruction Derby
11 December 2015
Let the destruction begin! If you attended Maker Faire Rome 2015, you may have noticed some toy cars powered by Arduino* 101 racing around within a wo...
671
Activi Tie
10 December 2015
Led Fashion If you attended Maker Faire Rome 2015, you may have noticed some smart wearable dress ties powered by Arduino* 101 being worn by makers in...
605
How I made my home smarter using ubiworx™
29 October 2015
Mark Burkley, our CTO, describes how he finally made his home smarter using our ubiworx™ IoT software framework. From securing his garage door throu...
699
Armiga project: working some old-time magic
17 August 2015
Armiga prototype closeup The Armiga project is born from nostalgia about one of the great computers in history, the Commodore Amiga 500. One of those...
1329
Farming Drone
04 July 2015
The "Farming Drone" was the winning project of the Emutex Software Innovator Of The Year Scholarship 2015. This year the competition was focused on cr...
2285
Sleep Apnoea Detector
04 July 2015
The "Sleep Apnoea Detector" was the runner-up project of the Emutex Software Innovator Of The Year Scholarship 2015. This year the competition was foc...
1519
MyCar - Powered by Emutex ubiworx and Intel® Quark
28 November 2014
What is it? MyCar is a demonstration of Emutex’s ubiworx product in a telematics application. Installed on an Intel Quark based platform and connect...
6663
Intel® Edison based DSLR Camera Controller
14 October 2014
by David Hunt. I've been working on camera hacks for a couple of year now. It started with the CameraPi, which was a Raspberry Pi mini-computer stuffe...
8398
Intel® Edison based Timelapse Rail for DSLR Camera
10 October 2014
At the European Maker Faire 2014 in Rome, Emutex were invited to display some demos based on the new Intel® Edison module, a dual core Atom based sys...
4774
Intel® Edison GPIO Pin Multiplexing Guide
10 October 2014
by Dan O'Donovan and David Hunt Introduction The Intel® Edison platform contains external input/output pin connections which may be configured to be...
96322
The Weather Balloon Stratosphere Flight
01 October 2014
The Weather Balloon Stratosphere Flight was the winning project of the Emutex Software Innovator Of The Year Scholarship 2014. Gerard Prunty, a 4th ye...
8889
CamIO – DSLR Camera control using Intel® Galileo
20 August 2014
CamIO is a software application running on an Intel Galileo computer that can control various aspects of a DSLR camera, including aperture, shutter sp...
5319
limerick flying club
19 August 2014
Limerick Flying Club provides a way for people to learn how to fly and to maintain their flying skills in professional but sociable surroundings. The...
5467
Introduction to wiring-x86 for Intel® Galileo Gen2 and Intel® Edison Arduino
08 August 2014
The Intel Edison Arduino and Intel Galileo Gen2 are new embedded development boards from Intel. They are both Arduino compatible which means you can r...
12599
Getting Started with Intel® Galileo Gen 2
30 July 2014
Intel® recently announced the release of their Galileo Gen 2 board - the successor to the original Galileo which was made available in October 2013....
39777
GPIO Expander Shield for Intel Galileo and Arduino boards
25 June 2014
The Intel® Galileo is an increasingly popular embedded development board, which is rich in digital and analog I/O interfaces including I2C, SPI, PWM,...
11033
MySensors – Powered by ubiworx and BeagleBone
18 June 2014
What is it? MySensors is a demonstration of Emutex’s ubiworx product in a potential industrial application. Installed on an ARM Cortex A8 platform,...
8617
MyWatts - Powered by ubiworx and Intel Galileo
18 June 2014
What is it? MyWatts is a demonstration of using the Emutex ubiworx framework to build a home automation system that is connected to the Internet. Ubiw...
7836
PiPhone – A DIY cellphone based on Raspberry Pi
18 June 2014
Emutex is a company that encourages a maker culture among its engineers. This helps promote innovation and the development of new ideas. As an enginee...
7425
GaliLED - An intelligent CCTV monitoring system
18 June 2014
Are you wondering how to build an intelligent CCTV monitoring system? Maybe you found some solutions, however, they turned out to be too expensive for...
11480

emutex smart dog collar 003 web

Smart Dog Collars at Work!

 

As a guest of Intel* at Maker Faire Rome 2015, we demonstrated an automated dog food dispenser (aka smart pet feeder) being controlled by smart dog collars. We created this application to demonstrate one of the many applications that can be made possible by Arduino* 101.

Each smart dog collar, powered by Arduino 101, monitored a robot dog to measure useful details such as health, mood, tiredness and hunger. The values were communicated by the collar via Bluetooth 4.0 (BLE) to the owner’s smart phone (or tablet) when in its proximity. The owner could also select one of the values to be displayed as a red/green level on an LED strip on the collar.

The automated dog food dispenser was powered by an Intel® Edison embedded system running our Emutex ubiworx™ and ubilinux™ software. The dispenser monitored the presence of dog collars and, as a dog approached the dispenser, food (sweets!) was dispensed to the dog and only if the dog was detected as being hungry. The proximity of a collar was sensed by measuring the Bluetooth 4.0 (BLE) signal strength transmitted by the collar’s Arduino 101.

 

Smart Dog

Smart Dog

 

Arduino 101 is the first widely available development board based on the tiny, low-power Intel® Curie™ module. Easy to use and affordable, Arduino 101 is ideal for education environments, makers and embedded developers.

For more details on how we implemented the smart dog collar and the smart pet feeder please contact our maker team.

Note: Arduino* 101 is known as Genuino* 101 outside the USA. *Other names and brands may be claimed as the property of others.

1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

emutex destruction derby 003 web

Let the destruction begin!

 

If you attended Maker Faire Rome 2015, you may have noticed some toy cars powered by Arduino* 101 racing around within a wooden arena in the Intel* booth.

What you witnessed was our “Destruction Derby” game which grabbed the attention of hundreds of kids … and big kids, e.g. their parents! We created this game to demonstrate one of the many applications that can be made possible by Arduino 101.

Each toy car was mounted with an Arduino 101 which was wired to the car’s internal drive and steering motors. The movement of each car was remotely controlled using a smart phone or tablet running a custom app which communicated to a car’s Arduino 101 via Bluetooth 4.0 (BLE).

 

emutex destruction derby

Demolition Car

 

The purpose of the game was for each player’s car to achieve the highest amount of collisions with other cars within a fixed amount of time. Collisions were detected using accelerometer technology. The arena was designed and laser cut into shape by our innovative friends in FabLab Limerick.

Arduino 101 is the first widely available development board based on the tiny, low-power Intel® Curie™ module. Easy to use and affordable, the Arduino 101 is ideal for education environments, makers and embedded developers.

 

 

For more details on how we implemented Destruction Derby please contact our maker team.

Note: Arduino* 101 is known as Genuino* 101 outside the USA. *Other names and brands may be claimed as the property of others.

1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

Mark Burkley, our CTO, describes how he finally made his home smarter using our ubiworx™ IoT software framework. From securing his garage door through to controlling his home’s internal and external lighting, Mark explains how he implemented the entire solution and encourages readers to try build similar smart solutions.

If you are like me then you also have a garage that has a vast collection of tools and other bits and pieces that are carefully arranged in a way that looks like a complete mess to the untrained eye. But in fact we know exactly where everything is, and restricting access to only those who won’t rearrange everything in a misguided attempt to help you is a must. I decided an interesting use case for ubiworx™ would be to control a magnetic door lock to my half of the garage.

Once I started building the access control I thought wouldn’t it be good to incorporate some PIR sensors to also control the lights. And maybe include a temperature sensor to check if the temperature drops below freezing. While I’m at it, why not get rid of those mechanical socket timers that we use to turn on and off lights while we’re away and at the same time save me from having to switch on all the lamps every evening and off every morning. Finally, wouldn’t it be nice if I could control all this over the internet but more importantly keep an audit trail of exactly what was activated and at what time. And just because it’s Halloween let’s incorporate some outdoor Halloween decorations and lighting too.

  

motion controlled lights

Motion controlled lights

  

While this project is a bit of fun, I am using it to demonstrate some key advantages of using ubiworx™. A key aspect is of course having to write zero lines of code. ubiworx™ is very modular and extensible, and you can add on support for any sensor you want, but for most use cases you just can configure it out of the box which is a great way to rapidly develop an IoT solution. In addition, the web UI allows dynamic creation and tuning of logic rules to be executed by the gateway without ever having to physically access the gateway.

Read the full post on out ubiworx™ blog

  

Did I mention?

ubiworx is free for makers

What will you connect?

1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

tie

Led Fashion

 

If you attended Maker Faire Rome 2015, you may have noticed some smart wearable dress ties powered by Arduino* 101 being worn by makers in the Intel* booth.

Named Activi Tie and inspired by the Adafruit* Ampli Tie, Emutex paired with FabLab Limerick to make a number of ties to exhibit the potential of the Arduino 101.

 

suit

Led Fashion!

 

The Activi Tie could operate in different modes: It could count steps, detect motion, detect noise and display status on a colourful LED strip. By tapping the tie the wearer could switch between modes. The tie’s settings could also be configured using an intuitive smartphone app via Bluetooth 4.0 (BLE).

Arduino 101 is the first widely available development board based on the tiny, low-power Intel® Curie™ module. Easy to use and affordable, Arduino 101 is ideal for education environments, makers and embedded developers.

 

 

For more details on how we implemented Ampli Tie please contact our maker team.

Note: Arduino* 101 is known as Genuino* 101 outside the USA. *Other names and brands may be claimed as the property of others.

1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

ArmigaBig

Armiga prototype closeup

 

The Armiga project is born from nostalgia about one of the great computers in history, the Commodore Amiga 500. One of those computers that happened to be ahead of their time.

The Amiga is one classic computer that´s quite hard to emulate, in part due to it´s proprietary chipset and in other part because everything was very time-coupled. In fact, most copy protection systems where based on data density variations in the disk. However, the Amiga emulation comes from 1995, when the first version of UAE was released.

The problem with emulators, however, is the fact that you miss a great part of the original experience, most of the times you need to tailor them for your needs and most likely you'll need to get a pirated ROM for the machine.

 

Armiga sketch

Armiga sketch

 

Another tricky point of the Amiga was the disk format. By that time, PCs used Double Density disks, holding up to 720KB, but the Amiga disk format allowed to write 900KB in the same disks, but making them non-readable in PCs. However, standard PC disks could be read in Amiga drives. In fact, the Amiga lacked a proper disk controller and gave developers full access to the hardware, just providing basic primitives.

This lack of compatibility makes reading Amiga disks very hard and only one product is available in the market, but is both expensive and far from user-friendly.

  

THE CHALLENGES

So, with this background, there were two main challenges:

  • Read Amiga disks
  • Make zero-effort emulation

 

THE CONTROLLER

The main goal here was to make a small, affordable controller, able to read the Amiga disk format and transfer disk images to the host for execution.

The first step was finding and reading everything about the Amiga disk format, based on Modified Frequency Modulation (MFM), with 2 sides per disk, 80 tracks per side, 11 sectors per track and 512 bytes per sector. However, as it´s MFM encoded, it´s not that easy; what you will really be dealing with is 2us wide bitcells. Each bitcell repesent a bit and because of MFM, they are always arranged as 10, 100, 1000.

 

First Amirga controller on a Raspberry Pi

 

The most common approach in this point is to use a FPGA to massively supersample the signal and later on do all the maths to get the bits back. In our case, however, we thought another, smarter way was possible: detecting ones (in MFM ones are line state changes) and counting the time between two consecutive ones.

This approach is not problem-free, as you must do all the processing in less than 4us, fine tune the threshold between 4us, 6us and 8us bitcells (it really is trickier than it seems) and must have enough RAM to store at least one track.

In our case, we choose a 32bit, 50Mhz Microchip PIC for the first test and with some work, we achieve to make an ISR in less than 4us and also a clever memory packaging system that allowed us to pack a whole track in RAM before sending.

In addition, we implemented a per-track bitcell calibration system, so each track is read twice: once to find the optimal bitcel boundaries and the other to get the information. With this technique, we are even able to read disk the Amiga 500 is not able to read.

So, now that we have a track in memory, we need to send it to the host. In the first prototype, we used a RaspberryPi and the controller had a IO heaver, so it plugged straight into the Pi, but soon we decide to move from the Pi to a more powerful Dual Core board.

 

Second generation controller

Second Armiga controller iteration (much smaller) on a Cubieboard 2

 

After many design tries, the most effective way of setting the board in the Armiga was making it expansion header inaccesible, so we decided to use the top UART for communication. After lots of tests and reading in the few documents available, we managed to make 115200bps transfers with ACKs.

 

THE EMULATOR

As said, the Amiga is quite a tricky machine in order to be emulated and fine tuned emulators tend to use big amount or resources. However, we found a striped down version of UAE, tailored to run in the resource-sparse DreamCast: the UAE4All.

UAE4All as it was, run at about 15 fps in the Pi and had a no-so-intuitive menu, plus dozens of options we wanted to get rid of. So there were 2 major challenges:

  • Optimizing the emulator
  • Creating a new UI

 

Optimizing the emulator

The first thing we wanted to optimize was rendering and that meant finding the optimal configuration in SDL to make it hardware accelerated. That configuration, however, is different in the Pi and the Cubieboard 2 (the board the Armiga is based in), so it was a work we had to do twice.

In addition, we optimized some loops and made extensive use of register-cached variables. The result: over 30 steady FPS in the Pi.

Despite these good numbers, the Armiga runs at 50Hz and uses Vsync to synchronize the chipset, so we were getting frameskip. Games were playable but wasn´t perfect.

The second major breakthrough in speed came from the hand of parallelization: we split UAE in two processes, one to do the emulation and another one to scale, filter and render the framebuffer. Now, if no limits are set, the Armiga was able to render 200+ FPS in the CB2 at 720p.

As we had margin, we decided to implement some filters, like several tastes of scanline, both 4:3 (original Armiga ratio) and 16:9 and a special non-linear 16:9, which keeps the center of the screen in 4:3 and gradually stretches it as it reaches the edges.

Even with the most consuming filters, the Armiga rendered 50 FPS using around 30% of one core..., but we thought we could do better, so we implemented another time saving feature: frame change detection, so no frame is rendered until there´s some change with regards to the current one. Now, 50FPS were achieved at between 15% and 30% of one core

 

Creating the UI

The original UAE4All UI was not too bad for the Dreamcast era, but certainly not up to today standards. In addition, it had too much stuff in it. As our goal was to make it as simple to use as it gets, all the configuration options should be removed.

With this idea in mind and without the goal to bring it to the final product, we created a new menu, as a proof of concept. Everything was done from scratch and the only library used is SDL, which basically let you draw color rectangles, images and flip buffers.

 

First Armiga menu

 

Even though it was functional, it looked a bit aged with the pass of time, so we decided to move to a more contemporary approach, simpler, cleaner and based on latest UI and UX trends. Our main inspiration was Google Material Design, in terms of icons, colors, layout and how different menus overlay each other giving the depth impression.

The main goal was to make it simple to use with both a keyboard and a gamepad, using as few buttons as possible (only 2 are used in the final version), without loosing the context, so the user should always know where he is and how to go backwards and forward and what this actions would mean.

 

 

1 1 1 1 1 1 1 1 1 1 Rating 5.00 (1 Vote)