Week 1: Project management

For week one, most of the assignments are spread over this site. The page itself is one of them, the initial plan for the final project it's on the final project section, and I don't believe someone following a tutorial (git) is something worth documentation.

I can say I've been fiddling with git before, but not deep enough, I used Subversion on my first job, but now I'm switching fully to git.

As for the text editors, I'm now trying between atom and brackets, but I have to tinker a little bit more with the extensions in order to make a final decision, but definitely one of these is going to substitute Notepad++, my current text editor. I don't think I have the time to retake learning eMacs. I'm liking Atom's HTML preview inside the editor (additional package) more than live preview on Brackets, but as for autocompletion, I'm preferring Brackets.

Getting started

So, for the first week, let's design the page and get started with the tools for planning the next 24 weeks. The initial idea is to keep here a log of the work, but as the final project and assignments have their own sections, I don't know if will be much left to put here. Anyway, I'll review the content in 3-4 weeks and will make changes to the web structure if necessary.

I'm starting with FabAcademy template David used on the fabLAB's page. I have some experience with server-side web development but not so much with JS. Once I finish the final project plan I'm going to use another Bootstrap template and use the opportunity to branch the project.

So for creating the webpage, first thing was to pull the initial commit for fabLAB Asturias that David made. I'm using GIT bash for Windows, so first I need to navigate to a location where I want to have my local repository of the webpage and clone the project.

git clone git@git.fabacademy.org:fabacademy2016/fablabasturias.git

That will copy the current state of the project to my local folder. What I do now is to create folders and files needed locally. Every change that I want to save I do it both by saving files and by committing it to the repository. This is done by writing:

git add .

git commit -m "some comment about what's on the commit"

The first line, adds content to be updated, by using the dot, all content (except for .gitignore files and folders) is revised for changes. The second line commits those changes made but only on the local repository. Every commit has to have a comment, if you don't use the "-m" option followed by the comment, it will open an associated text editor which is Vi by default but can be changed trough global configuration. Once all changes are made and I want to actually, put that content available online, what I have to do is:

git push

And in this case it asks for user and password for the fablabs.io account

Brackets with live preview on the right

Final project planning

I don't think this is really going to be my final project, but if can't come with something better (a machine would be great), I don't think is a bad idea. It's a wearable top with turning lights for cyclists. I know, I know, nothing new right? Probably just one of first the most useful projects made with Arduino Lilypad by Leah Buechley. But what I'm thinking of, is a universal top, that you can use with whatever you're wearing. I have to confess that I drive more than I ride, but I consider myself very respectful with cyclist because I am one sometimes. But I cannot believe people go ride at night without any lights.

Project description:

This project aims to design and make the prototype of a light system for cyclists that can be used over any clothes.

The system includes at least a couple of turning lights that can be activated by switches, as near as possible to the hand for being comfortable to activate and avoiding false activations.

The system may include also other lights like auxiliary front and rear light, though I would personally prefer to have those installed on the bike. But more interesting would be a braking light.

This braking light could be operated by sensing when the brake levers are activated or inertially operated, by using an inertial measurement unit.

Sketch

Final project week 1 sketch

Main tasks

Review existing solutions

Looking for inspiration and maybe for some useful mistake information that would come in handy, the first task would be to research existing wearable and non-wearable light systems for bicycles. Also maybe search for some brake detection using common IMUs and microprocessors

Textile pattern design

This would be everything about whatever is needed for designing the textile part, from materials, pattern of the textile, clips, belts or whatever is used to wear the project.

Electronic circuit design and microcontroller programming

Starting with the lights, how to power them, and the integration of the switches. Then when the brake light is added, programming the microcontroller to detect deceleration and light the brake.

Update: new final project

As the Fab Academy came to an end I decided after the composites assignment to change my project and make something using the composite parabolic reflector I've made. So the rest of the final project, SoundFlower can be found in the final project page.

Machines and software used

SO: Windows 10
Brackets (text editor)
Atom (text editor)
Krita (drawing app)
Git (version control)