March 08, 2006
Ubi.ach - updated flowchart
We are getting a mini-itx board, that will do the following actions, in order:
1. activate a popper perl script every minute to check the email account (ubiach@gmail.com). This perl script will send the email to a php file located on the mini-itx.
2. The php file will:
a. parse the new email messages and place them in a database (SQL).
b. place the subject of the message on the clipboard
can use the - GtkEditable::copy_clipboard command:
void copy_clipboard(void);
copy_clipboard() copies the current selection to the clipboard.
It also causes the "copy-clipboard" signal to be emitted.
c. The TTS application will run automatically (from the startup), and take as argument anything that's on the clipboard. Then needs to erase the clipboard.
Posted by Gilad Lotan at 04:43 PM | Comments (0)
March 03, 2006
Ubi.ach - resources research
So we need a mini-itx board, (memory & RAM)
as well as Text-to-speech software... here's what we got from the loving ITP community.
MINI-ITX:
--------
http://www.mini-itx.com/
http://www.windowsfordevices.com/articles/AT3695724814.html
added-on features:
TTS software:
------------
Mike Olson (used to work for Dragon):
- Microsoft Speech SDK
- Nuance - too expensive for poor students like us
Dimitri Darras (ddarras@yahoo.com):
- Mbrola
- Cepstral (has a fee)
Christian Croft:
- Download FreeTTS 1.2.1
his installation notes:
FreeTTS Setup Tutorial Limits to Free TTS "FreeTTS provides some level support for the Java Speech API v1.0 (JSAPI). In particular, since FreeTTS is a speech synthesis system, none of the JSAPI 1.0 Recognition interfaces are supported. In addition, FreeTTS supports only a subset of the JSAPI 1.0 javax.speech.synthesis specification. The FreeTTS support for JSAPI 1.0 has the following restrictions: JSML Speech Markup is ignored. FreeTTS will process JSML, but currently does not apply the markup to the generated speech. FreeTTS does not currently generate the WORD_STARTED or the MARKER_REACHED events. Vocabulary management is not supported. The Synthesizer.phoneme() method is not implemented. PropertyVeto exceptions are not always properly thrown when property change requests are rejected or constrained." Download FreeTTS 1.2.1 at http://freetts.sourceforge.net/docs/index.php#download_and_install >>> Just get the bin package unless you want to modify the source files, then you want the source as well This is a third party package, so you have to go through a process of agreeing to an installer agreement. Put the freetts folder that you downloaded into (I put the whole thing, if you're an expert and know exactly which files you need ) System/Library/Java/Extensions Good setup instructions for Java Speech API 1.0 here (apparently there's a 2.0, but I haven't found it...) In the terminal, change directory to the lib directory of the freetts folder, and execute the following commands: Type chmod +x jsapi.sh Type sh jsapi.sh The BCL (Binary Code Liscense appears for you to "read it.") appears on the screen If the BCL is acceptable, accept it by typing "y". The jsapi.jar file will be unpacked and deposited into the lib directory. Then be sure to put the speech.properties file in your users/home directory In the freetts folder that you downloaded, open FreeTTSHelloWorld.java (find it in freetts/demo/freetts/HelloWorld/FreeTTSHelloWorld.java ) in Eclipse. Under Build Path, add all the .jar files from freetts/lib and you should be able to run it as a Java Application and hear kevin16 say "Thank you for giving me a voice. I'm so glad to say hello to this world."
Posted by Gilad Lotan at 10:41 PM | Comments (0)
March 02, 2006
Ubi.ach - First meeting with Patrick
Patrick clearly said we could go either way:
1) according to our initial diagram
. Only problem we haven't solved yet is the flash card and hacking into an .mp3 reader / player.
2) using a mini-ITX (EPIA-800 - look at the EPIA-800 model) - its basically a more "software" approach, but on the other hand would save us the hassle of haveing so many different parts to worry about. Here, this board can literally do everything - we just need to install an operating system, and then it could process, save and run the .wav file)
resources that we looked at:
- http://www.voice-assistant.com/- http://www.research.att.com/projects/tts/demo.html
- http://www.nextuptech.com/
still need to find a good & reliable one.
We can use the same perl and php scripts from my UbiComp project
meeting tomorrow to decide which direction to take on this bi-ach!
Posted by Gilad Lotan at 08:10 PM | Comments (0)
February 23, 2006
Networked Game Assignment
We created a 2-player game that is controlled with 4 potentiometers (2 for each player), each controller uses an Xport (with the following code) to connect to a python script on the itp server (in the cgi-bin). This script parses the message from the PIC (the two readings from the pots), and writes them to a .txt file (important not to put the .txt file in the cgi-bin folder-> otherwise processing can't open it!). We run a processing app which reads both data files and uses the information from the potentiometers in order to place the two players at the appropriate spot on the screen.
There have been problems with the itp server/timing. Best would be to have our own little server (next time!), but also every time the we send information to the server, to cut off the connection (sending the ascii character '4' - "serout[4]") and then time is not wasted on the server talking back to the PIC chip. It is also extremely wasteful to have the .txt files in between the communication.
some photos from today:
Min's blog (including video)
Posted by Gilad Lotan at 01:05 AM | Comments (0)
February 20, 2006
Etch & Sketch Net. Game - Feb 20th
Some things from today:
1. Getting the python script to work was a drag. Little mistakes like tildas and slashes in the wrong places. Also very important to keep the file prefernces at 755 and NOT 777!
2. We realized that we needed to put our data file (data1.txt) in the main directory, because processing couldn't grab data from within it when it was in the cgi-bin library.
Basically what we decided to do is connect two controllers (each with two potentiometers), through the WWW, to our python script which then writes the pot values into the data1.txt file (situated in itp.nyu.edu/~gl637). Then we will get a precessing app that will constantly check these values and change the graphics of the game according to them. The processing bit is not quite there yet, but is on its way. I'm unsure about the line & space drawing, but am sure its not hard. Will try to have a ball bounce around too... aaargh!
Posted by Gilad Lotan at 03:48 AM | Comments (0)
February 09, 2006
Light and Displays
This project is pretty cool (Blinkenlights). Basically people send in their images, which then get used in the facade of this building. Very simple execution -> relays, 8 floors each having several windows, each with 150W lightbulbs.
My personal favorite - G -
Vectorial Elevation - Nice idea, but not taken to the max. I like the idea where people can affect this physical thing that's so huge in an actualy city of the world. But I don't think that these linear lights do the trick. If the outcome of the design had some more meaning, or could resemble an image, then it would be VERY cool.
I had an idea a few weeks ago for the MTV-U Darfur project - creating a picture-mosaic using MMS pictures that users send from all over the world. Having this be on a hugh billboard somewhere in the city, and the outcome of the picture being some photograph of the poor people in Darfur. This was to heighten people's awareness regarding the disaster that's happening there. A similar idea could be using a building's outside display, getting SMS/MMS feeds from random users. I just like it better when there's a meaning or certain image.
Jame's Clar's work is pretty amazing, visually.
here is another building display which I really like, in Barcelona.

Check previous 'Networked Objects' entry about the city of Hong Kong.
Posted by Gilad Lotan at 12:47 AM | Comments (0)
February 02, 2006
NetObj - Lesson #3 - Feb 2nd, 2006
comments from readings:
======================
- Bridging between the physical and the virtual
- Real time tagging -> location awareness
- Devices talking with each other
- Embedded technology -> in natural parks, instead of building a visitor's center, add hidden technology that offers information.
- Telephone numbers are a relic. Not necessary anymore. Just need to reach a person. How can we do that? Maybe have tags on names in order to know which "Alice" we want to reach => One UNIQUE ID for everyone in the world.
I think its completely all about finding the right balance between technology and physicality.
* Look at the Yport (wireless Xport)
* Programmableweb.com/apis - look at this website
Posted by Gilad Lotan at 12:02 PM | Comments (0)
The Equator Projects - Their insight on Interaction
The Equator Project 's aim is to integrate physical and digital interaction. Everyone realizes that the computer is moving beyond the workspace. The Equator project is reasearching the possibilities to use this type of technology in homes, schooling, community care and city streets. Very similar to ITP, just a bit more "techy". On their website they do a good job at breaking up the conceptual thought behind "interaction". Some thoughts:
- Ambiguity - valuable for the user experience
- Brand (Stewart Brand) - timespan and ownership
- collaborative learning
- Domestic Ethnography -
- Historical view - how we model and interpret context. Declare that complete 'invisibility' for ubicomp is unachievable.
- monomedia - single overarching medium of human activity when different types of media joined.
- presence (through virtual environments)
- seamfulness - new opportunities lie in a design approach that reveals or takes advantage of the limits, gaps and variability of technologies that we often asume to be uniform and seamless.
- sense and sensibility - analysis of the relations between physical affordances, sensors and desirable activities.
- Sensing for exploration - sensor-based systems, and issues about their design.
- Transforms - relations created by physical-digital coupling.
- Traversals - mechanisms for creating transitions between virtual and physical realities.
- Understanding space - relationship between physical and virtual space (location-aware mobile systems, augmented reality & ubiquitous sensing).
Go back to look at this website!
Posted by Gilad Lotan at 12:42 AM | Comments (0)
January 29, 2006
Calm technology
Thinking about calm technology today, I had this sudden realization. Personally I have never liked wearing watches. There's something that irks me to have this thing constantly around my watch. So I developed my own ways to know what the time was; if through peeps at other people's watches, estimates and later on, of course, the mobile phone. There's something deeper than that regarding time. It is everywhere and nowhere at the same time. Here it is a specific time, but it changes according to positioning on the globe. It is very relevant when you live your daily life, but when you're online, it takes on a completely different story. I'm not sure I've pinpointed it down yet, but in the past few days it has been set in my mind. Time is everywhere, why is it confined to little battery-fed devices that we put up on our walls or wrists?
There is a great thing that's been done in Hong Kong. One of the skyscrapers has this special lighting scheme on the top of it, where if you knew the rules, you could figure out the time. There are a few lines, and two different colors. Very simple rules, and effective, because this building is seen from everywhere! This is done really well because probably most people don't even know this, but if it is important to you, you find out, and use the service. A classic example of calm technology. This is the best picture i could find (The building I'm talking about is second really tall one from the left... with the lasers):

A sight to check out in the future - Hong Kong lighting/
"The coming age of Calm Technology" by Mark Weiser
Reading notes:
What matters in not technology itself, but its relationship to us. The Internet is carrying us through an era of widespread distributed computing, towards the relationship of ubiquitous computing (many computers will share each of us), when computation will be deeply imbedded in the world. The social impact of imbedded computer may be analogous to writing and electricity (both have become so commonplace, that we forget their huge impact on everyday life). UC will bring information technology beyond the big problems to the little annoyances, like where are my car-keys, etc... Calmness is a fundamental challenge for all technological design in the next fifty years. Nowadays, computers usually bring excitement of interaction. A calm technology will move easily from the periphery of our attention, to the center, and back.
Multicast Backbone - connects many computers together at the same time. It is about increasing peripheral reach.
Posted by Gilad Lotan at 10:27 AM | Comments (0)