| 1 | % ------------------------------------------------------------------
|
|---|
| 2 | %
|
|---|
| 3 | % TITLE: OSSIE Installation and User Guide 0.8.2
|
|---|
| 4 | % AUTHORS: Matt Carrick, Drew Cormier, Christopher Covington,
|
|---|
| 5 | % Carl B. Dietrich, Mike Ekoniak, Joseph Gaeddert, Benjamin Hilburn,
|
|---|
| 6 | % C. Ian Phelps, Shereef Sayed, Jason Snyder, Haris Volos
|
|---|
| 7 | % CREATED:
|
|---|
| 8 | % REVISED:
|
|---|
| 9 | % URL: http://ossie.wireless.vt.edu/
|
|---|
| 10 | %
|
|---|
| 11 | % ------------------------------------------------------------------
|
|---|
| 12 |
|
|---|
| 13 | \documentclass[11pt]{article}
|
|---|
| 14 |
|
|---|
| 15 | \setlength{\textwidth}{6.5in}
|
|---|
| 16 | \setlength{\textheight}{8.2in}
|
|---|
| 17 | \setlength{\evensidemargin}{0in}
|
|---|
| 18 | \setlength{\oddsidemargin}{0in}
|
|---|
| 19 | \setlength{\topmargin}{0in}
|
|---|
| 20 | \setlength{\parindent}{0pt}
|
|---|
| 21 | \setlength{\parskip}{0.1in}
|
|---|
| 22 |
|
|---|
| 23 | \newcommand{\describeossiedemo}{The demonstration waveform simulates a very
|
|---|
| 24 | basic QPSK communication system. It consists of three components: a transmitter,
|
|---|
| 25 | a channel, and a receiver. The transmitter generates bursts of 512 QPSK symbols
|
|---|
| 26 | that are sent through an AWGN channel and decoded by the receiver. The number of
|
|---|
| 27 | errors per burst will be printed out on the screen while the waveform runs.}
|
|---|
| 28 |
|
|---|
| 29 | \newcommand{\ossieversion}{0.8.2}
|
|---|
| 30 |
|
|---|
| 31 | %@usepackage{html}
|
|---|
| 32 | %@usepackage{verbatim}
|
|---|
| 33 |
|
|---|
| 34 | %@begin{comment}
|
|---|
| 35 | \usepackage{listings}
|
|---|
| 36 | \usepackage{amssymb}
|
|---|
| 37 | %@end{comment}
|
|---|
| 38 |
|
|---|
| 39 | \usepackage{appendix}
|
|---|
| 40 | \usepackage[pdftex]{graphicx}
|
|---|
| 41 | \usepackage{url}
|
|---|
| 42 |
|
|---|
| 43 | % ------------------- BIBLIOGRAPHY STYLE -------------------
|
|---|
| 44 | \usepackage[sort]{natbib}
|
|---|
| 45 | \bibliographystyle{plain} % note the change here
|
|---|
| 46 | %\bibliographystyle{IEEEtran}
|
|---|
| 47 | \bibpunct{[}{]}{,}{n}{}{;} % define bibliography punctuation
|
|---|
| 48 | % The six mandatory arguments for \bibpunct are:
|
|---|
| 49 | % 1. opening bracket: '(', '[', '{', or '<'
|
|---|
| 50 | % 2. closing bracket: ')', ']', '}', or '>'
|
|---|
| 51 | % 3. separator between multiple citations: ';' or ','
|
|---|
| 52 | % 4. citation style: 'n' for numerical style, 's' for numerical superscript style, or 'a' for authorÃyear style
|
|---|
| 53 | % 5. punctuation between the author names and the year
|
|---|
| 54 | % 6. punctuation between years or numbers when common author lists are suppressed: ',' or ';'
|
|---|
| 55 |
|
|---|
| 56 | %@begin{comment}
|
|---|
| 57 | % due to magic hacks, hyperref must be right before document begin
|
|---|
| 58 | \usepackage[pdftex]{hyperref}
|
|---|
| 59 | \usepackage{wrapfig}
|
|---|
| 60 | \hypersetup{colorlinks,
|
|---|
| 61 | citecolor=blue,
|
|---|
| 62 | filecolor=blue,
|
|---|
| 63 | linkcolor=blue,
|
|---|
| 64 | urlcolor=blue,
|
|---|
| 65 | pdftex}
|
|---|
| 66 | %@end{comment}
|
|---|
| 67 |
|
|---|
| 68 | % ------------------- MAIN DOCUMENT -------------------
|
|---|
| 69 | \begin{document}
|
|---|
| 70 | \thispagestyle{empty}
|
|---|
| 71 | \pagenumbering{roman}
|
|---|
| 72 |
|
|---|
| 73 | %@begin{comment}
|
|---|
| 74 | \definecolor{MyCommentColor}{rgb}{0.1,0.4,0.1}
|
|---|
| 75 | \definecolor{MyCodeBackgroundColor}{rgb}{0.95,0.95,0.95}
|
|---|
| 76 | %\definecolor{MyCodeFrameRuleColor}{rgb}{0.9,0.9,0.9}
|
|---|
| 77 | \definecolor{MyStringColor}{rgb}{0.6,0.1,0.1}
|
|---|
| 78 | \definecolor{MyKeywordColor}{rgb}{0.6,0.1,0.1}
|
|---|
| 79 |
|
|---|
| 80 | % define lstlistings style
|
|---|
| 81 | % (see http://tug.ctan.org/tex-archive/macros/latex/contrib/listings/)
|
|---|
| 82 | \lstloadlanguages{[GNU]C++,Python,[CORBA]IDL,sh}
|
|---|
| 83 |
|
|---|
| 84 | \lstset{% general command to set parameter(s)
|
|---|
| 85 | basicstyle=\small\ttfamily, % print whole listing small
|
|---|
| 86 | keywordstyle=\color{MyKeywordColor}\bfseries,
|
|---|
| 87 | identifierstyle=\color{black},
|
|---|
| 88 | commentstyle=\color{MyCommentColor}, % define color and sytle of comments
|
|---|
| 89 | stringstyle=\ttfamily\color{MyStringColor}, % typewriter type for strings
|
|---|
| 90 | %showstringspaces=false, % no special string spaces
|
|---|
| 91 | backgroundcolor=\color{MyCodeBackgroundColor},
|
|---|
| 92 | frame=none,
|
|---|
| 93 | %framerule=0.5pt,
|
|---|
| 94 | %framexleftmargin=2pt,
|
|---|
| 95 | %framexrightmargin=2pt,
|
|---|
| 96 | %framexbottommargin=2pt,
|
|---|
| 97 | %framextopmargin=2pt,
|
|---|
| 98 | %rulecolor=\color{MyCodeFrameRuleColor},
|
|---|
| 99 | nolol=true, % suppress listoflistings entry
|
|---|
| 100 | tabsize=4,
|
|---|
| 101 | linewidth=\linewidth,
|
|---|
| 102 | breaklines=false,
|
|---|
| 103 | xleftmargin=6pt,
|
|---|
| 104 | xrightmargin=6pt
|
|---|
| 105 | }
|
|---|
| 106 | %@end{comment}
|
|---|
| 107 |
|
|---|
| 108 | {\huge OSSIE \ossieversion\ Installation and User Guide\\}
|
|---|
| 109 |
|
|---|
| 110 | %\vfill
|
|---|
| 111 |
|
|---|
| 112 | {\sf Matt Carrick, Drew Cormier, Christopher Covington, Carl B. Dietrich, \\
|
|---|
| 113 | Joseph Gaeddert, Benjamin Hilburn, C. Ian Phelps, Shereef Sayed, \\
|
|---|
| 114 | Deepan Seeralan, Jason Snyder, Haris Volos}
|
|---|
| 115 |
|
|---|
| 116 | \vfill
|
|---|
| 117 |
|
|---|
| 118 | April, 2011
|
|---|
| 119 |
|
|---|
| 120 |
|
|---|
| 121 | \vfill
|
|---|
| 122 |
|
|---|
| 123 | \begin{figure*}[!ht]
|
|---|
| 124 | \centering
|
|---|
| 125 | \includegraphics[width=6in]{figures/alf_screenshot_00.png}
|
|---|
| 126 | \end{figure*}
|
|---|
| 127 |
|
|---|
| 128 | \vfill
|
|---|
| 129 |
|
|---|
| 130 | OSSIE is an open source Software Defined Radio (SDR) development effort based
|
|---|
| 131 | at Virginia Tech. OSSIE is primarily intended to enable research and education
|
|---|
| 132 | in SDR and wireless communications. The software package includes an SDR core
|
|---|
| 133 | framework based on the JTRS Software Communications Architecture, tools
|
|---|
| 134 | for rapid development of SDR components and waveforms (applications), and an
|
|---|
| 135 | evolving library of pre-built components and waveforms. In addition, free
|
|---|
| 136 | laboratory exercises for SDR education and training are being developed in
|
|---|
| 137 | cooperation with the Naval Postgraduate School.\\
|
|---|
| 138 |
|
|---|
| 139 | \begin{center}
|
|---|
| 140 | {\sf\small OSSIE is the Open Source SCA Implementation::Embedded}
|
|---|
| 141 | \end{center}
|
|---|
| 142 |
|
|---|
| 143 | \pagebreak
|
|---|
| 144 | \tableofcontents
|
|---|
| 145 | %@begin{comment}
|
|---|
| 146 | \lstlistoflistings
|
|---|
| 147 | %@end{comment}
|
|---|
| 148 |
|
|---|
| 149 | \pagebreak
|
|---|
| 150 | \pagenumbering{arabic}
|
|---|
| 151 |
|
|---|
| 152 | % ------------------- Quick Start Guide -------------------
|
|---|
| 153 | \newpage
|
|---|
| 154 | \input{QuickStartGuide}
|
|---|
| 155 |
|
|---|
| 156 | % ------------------- Introduction -------------------
|
|---|
| 157 | \newpage
|
|---|
| 158 | \input{Introduction}
|
|---|
| 159 |
|
|---|
| 160 | % ------------------- Installation Guide -------------------
|
|---|
| 161 | \newpage
|
|---|
| 162 | \input{Installation}
|
|---|
| 163 |
|
|---|
| 164 | % ------------------- Running Waveforms -------------------
|
|---|
| 165 | \newpage
|
|---|
| 166 | \input{RunningWaveforms}
|
|---|
| 167 |
|
|---|
| 168 | % ------------------- Waveform Workshop -------------------
|
|---|
| 169 | \newpage
|
|---|
| 170 | \input{WaveformWorkshop}
|
|---|
| 171 |
|
|---|
| 172 | % ------------------- OEF Guide -------------------
|
|---|
| 173 | \newpage
|
|---|
| 174 | \include{OEFGuide}
|
|---|
| 175 |
|
|---|
| 176 | % ------------------- OWD Guide -------------------
|
|---|
| 177 | \newpage
|
|---|
| 178 | \include{OWDGuide}
|
|---|
| 179 |
|
|---|
| 180 | % ------------------- ALF Guide -------------------
|
|---|
| 181 | \newpage
|
|---|
| 182 | \include{ALFGuide}
|
|---|
| 183 |
|
|---|
| 184 | % ------------------- WaveDash Guide -------------------
|
|---|
| 185 | \newpage
|
|---|
| 186 | \include{WaveDash}
|
|---|
| 187 |
|
|---|
| 188 | % ------------------- wavecli.py Guide -----------------
|
|---|
| 189 | \newpage
|
|---|
| 190 | \include{wavecli}
|
|---|
| 191 |
|
|---|
| 192 | %-------------------- Uninstallation -------------------
|
|---|
| 193 | \newpage
|
|---|
| 194 | \include{Uninstallation}
|
|---|
| 195 |
|
|---|
| 196 | % ------------------- Helping With Development -------------------
|
|---|
| 197 | \newpage
|
|---|
| 198 | \input{HelpingWithDevelopment}
|
|---|
| 199 |
|
|---|
| 200 | % ------------------- Troubleshooting -------------------
|
|---|
| 201 | \newpage
|
|---|
| 202 | \input{Troubleshooting}
|
|---|
| 203 |
|
|---|
| 204 | % ------------------- NoCites -------------------
|
|---|
| 205 | \nocite{vmware:web}
|
|---|
| 206 | \nocite{irctutorial:web}
|
|---|
| 207 | \nocite{writingbugreports:web}
|
|---|
| 208 | \nocite{Bard:2007}
|
|---|
| 209 | \nocite{Buracchini:2000}
|
|---|
| 210 | \nocite{Reed:2002}
|
|---|
| 211 | \nocite{jtrssca:web}
|
|---|
| 212 |
|
|---|
| 213 | % ------------------------------------------------------------------
|
|---|
| 214 | %
|
|---|
| 215 | % APPENDICES
|
|---|
| 216 | %
|
|---|
| 217 | % ------------------------------------------------------------------
|
|---|
| 218 | \pagebreak
|
|---|
| 219 | \appendix
|
|---|
| 220 | \appendixpage
|
|---|
| 221 | \addappheadtotoc
|
|---|
| 222 |
|
|---|
| 223 | % -------------------- managing services --------------------------
|
|---|
| 224 | \section{Managing Services on Fedora Core 9}
|
|---|
| 225 | \label{appendix:services}
|
|---|
| 226 | Controlling which services are currently running on your computer and which
|
|---|
| 227 | start up with your computer is very easy with Fedora Core's Service
|
|---|
| 228 | Configuration interface. From the GNOME taskbar, click
|
|---|
| 229 | System$\to$Administration$\to$Services. You will need to enter your root (system
|
|---|
| 230 | administrator) password to use the dialog. The window that pops up shows you
|
|---|
| 231 | all of the available services on your computer. Services that have a check in
|
|---|
| 232 | the box next to them are currently running. To turn a service on or off,
|
|---|
| 233 | simply click the box, or select it and press the `Start' or `Stop' button at
|
|---|
| 234 | the top of the list.
|
|---|
| 235 |
|
|---|
| 236 | In order to edit which services start with your computer when it boots, you need
|
|---|
| 237 | to know a little about runlevels. You computer has several different
|
|---|
| 238 | runlevels. The one you are most concerned with is runlevel 5. Runlevel 5 means
|
|---|
| 239 | multiuser X-server mode. Generally speaking, if you are using a graphical
|
|---|
| 240 | interface then you are in runlevel 5.
|
|---|
| 241 |
|
|---|
| 242 | To have omniNames start with your computer, select it in the services list,
|
|---|
| 243 | click `Edit Runlevel' on the top menubar, and select runlevel 5. Click
|
|---|
| 244 | the save button to save your configuration.
|
|---|
| 245 |
|
|---|
| 246 | That's it! The next time you start your computer, omniNames will start running
|
|---|
| 247 | automatically.
|
|---|
| 248 |
|
|---|
| 249 | % ------------------- omniNames.sh -------------------
|
|---|
| 250 | \section{Creating {\tt omniNames.sh}}
|
|---|
| 251 | \label{appendix:omninamessh}
|
|---|
| 252 | Installing omniORB from RPM automatically starts the naming service when the
|
|---|
| 253 | system boots.
|
|---|
| 254 | If omniORB was {\it not} installed using RPM, the naming service will
|
|---|
| 255 | probably need to be started manually.
|
|---|
| 256 | To do so, create a file called {\tt omniNames.sh} containing the following
|
|---|
| 257 | \begin{lstlisting}[caption={{\tt omniNames.sh} file}, nolol=false]
|
|---|
| 258 | #!/bin/sh
|
|---|
| 259 |
|
|---|
| 260 | killall omniNames
|
|---|
| 261 | rm /sdr/logs/omninames*
|
|---|
| 262 |
|
|---|
| 263 | omniNames -start -logdir /sdr/logs &
|
|---|
| 264 | \end{lstlisting}
|
|---|
| 265 |
|
|---|
| 266 | Once this file is created, the file must be given executable permissions:
|
|---|
| 267 | \begin{lstlisting}[]
|
|---|
| 268 | $ chmod 755 omniNames.sh
|
|---|
| 269 | # cp omniNames.sh /usr/local/bin
|
|---|
| 270 | \end{lstlisting}
|
|---|
| 271 |
|
|---|
| 272 | Create a directory for the logs:
|
|---|
| 273 | \begin{lstlisting}[]
|
|---|
| 274 | $ mkdir /sdr/logs
|
|---|
| 275 | \end{lstlisting}
|
|---|
| 276 |
|
|---|
| 277 | The script can now be run by executing {\tt omniNames.sh} in any terminal.
|
|---|
| 278 | You can check to see if {\tt omniNames} is running by executing:
|
|---|
| 279 | \begin{lstlisting}[]
|
|---|
| 280 | $ nameclt list
|
|---|
| 281 | \end{lstlisting}
|
|---|
| 282 | If the naming service is {\it not} running you will see an error like:
|
|---|
| 283 | \begin{lstlisting}[]
|
|---|
| 284 | Unexpected error when trying to narrow the NamingContext.
|
|---|
| 285 | \end{lstlisting}
|
|---|
| 286 |
|
|---|
| 287 | % ------------------- ossie.pth -------------------
|
|---|
| 288 | \newpage
|
|---|
| 289 | \section{Configuring {\tt ossie.pth}}
|
|---|
| 290 | \label{appendix:ossiepth}
|
|---|
| 291 | In order for the Python tools to link properly, a Python path file must be
|
|---|
| 292 | created to point to the shared modules.
|
|---|
| 293 | The default {\tt ossie.pth} file is located under \\
|
|---|
| 294 | {\tt ossie-\ossieversion/src/system/ossie/idl/python/} and is installed by default in \\
|
|---|
| 295 | {\tt /usr/lib/pythonX.X/site-packages} when you install the ossie core
|
|---|
| 296 | framework libraries.
|
|---|
| 297 |
|
|---|
| 298 | If you did {\it not} install omniORBpy using an RPM, you might need to add \\
|
|---|
| 299 | {\tt /usr/local/lib/pythonX.X/site-packages} to {\tt ossie.pth}, where
|
|---|
| 300 | {\it X.X} corresponds to the specific version of Python installed on your
|
|---|
| 301 | system.
|
|---|
| 302 | Now reinstall by running {\tt python setup.py install} as root within the \\
|
|---|
| 303 | {\tt ossie-\ossieversion/system/ossie/idl/python/} directory:
|
|---|
| 304 | \begin{lstlisting}[]
|
|---|
| 305 | # cd ossie-0.8.1/system/ossie/idl/python/
|
|---|
| 306 | # python setup.py install
|
|---|
| 307 | \end{lstlisting}
|
|---|
| 308 |
|
|---|
| 309 | % ----------- source component creation ----------
|
|---|
| 310 | \newpage
|
|---|
| 311 | \section{Data Source Component Creation}
|
|---|
| 312 | \label{appendix:datasourcecreation}
|
|---|
| 313 | The component TxDemo will be used as an example on how to create a data source.
|
|---|
| 314 | When creating a component which is not a data source, typically only the function
|
|---|
| 315 | {\tt ProcessData} needs to be modified to include the desired operation. This is
|
|---|
| 316 | not the case for a source component, however. The code that needs to be updated in
|
|---|
| 317 | this example resides in the {\tt start}, {\tt stop}, and {\tt ProcessData} functions.
|
|---|
| 318 | Locate the directory {\tt components/TxDemo} and open the files TxDemo.h and TxDemo.cpp.
|
|---|
| 319 |
|
|---|
| 320 | In TxDemo.h, near the end of the file the following code will be listed:
|
|---|
| 321 | \begin{lstlisting}[]
|
|---|
| 322 | bool continue_processing(void);
|
|---|
| 323 | volatile bool thread_started;
|
|---|
| 324 | \end{lstlisting}
|
|---|
| 325 | The flag {\tt thread\_started} holds the state of the component; whether or not the
|
|---|
| 326 | component should continue sending data. A function {\tt continue\_processing} is also
|
|---|
| 327 | declared which will be used to check {\tt thread\_started} and determine if the component
|
|---|
| 328 | should continue sending packets.
|
|---|
| 329 |
|
|---|
| 330 | In TxDemo.cpp, locate the {\tt start} function and the following code will be listed:
|
|---|
| 331 | \begin{lstlisting}[]
|
|---|
| 332 | omni_mutex_lock l(processing_mutex);
|
|---|
| 333 | if (false == thread_started){
|
|---|
| 334 | thread_started = true; //initialize
|
|---|
| 335 | //Create the thread for the writer's processing function
|
|---|
| 336 | processing_thread = new omni_thread(Run, (void *) this);
|
|---|
| 337 |
|
|---|
| 338 | //Start the thread containing the writer's processing function
|
|---|
| 339 | processing_thread->start();
|
|---|
| 340 | }
|
|---|
| 341 | \end{lstlisting}
|
|---|
| 342 | This code creates a new thread and starts processing when the {\tt thread\_started}
|
|---|
| 343 | variable is set to true.
|
|---|
| 344 |
|
|---|
| 345 | Now locate the {\tt stop} function, and the following code will be listed:
|
|---|
| 346 | \begin{lstlisting}[]
|
|---|
| 347 | omni_mutex_lock l(processing_mutex);
|
|---|
| 348 | thread_started=false;
|
|---|
| 349 | \end{lstlisting}
|
|---|
| 350 | This code stops the processing on the thread by setting {\tt thread\_started} to false.
|
|---|
| 351 |
|
|---|
| 352 | Now locate the {\tt ProcessData} function, and the following code will be listed:
|
|---|
| 353 | \begin{lstlisting}[]
|
|---|
| 354 | while(continue_processing()) {
|
|---|
| 355 | // push data to output
|
|---|
| 356 | dataOutPort->pushPacket(I_out, Q_out);
|
|---|
| 357 |
|
|---|
| 358 | // wait
|
|---|
| 359 | usleep(packet_delay*1000);
|
|---|
| 360 | }
|
|---|
| 361 | \end{lstlisting}
|
|---|
| 362 | This code checks the function {\tt continue\_processing} to determine if packets should
|
|---|
| 363 | continue to be sent using {\tt pushPacket}. The {\tt usleep} function call is specific
|
|---|
| 364 | to TxDemo, and is not necessarily required in other data sources.
|
|---|
| 365 |
|
|---|
| 366 | The last section of code that must be created is the {\tt continue\_processing} function.
|
|---|
| 367 | The code for the function is listed as the following:
|
|---|
| 368 | \begin{lstlisting}[]
|
|---|
| 369 | bool TxDemo_i::continue_processing(void)
|
|---|
| 370 | {
|
|---|
| 371 | omni_mutex_lock l(processing_mutex);
|
|---|
| 372 | return thread_started;
|
|---|
| 373 | }
|
|---|
| 374 | \end{lstlisting}
|
|---|
| 375 |
|
|---|
| 376 | All of the code listings provided above are not created by default when a new component is
|
|---|
| 377 | generated, since the code is only required for source components. Instead, all of the
|
|---|
| 378 | code must be added by hand. The addition of the code will create the appropriate environment
|
|---|
| 379 | for the data source, and afterwards only the data creation must be added to the {\tt ProcessData}
|
|---|
| 380 | function.
|
|---|
| 381 |
|
|---|
| 382 | % ------------------- Known Bugs -------------------
|
|---|
| 383 | \include{Bugs}
|
|---|
| 384 |
|
|---|
| 385 |
|
|---|
| 386 | % ------------------- Abbreviations -------------------
|
|---|
| 387 | \input{Abbreviations}
|
|---|
| 388 |
|
|---|
| 389 | % ------------------------------------------------------------------
|
|---|
| 390 | %
|
|---|
| 391 | % BIBLIOGRAPHY
|
|---|
| 392 | %
|
|---|
| 393 | % ------------------------------------------------------------------
|
|---|
| 394 | \newpage
|
|---|
| 395 | \bibliography{UserGuide}
|
|---|
| 396 |
|
|---|
| 397 | % ------------------- Change Log -------------------
|
|---|
| 398 | \newpage
|
|---|
| 399 | \section{Change Log}
|
|---|
| 400 | \label{appendix:changelog}
|
|---|
| 401 |
|
|---|
| 402 | \subsection {OSSIE 0.8.2}
|
|---|
| 403 | All changes in 0.8.2 involve the tools
|
|---|
| 404 | \begin{enumerate}
|
|---|
| 405 | \item ALF tries to find a domain manager using a local naming service when ALF is first started. If a domain manager is not found using the local naming service, ALF pops up a dialog box. The user can then specify an IP address for a remote naming service or start a domain manager locally using icons in the ALF toolbar.
|
|---|
| 406 | \item The nodeBooter can now be started from either ALF or WaveDash by clicking on the right most icon in the tool bar (monitor with triangle/arrow). This allows the user to choose a domain manager and a device manager. The domain manager is optional and can be deselected.
|
|---|
| 407 | \item OEF 1.1.7 supports multiple instances of a component in a waveform, on the same node or on different nodes. In previous versions multiple instances were all assigned the same instantiation ID.
|
|---|
| 408 | \item OSSIE preferences file allows users the option to replace the default GPP license text with a license of their choice. From Eclipse menu bar: {\tt Window -> Preferences -> OSSIE -> License}, then paste in new license text.
|
|---|
| 409 | \item OEF now supports creating python components that use long, bool, and string properties.
|
|---|
| 410 | \item WaveDash now includes two new views: a command line interface and an HTTP server
|
|---|
| 411 | \item WaveDash backend now can run without X11. (wasn't included in 0.8.1 tarball, need to fix makefile)
|
|---|
| 412 | \end{enumerate}
|
|---|
| 413 |
|
|---|
| 414 | \subsection {OSSIE 0.8.1}
|
|---|
| 415 | \begin{enumerate}
|
|---|
| 416 | \item Components and Devices now accept standard command line parameters.
|
|---|
| 417 | \item ALF and WaveDash now use the CF::FileSystem to query for available components and applications.
|
|---|
| 418 | \item Distribution of components across multiple nodes is significantly simpler.
|
|---|
| 419 | \item Core Framework now supports boolean, char, and octal component property
|
|---|
| 420 | types.
|
|---|
| 421 | \item OEF 1.1.5 now supports node generation.
|
|---|
| 422 | \item WaveDash now supports updating property values immediately or on a
|
|---|
| 423 | per-component or per-waveform basis.
|
|---|
| 424 | %\item Wavedash backend now can run without X11. (wasn't included in 0.8.1 tarball, need to fix makefile)
|
|---|
| 425 | \end{enumerate}
|
|---|
| 426 |
|
|---|
| 427 | \subsection {OSSIE 0.8.0}
|
|---|
| 428 | \begin{enumerate}
|
|---|
| 429 | \item CF::FileSystem now encapsulates the Boost file system library
|
|---|
| 430 | \item Xerces has been replaced by TinyXML
|
|---|
| 431 | \item The install directory structure has changed to separate Domain management from Device management
|
|---|
| 432 | \item The nodeBooter and c\_wavLoader utilities support '-debug' level flag and any compatible ORB flags (i.e. -ORBInitRef)
|
|---|
| 433 | \end{enumerate}
|
|---|
| 434 |
|
|---|
| 435 | \subsection {OSSIE 0.7.4}
|
|---|
| 436 | \begin{enumerate}
|
|---|
| 437 | \item Addition of new waveform: Lab 5 example AM application.
|
|---|
| 438 | \item AutomaticGainControl component will output ones when threshold is not met.
|
|---|
| 439 | \item ALF ConnectTool has improved support for port connections.
|
|---|
| 440 | \item WaveDash can now control single-component waveforms created and launched
|
|---|
| 441 | in ALF.
|
|---|
| 442 | \item ALF allows user to specify IP address for CORBA naming service.
|
|---|
| 443 | \end{enumerate}
|
|---|
| 444 |
|
|---|
| 445 | \subsection {OSSIE 0.7.3}
|
|---|
| 446 | \begin{enumerate}
|
|---|
| 447 | \item Introduction of Waveform Dashboard (WaveDash).
|
|---|
| 448 | \item Addition of new waveforms: OSSIETalkLoopBack, OSSIETalkUSRP.
|
|---|
| 449 | \item Addition of new components: Channel, Conv\_Dec, Conv\_Enc, DigitalModem, FrameAssembler, OSSIETalk, PacketResizer, SymbolSyncPoly.
|
|---|
| 450 | \item Decimator has the ability to use either IIR or FIR.
|
|---|
| 451 | \item OWD provides generation of custom license headers.
|
|---|
| 452 | \item More removal of vestigial project files.
|
|---|
| 453 | \end{enumerate}
|
|---|
| 454 |
|
|---|
| 455 | \subsection {OSSIE 0.7.2}
|
|---|
| 456 | \begin{enumerate}
|
|---|
| 457 | \item Improved start/stop capability within TxDemo component.
|
|---|
| 458 | \item Corrected XML Template files for OWDC component generation.
|
|---|
| 459 | \item Removal of incorrect entry point tags in default\_GPP\_node SPD.
|
|---|
| 460 | \item Deletion of vestigial project files.
|
|---|
| 461 | \item Addition of Interpolator component.
|
|---|
| 462 | \end{enumerate}
|
|---|
| 463 |
|
|---|
| 464 | \subsection {OSSIE 0.7.1}
|
|---|
| 465 | \begin{enumerate}
|
|---|
| 466 | \item Removal of duplicate profile templates.
|
|---|
| 467 | \item Added start, stop capability to TxDemo component.
|
|---|
| 468 | \item Fixed USRP\_Commander rx\_freq property typo.
|
|---|
| 469 | \item Fixed capability of components being run as waveforms.
|
|---|
| 470 | \end{enumerate}
|
|---|
| 471 |
|
|---|
| 472 | \subsection {OSSIE 0.7.0}
|
|---|
| 473 | \begin{enumerate}
|
|---|
| 474 | \item Start of change log.
|
|---|
| 475 | \item Allows for non /sdr install.
|
|---|
| 476 | \item Installation through RPMs.
|
|---|
| 477 | \item ALF can start and stop waveforms.
|
|---|
| 478 | \item Reduced plot tool's refresh rate.
|
|---|
| 479 | \item Removed ``sample waveform'' option in OWD.
|
|---|
| 480 | \item Removed duplicate DOCTYPE descriptors in generated XML files.
|
|---|
| 481 | \item Fixed path in USRP's SCD file.
|
|---|
| 482 | \item Fixed soundCardCapture device name to prevent OWD error.
|
|---|
| 483 | \item Added Ubuntu 8.04 as supported platform.
|
|---|
| 484 | \item OWD default save directory is now home directory.
|
|---|
| 485 | \item ALF's plot tool has normalized frequency axis.
|
|---|
| 486 | \item Debug statements use DEBUG macro instead of std::cout.
|
|---|
| 487 | \item Tools now installed to site-packages.
|
|---|
| 488 | \item ALF, OWD, and OWD Component Editor can be run from any directory.
|
|---|
| 489 | \item More than two nodes can be run through a single domain manager.
|
|---|
| 490 | \item Added webcam components.
|
|---|
| 491 | \item Installation from source broken into two steps.
|
|---|
| 492 | \end{enumerate}
|
|---|
| 493 |
|
|---|
| 494 | \end{document}
|
|---|