Permalink
Browse files

Merge branch 'master' of github.com:it2901g10/GROUP10-baf_sintef_arduino

  • Loading branch information...
roffelsaurus committed May 23, 2012
2 parents 900718d + e54d631 commit d9ec567fc3ceeb0d6ec4905207d83ce99112c8ba
Showing with 327 additions and 270 deletions.
  1. +14 −14 documentation/report/files/appendix/firstdraftarchi.tex
  2. +4 −4 documentation/report/files/appendix/meetingminutes/2001.tex
  3. +5 −5 documentation/report/files/appendix/meetingminutes/2301.tex
  4. +3 −2 documentation/report/files/appendix/weekreports/STATUSREPORTWEEK4.tex
  5. +2 −2 documentation/report/files/appendix/weekreports/STATUSREPORTWEEK5.tex
  6. +2 −2 documentation/report/files/appendix/weekreports/STATUSREPORTWEEK6.tex
  7. +1 −1 documentation/report/files/appendix/weekreports/STATUSREPORTWEEK7.tex
  8. +2 −2 documentation/report/files/appendix/weekreports/STATUSREPORTWEEK8.tex
  9. +2 −2 documentation/report/files/appendix/weekreports/STATUSREPORTWEEK9.tex
  10. +91 −77 documentation/report/files/architecture.tex
  11. +2 −0 documentation/report/files/bibliography.tex
  12. +30 −32 documentation/report/files/conclusion.tex
  13. +14 −14 documentation/report/files/intro.tex
  14. +9 −7 documentation/report/files/management.tex
  15. +9 −11 documentation/report/files/prestudies.tex
  16. +27 −28 documentation/report/files/requirements.tex
  17. +75 −56 documentation/report/files/sprints.tex
  18. +8 −8 documentation/report/files/systest.tex
  19. BIN documentation/report/img/app-fb.png
  20. BIN documentation/report/img/app-generic.png
  21. BIN documentation/report/img/app-jacket.png
  22. BIN documentation/report/img/app-led.png
  23. BIN documentation/report/img/app-temp.png
  24. BIN documentation/report/img/app-twitter.png
  25. BIN documentation/report/img/blingled-schematic.png
  26. BIN documentation/report/img/osnap-generic.png
  27. BIN documentation/report/img/sprints-gantt1.png
  28. BIN documentation/report/img/sprints-gantt2.png
  29. BIN documentation/report/img/sprints-gantt3.png
  30. BIN documentation/report/img/sprints-gantt4.png
  31. BIN documentation/report/img/sprints-gantt5.png
  32. BIN documentation/report/img/sprints-gantt6.png
  33. BIN documentation/report/img/sprints-gantt7.png
  34. BIN documentation/report/img/sprints-gantt8.png
  35. BIN documentation/report/img/sprints-gantt9.png
  36. +25 −1 documentation/report/report.tex
  37. +1 −1 documentation/report/title.tex
  38. +1 −1 documentation/report/winmake.bat
@@ -1,4 +1,4 @@
-The client asks for a java framework that works on either Android or desktop, to support the connection between a Arduino board and social services.
+The client asks for a Java framework that works on either Android or desktop, to support the connection between a Arduino board and social services.
If a programmer wants to use the framework to connect a social service to the Arduino board, he would like to work with data in either end and forward it.
@@ -15,16 +15,16 @@
This illustrates a split in the middle where the developer wants to treat the data himself. Since there is no direct connection between a social service and the Arduino board from our framework, it makes sense to split the framework into two parts.
\begin{itemize}
- \item\textbf{Framework part one:} Retrieving and uploading data between social service and java.
- \item\textbf{Framework part two:} Grab and push data between the Arduino board and java.
+ \item\textbf{Framework part one:} Retrieving and uploading data between social service and Java.
+ \item\textbf{Framework part two:} Grab and push data between the Arduino board and Java.
\end{itemize}
Both frameworks would need to support Android and development. This is an advantage for us who is going to create the framework, and for those who are going to use it.
The disadvantage is that it will be no direct connection from the Arduino board to a social service.
-I.e, the board can not connect directly through the Internet to Facebook. It needs a middleman, either a Android phone or a laptop.
+I.e, the board can not connect directly through the Internet to Facebook. It needs a middleman, either an Android phone or a laptop.
-After some tests, we have figured out that it makes no difference if the Arduino board is connected through a Bluetooth device or trough an USB cable. If it's an USB cable, the board shows up as a COM port. If the board is paired with the computer/mobile using the operating system/Android, it also shows up as a COM port. So the program searches the COM ports and connects to the board anyhow. (It's may not work on all bluetooth chipsets)
+After some tests, we have figured out that it makes no difference if the Arduino board is connected through a Bluetooth device or trough an USB cable. If it's an USB cable, the board shows up as a COM port. If the board is paired with the computer/mobile using the operating system/Android, it also shows up as a COM port. So the program searches the COM ports and connects to the board anyhow. (It may not work on all bluetooth chipsets)
The board needs a firmware that is precompiled on a computer.
@@ -41,7 +41,7 @@
\section{Example run framework part 1}
-How the developer connects to board on Android/PC after pairing the Arduino with system.
+How the developer connects to the board on Android/PC after pairing the Arduino with the system.
\javacode
\begin{lstlisting}
@@ -100,27 +100,27 @@ \section{Adding a listener to shield}
In ArduinoConnection we have listenForData(); method, that has its own thread listening on it.
Steps:
-listenForData() recives a ArduinoPacked data from Arduino board.
+listenForData() recives an ArduinoPacket data from the Arduino board.
Thread looks in board.shields to find the same board as packet.getName().
It dumps the package into the shield.newArrivalPackage(dataPackage);
-It is then up to the shield class to extract the data from package, and fire off an ArduinoEvent to the listeners.
+It is then up to the shield class to extract the data from this package, and fire off an ArduinoEvent to the listeners.
\section{Constant data stream solutions}
-Some shields, like the accelerometer is sensitive and will always send data to the program. On a mobile phone who constantly needs to work on these packages this will be straining on the battery.
+Some shields, like the accelerometer is sensitive, and will always send data to the program. On a mobile phone who constantly needs to work on these packages this will be straining on the battery.
-The constantStream threshold value is a signal to the ArduinoBoard to indicate how often in will update.
+The constantStream threshold value is a signal to the ArduinoBoard to indicate how often it will update.
Threshold = 0.0f; means all data will be streamed
-Threshold = 1.0f; means no data will be send from shield to the program. You can only retrieve data by specifically asking for it.
+Threshold = 1.0f; means no data will be sent from the shield to the program. You can only retrieve data by specifically asking for it.
-A mid value is dependent on the Shields connected, if the accelerometer has upper values in x,y,z directions from $<-1000, 1000>$, a threshold of $0.8f$ indicates we need extreme sudden change of $\Delta(0.8*2000)$ in one of the x,y,z axis to send a notification from the Arduino board.
+A mid value is dependent on the Shields connected to the Arduino, if the accelerometer has upper values in x,y,z directions from $<-1000, 1000>$, a threshold of $0.8f$ indicates we need an extreme sudden change of $\Delta(0.8*2000)$ in one of the x,y,z axis to send a notification from the Arduino board.
-Example, extremely sudden change (In one cycle?) from -700 to +800 in x direction.
+Example, an extremely sudden change (In one cycle?) from -700 to +800 in x direction.
It's not yet clear if we can implement this function into the firmware.
@@ -132,7 +132,7 @@ \section{Example run framework part 2}
//Facebook.com
SocialService service = new FacebookService(FacebookSevice.getAppAuth("appName"));
-//The initateLogin will call up a browser window and request user to log in
+//The initateLogin will call up a browser window and request the user to log in
//(automatically handle the calls depending if its called from Android or PC)
service.initateLogin();
@@ -38,7 +38,7 @@ \subsection{To do to next meeting}
Emanuele:
\begin{itemize}
-\item Find available Facebook APIs, document on Open Social, Apache Shindig..
+\item Find available Facebook APIs, documents on Open Social, Apache Shindig..
\end{itemize}
Asbjorn:
@@ -48,21 +48,21 @@ \subsection{To do to next meeting}
Anders and Bjørnar:
\begin{itemize}
-\item Connect arduino to java
+\item Connect Arduino to Java
\end{itemize}
Johan:
\begin{itemize}
\item OpenSocial, Java $\rightarrow$ Arduino
-\item Send two mail
+\item Send two mails:
\item To SINTEF
\item To reception to book room Friday 4th floor at 14:15 every week
\end{itemize}
\subsection{Next meeting}
Monday 23/01 GreenHouse
-Discuss brainstorm/possiblities
+Discuss brainstorm/possibilities
Get a meeting room at Friday at 14, to meet with the client
@@ -5,7 +5,7 @@ \subsection{Agenda}
We will probably use the Java Facebook API library restFB.
Shared some ideas. Discussed a little bit on the development process to use.
Will probably adopt Scrum as development process, given the iterative nature of our work schedule and of the meetings with customer.
-Realized a proof of concept consisting in a led turned on by Arduino if there is any unread notification on Facebook.
+Realized a proof of concept consisting of a LED turned on by the Arduino, if there is any unread notifications on Facebook.
{\bf Henrik: } \newline
\begin{itemize}
@@ -25,7 +25,7 @@ \subsection{Agenda}
Results
\begin{itemize}
-\item Git and mailinglist up
+\item Git and mailing-list up
\end{itemize}
{\bf Emanuele: } \newline
@@ -35,7 +35,7 @@ \subsection{Agenda}
Results
\begin{itemize}
-\item Read the Facebook developers pages (Facebook Graph API, Access tokens..)
+\item Read the Facebook developers pages (Facebook Graph API, access tokens..)
and Open Social documentation.
\item It turned out Facebook does not implement the Open Social standard. restFB, a simple, flexible, actively developed and permissively licensed (MIT) Java Facebook API was found and used to code a small program that checks for unread notifications.
\end{itemize}
@@ -54,7 +54,7 @@ \subsection{Agenda}
{\bf Anders and Bjørnar: } \newline
\begin{itemize}
-\item Connect Arduino to java
+\item Connect Arduino to Java
\end{itemize}
Results
@@ -79,7 +79,7 @@ \subsection{Agenda}
\subsection{Next meeting}
{\bf Henrik: } \newline
-Create idea presentations for Client.
+Create idea presentations.
{\bf Jonas and Johan: } \newline
Collaboration tools
@@ -1,11 +1,12 @@
First weeks status report where major directional decisions will be explained.
\subsection{Progress summary}
-The starting weeks work was mainly focused on identifying the specifics of our task and for every group member to start individual research into possibilities in Arduino, Facebook APIs, other social network APIs and then reporting it back to the group at our meetings. Together we tried to find good concepts for the Tangible User Interface(TUI) product that we was going to make. We had a meeting with the customer on the friday where we discussed our concepts. In this meeting the customer voiced wishes for the project to go in a more general direction than focusing on specific tangible end products. We was going to make a framework where creating products with an Arduino chip was lessened in complexity both for the developer and the end user.
+The starting weeks work was mainly focused on identifying the specifics of our task. Each group member started individual research into possibilities of Arduino, Facbook APIs and other social network APIs, findings were reported back to group at the meetings.
+Together we tried to come up with good concepts for the Tangible User Interface(TUI) product that we was going to make. We had a meeting with the customer on the friday where we discussed our concepts. In this meeting the customer voiced wishes for the project to go in a more general direction than focusing on specific tangible end products. We were going to make a framework where creating products with an Arduino chip was lessened in complexity both for the developer and the end user.
We also got Arduino products(Bluetooth module etc) from Simone Mora from IDI.
\subsection{Open / closed problems}
-The direction the project should pursue in regards to the TUI and platform choice became clear on the meeting with the customer.
+The direction the project should pursue in regards to the TUI and platform choice became clear in the meeting with the customer.
How well the Arduino chip could handle wireless connections(Bluetooth, WiFi or Zigby) is an open problem.
\subsection{Planned work for next period}
@@ -1,10 +1,10 @@
A report of a very productive week with some breakthroughs and setbacks.
\subsection{Progress summary}
-We started by working on the tasks set forth. We got the Bluetooth module(SHIELD) to work much faster than we planned for so we set the bar higher and started working on a general protocol to be used for communication between Arduino and computers regardless of technology (USB,BT,WiFi etc). We also had people work on getting a working Facebook application fetch data from Facebook (last post on Facebook wall). Getting a bluetooth connection between Android and Arduino was also a challenging task that we got working by the end of the week. Our results this week was presented to the customer on the friday as we had agreed on. Our progress relative to our plan is very good, we are actually ahead of schedule.
+We started by working on the tasks set forth. We got the Bluetooth module(SHIELD) to work much faster than we had planned for. Therefore we set the bar higher and started working on a general protocol to be used for communication between Arduino and computers regardless of technology (USB,BT,WiFi etc). We also had people working on getting a working Facebook application fetch data from Facebook (last post on Facebook wall). Getting a bluetooth connection between Android and Arduino was also a challenging task that we got working by the end of the week. Our results this week was presented to the customer on the friday as we had agreed on. Our progress relative to our plan is very good, we are actually ahead of schedule.
We also started working on the preliminary report that is due in WEEK 6. We chose to write this in LaTeX language as this is the most powerful way to customise the style of our report.
-In the meeting with the customer we had to revise our plan regarding to the Android framework. The way social networks/applications connect to our framework should be with intents(an Android standard) and the framework should be highly flexible in regards to which applications can work on it. This lead us to reject some of the code we had made for Facebook fetching, Android Bluetooth talking amongst other things.
+In the meeting with the customer we had to revise our plan regarding to the Android framework. The way social networks/applications connect to our framework should be with intents(an Android standard) and that the framework should be highly flexible in regards to which applications it can work on. This lead us to reject some of the code we had made for Facebook fetching, Android Bluetooth talking amongst other things.
We also established working process management tools in GitHub and ScrumDo (www.scrumdo.com).
@@ -1,11 +1,11 @@
\subsection{Progress summary}
-This week we needed to do a lot of replanning because of the changes from last week. We also did work relating to how to break down tasks to a scrum environment. Further work also needed to be done relating to the arduino protocol, bluetooth implementation for android. We also had people researching and developing the android social media integration part of the project and progress was done in this area.
+This week we needed to do a lot of re-planning because of the changes from last week. We also did work relating to how to break down tasks to a scrum environment. Further work also needed to be done relating to the Arduino protocol, and to the Bluetooth implementation for Android. We also had people researching and developing the Android social media integration part of the project and progress was done in this area.
\subsection{Open / closed problems}
Closed: The main goal and requirements of the project was defined and is documented in reports.
Open:
-Protocol, bluetooth, social media all need refinement to fit in the scope of the project as it stands.
+Protocol, Bluetooth, social media all need refinement to fit in the scope of the project as it stands.
\subsection{Planned work for next period}
@@ -1,5 +1,5 @@
\subsection{Progress summary}
-This week we had discussions on which process we should use. Xtreme Programming, spiral and others were considered but we concluded that a modified version of scrum like we previously decided on was feasible. This would also be the most reasonable choice to promote continuity with past work. Other than this we had a slow week with not much progress in regards to programming, rather we focused on process and planning work.
+This week we had discussions on which development process we should use. Xtreme Programming, spiral and others were considered but we concluded that a modified version of scrum like we previously decided on was feasible. This would also be the most reasonable choice to promote continuity with past work. Other than this we had a slow week with not much progress in regards to programming, rather we focused on process and planning work.
\subsection{Open / closed problems}
Closed: Final decision on using scrum as development/process system.
@@ -1,8 +1,8 @@
\subsection{Progress summary}
-Further refinement of the communication library. We had some initial planning of several prototypes that would supplement the main T-Shirt idea. One of them was a LED light Mood indicator fetched from Myspace. We also had more planning and research programming going into the social library, but much work remains to be done on this part.
+Further refinement of the communication library. We had some initial planning of several prototypes that would supplement the main T-Shirt idea (T-shirt was replaced by a jacket later in the project). One of them was a LED light Mood indicator fetched from Myspace. We also had more planning and research programming going into the social library, but much work remains to be done on this part.
Open:
-ComLib(bluetooth arduino-android comm)
+ComLib(Bluetooth Arduino-Android comm)
Social Library
Prototypes
@@ -1,7 +1,7 @@
\subsection{Progress summary}
-This week much planning and design discussions was had on the social library. Progress was done
+This week much planning and design discussions were made regards to the social library. Progress was done
and now the work of implementing some of this is to be undertaken. The communication library
-between arduino and android bluetooth is finished pending further development. The mid-term report is
+between Arduino and Android Bluetooth is finished pending further development. The mid-term report is
due next week, so we started working on that as well.
Open:
Oops, something went wrong.

0 comments on commit d9ec567

Please sign in to comment.