In the very beginning I conceived the project as a maritime platform for data collection, visual projection and music generation. The goal was providing interaction between sailing boats and the people in land. I was planing to send videos from the boat to the beach land and also give it the function of bidirectionality. With that I could reproduce what is happening in the boats and everyone would see what is going on inside the boat, like the way someone is sailing, or how fast it goes the boat.
After attending to all classes of Neil I realized that I should change my objectives quite a lot. I'm sure all that I described is very possible to make but I just decided to target my final project into another product and give it less functionalities as I thought in the very begining. At that moment I admit that I had no idea how difficult the project could be. Anyways, I'm sure I will learn a lot even having a project with less functionalities and also I will use several of the things learned in Fab Academy.
Fabsail
The concept behind Fabsail is making platform for creating generative music out of the the movements of a sailboat. Due to this, artists and musicians can generate some completely unexpected, but interesting, results: music being generated by the sailboat in the sea while this is navigating. They can use that on unique live experiences or for music production purposes.
What it is made:
The enclosure is made from acrylic materials and 3D printed parts made of PLA. The electronics are hybrid, with one input device and one output device. The acrylic parts are composed to make a case that enclosures the electronics. After that I made a 3D printed mount to fix the case to the sailboat.
I have also created some programming sketches for composing music and interact with real-time improvisation. Basicly a program tool for experimentation and fun.
The result:
I created a case case that can be hold in a sailboat. Actually it can be fixed in a mast or the boom of a sailboat. Once it is attached to the structure, the case could send data of the movement of the boat when sailing. Inside the case there is a radio board modified and an accelerometer connected to it. The radio board has been modyfied from Hello Radio; Also I designed the accelelometer board.
Using radio protocol the board will send information of the coordinates X, Y, Z of the sailboat.
In the other side of the first radio there is another radio board connected to my laptop. In one side the Atmega of the radio is receiving data from the accelerometer in the boat and sending it wirelessly to the second radio board. The second board is sending it to my computer by SPI.
Once the data is in my computer I created a piece of program that recognize the data and sends it to a Digital Audio Workstation, in this case I used Ableton Live. With Osculator software you can mapp and trigger music events to the DAW and compose any kind of music.
What it does:
Every time the case is moving it produces a different sound in my laptop. It is making that by connecting the case and the electronics that are inside teh case to my laptop with an FTDI cable.
What I did: architecture system
Case:
For the case I used the design of a dodecahedron to evolve the electronics. I used the design of the joints of each pentagon from an Industrial designer of Barcelona called José Pacheco. I modified the joints and the enclosure in order to open and close every pentagon of the case. With this I can easily remove and install components on it from outside. This case is designed with Draftsight and I used the laser cut to cut all the pieces. Before cutting in acrylic I test several time with cardboard.
Vinyl cutter: I have been using the Roland machine to cut some logos. During the assignment of doing vinyling cutting I could not be in the lab so I did't do anything. Now, due to this project I had the opportunity to use the machine and learn from it.
The mount is designed in Inventor and it will be attached to the base of the dodecahedron It took some hours to print and many tries before it could be strong enough to sustain the whole weight of the case in a mast or a boom.
After talking with the Club Nàutic de Sitges, the maritime club who runs the boats in our town, we agreed that next prototype should have another form, probably an small sailing form. But this will be another project after Fab Academy is over.
Networking
I decide that the project should be wireless. So I decided to make the hello radio board. But in a way that this new hello radio could be added a 6 pin header. The reason to do this is for connecting directly an accelerometer to it and give him instructions via master slave.
Making the radio boards has been one of the most difficulties things I have ever done in my life with my two hands.
From the beginning all this part has been very complicating to me.
Starting with designing the board, our problems of configuration between Fab Modules, and the Roland Modela, continuing with milling and stuffing the board. Seriously, think twice if you want to start this board.
I desgined the board with eagle which it was not easy. The point was to connect the six pin header to the ISO, MOSI, SDA, GRND, pins of the ATMEGA.
Electronics
I designed a couple of boards: the first one was the accelerometer board. For this board I didn't used the accelerometer of the inventory cause it was too small. I tried to work with it some times but it was impossible to me. This component is probably made for cell phones but my fingers were not precise enough to stuff that board with that little piece. So I decided to go for the ADXL 345 accelerometer.
After having made the accelerometer I started testing with and Arduino UNO and connecting to the laptop. I was receiving some data from the coordinates X, Y, Z and that was a good result. After testing a little bit more with Arduino I was ready to fabricate, assemble and program my own micro-controller board wich it is based in the ATMEGA 328. It is basicly and Arduino board. You can find the design files at the end of the page.
Interface and application programming.
This part was one of the most interesting and the one that allows to interact with music interfaces and program development.
I program the accelerometer to talk with ATMEGA 328 with the IDE Arduino. Then I created an sketch file in Processing to visualize the in put data from the accelerometer.
The sketch was ready to visualize this data and also to transfer into OSC messages. The Open Sound Control (OSC) is a content format for messaging among computers, sound synthesizers, and other multimedia devices that are optimized for modern networking technology. Bringing the benefits of modern networking technology to the world of electronic musical instruments, OSC's advantages include interoperability, accuracy, flexibility, and enhanced organization and documentation.
For interpreting OSC messages I used OSCulator. This software is mapping and routing OSC messages to different targets. In this case the mapping is converting OSC messages sent by my Processing script to MIDI packets delivered to Ableton Live.
What worked what didn't
Mainly what it didn't work was the Radio boards. I tried my best and made the checklist necessary in order to find the fail in the board but it was not possible. I spent many days just working on that boards and at the end they don't work and I don't know how. Francisco, our instructor encouraged me to change and solve the situation rapidly cause I wasted too much time on the radios. I had the feeling of failing and desperation but one again he told me that for sure I would learned from it. And sure I did.
What I learned
Basic Functionality is important and necessary. I felt bad cause I could not made the wireless connection but in the other hand I could test that the case works, that the electronics work: the accelerometer, my microprocessor with the ATMEGA 328 and also all the interface application programming. Every time the case is moving it converts the movement into music. I learned that due to coding and digital fabrication I can make interesting sounds that I was not sure that this could be possible before. Fab Academy gave me the oportunity to test it and it was fun to make this work.
You can download all the files related to this project here.