Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

initial checkin - needs threading or UI will hang

  • Loading branch information...
commit 43d0a060f8d6a156b5b1960240d529c4155c1170 0 parents
Shawn-in-Tokyo authored
1  .gitignore
@@ -0,0 +1 @@
+.DS_Store
1  .gitignore (Autosaved)
@@ -0,0 +1 @@
+.DS_Store
9 LEGAL
@@ -0,0 +1,9 @@
+The majority of the code of LeJOS-Droid is issued under a Mozilla
+Public License v1 - see the LICENSE file. This is the license
+that lejos has always been issued under, as it originally included
+Kekoa Proudfoot's librcx code, which was issued under that license.
+
+The Bluecove Bluetooth library, see 3rdparty/lib/bluecove.jar is issued
+under the GNU LESSER GENERAL PUBLIC LICENSE, Version 2.1.
+
+The Bluecove-GPL library is used on Linux. This uses the GNU GENERAL PUBLIC LICENSE Version 3.
359 LICENSE
@@ -0,0 +1,359 @@
+ MOZILLA PUBLIC LICENSE
+ Version 1.0
+
+ ----------------
+
+1. Definitions.
+
+ 1.1. ``Contributor'' means each entity that creates or contributes to
+ the creation of Modifications.
+
+ 1.2. ``Contributor Version'' means the combination of the Original
+ Code, prior Modifications used by a Contributor, and the Modifications
+ made by that particular Contributor.
+
+ 1.3. ``Covered Code'' means the Original Code or Modifications or the
+ combination of the Original Code and Modifications, in each case
+ including portions thereof.
+
+ 1.4. ``Electronic Distribution Mechanism'' means a mechanism generally
+ accepted in the software development community for the electronic
+ transfer of data.
+
+ 1.5. ``Executable'' means Covered Code in any form other than Source
+ Code.
+
+ 1.6. ``Initial Developer'' means the individual or entity identified as
+ the Initial Developer in the Source Code notice required by Exhibit A.
+
+ 1.7. ``Larger Work'' means a work which combines Covered Code or
+ portions thereof with code not governed by the terms of this License.
+
+ 1.8. ``License'' means this document.
+
+ 1.9. ``Modifications'' means any addition to or deletion from the
+ substance or structure of either the Original Code or any previous
+ Modifications. When Covered Code is released as a series of files, a
+ Modification is:
+
+ A. Any addition to or deletion from the contents of a file
+ containing Original Code or previous Modifications.
+
+ B. Any new file that contains any part of the Original Code or
+ previous Modifications.
+
+ 1.10. ``Original Code'' means Source Code of computer software code
+ which is described in the Source Code notice required by Exhibit A as
+ Original Code, and which, at the time of its release under this License
+ is not already Covered Code governed by this License.
+
+ 1.11. ``Source Code'' means the preferred form of the Covered Code for
+ making modifications to it, including all modules it contains, plus any
+ associated interface definition files, scripts used to control
+ compilation and installation of an Executable, or a list of source code
+ differential comparisons against either the Original Code or another
+ well known, available Covered Code of the Contributor's choice. The
+ Source Code can be in a compressed or archival form, provided the
+ appropriate decompression or de-archiving software is widely available
+ for no charge.
+
+ 1.12. ``You'' means an individual or a legal entity exercising rights
+ under, and complying with all of the terms of, this License or a future
+ version of this License issued under Section 6.1. For legal entities,
+ ``You'' includes any entity which controls, is controlled by, or is
+ under common control with You. For purposes of this definition,
+ ``control'' means (a) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (b) ownership of fifty percent (50%) or more of the
+ outstanding shares or beneficial ownership of such entity.
+
+2. Source Code License.
+
+ 2.1. The Initial Developer Grant.
+ The Initial Developer hereby grants You a world-wide, royalty-free,
+ non-exclusive license, subject to third party intellectual property
+ claims:
+
+ (a) to use, reproduce, modify, display, perform, sublicense and
+ distribute the Original Code (or portions thereof) with or without
+ Modifications, or as part of a Larger Work; and
+
+ (b) under patents now or hereafter owned or controlled by Initial
+ Developer, to make, have made, use and sell (``Utilize'') the
+ Original Code (or portions thereof), but solely to the extent that
+ any such patent is reasonably necessary to enable You to Utilize
+ the Original Code (or portions thereof) and not to any greater
+ extent that may be necessary to Utilize further Modifications or
+ combinations.
+
+ 2.2. Contributor Grant.
+ Each Contributor hereby grants You a world-wide, royalty-free,
+ non-exclusive license, subject to third party intellectual property
+ claims:
+
+ (a) to use, reproduce, modify, display, perform, sublicense and
+ distribute the Modifications created by such Contributor (or
+ portions thereof) either on an unmodified basis, with other
+ Modifications, as Covered Code or as part of a Larger Work; and
+
+ (b) under patents now or hereafter owned or controlled by
+ Contributor, to Utilize the Contributor Version (or portions
+ thereof), but solely to the extent that any such patent is
+ reasonably necessary to enable You to Utilize the Contributor
+ Version (or portions thereof), and not to any greater extent that
+ may be necessary to Utilize further Modifications or combinations.
+
+3. Distribution Obligations.
+
+ 3.1. Application of License.
+ The Modifications which You create or to which You contribute are
+ governed by the terms of this License, including without limitation
+ Section 2.2. The Source Code version of Covered Code may be distributed
+ only under the terms of this License or a future version of this
+ License released under Section 6.1, and You must include a copy of this
+ License with every copy of the Source Code You distribute. You may not
+ offer or impose any terms on any Source Code version that alters or
+ restricts the applicable version of this License or the recipients'
+ rights hereunder. However, You may include an additional document
+ offering the additional rights described in Section 3.5.
+
+ 3.2. Availability of Source Code.
+ Any Modification which You create or to which You contribute must be
+ made available in Source Code form under the terms of this License
+ either on the same media as an Executable version or via an accepted
+ Electronic Distribution Mechanism to anyone to whom you made an
+ Executable version available; and if made available via Electronic
+ Distribution Mechanism, must remain available for at least twelve (12)
+ months after the date it initially became available, or at least six
+ (6) months after a subsequent version of that particular Modification
+ has been made available to such recipients. You are responsible for
+ ensuring that the Source Code version remains available even if the
+ Electronic Distribution Mechanism is maintained by a third party.
+
+ 3.3. Description of Modifications.
+ You must cause all Covered Code to which you contribute to contain a
+ file documenting the changes You made to create that Covered Code and
+ the date of any change. You must include a prominent statement that the
+ Modification is derived, directly or indirectly, from Original Code
+ provided by the Initial Developer and including the name of the Initial
+ Developer in (a) the Source Code, and (b) in any notice in an
+ Executable version or related documentation in which You describe the
+ origin or ownership of the Covered Code.
+
+ 3.4. Intellectual Property Matters
+
+ (a) Third Party Claims.
+ If You have knowledge that a party claims an intellectual property
+ right in particular functionality or code (or its utilization
+ under this License), you must include a text file with the source
+ code distribution titled ``LEGAL'' which describes the claim and
+ the party making the claim in sufficient detail that a recipient
+ will know whom to contact. If you obtain such knowledge after You
+ make Your Modification available as described in Section 3.2, You
+ shall promptly modify the LEGAL file in all copies You make
+ available thereafter and shall take other steps (such as notifying
+ appropriate mailing lists or newsgroups) reasonably calculated to
+ inform those who received the Covered Code that new knowledge has
+ been obtained.
+
+ (b) Contributor APIs.
+ If Your Modification is an application programming interface and
+ You own or control patents which are reasonably necessary to
+ implement that API, you must also include this information in the
+ LEGAL file.
+
+ 3.5. Required Notices.
+ You must duplicate the notice in Exhibit A in each file of the Source
+ Code, and this License in any documentation for the Source Code, where
+ You describe recipients' rights relating to Covered Code. If You
+ created one or more Modification(s), You may add your name as a
+ Contributor to the notice described in Exhibit A. If it is not possible
+ to put such notice in a particular Source Code file due to its
+ structure, then you must include such notice in a location (such as a
+ relevant directory file) where a user would be likely to look for such
+ a notice. You may choose to offer, and to charge a fee for, warranty,
+ support, indemnity or liability obligations to one or more recipients
+ of Covered Code. However, You may do so only on Your own behalf, and
+ not on behalf of the Initial Developer or any Contributor. You must
+ make it absolutely clear than any such warranty, support, indemnity or
+ liability obligation is offered by You alone, and You hereby agree to
+ indemnify the Initial Developer and every Contributor for any liability
+ incurred by the Initial Developer or such Contributor as a result of
+ warranty, support, indemnity or liability terms You offer.
+
+ 3.6. Distribution of Executable Versions.
+ You may distribute Covered Code in Executable form only if the
+ requirements of Section 3.1-3.5 have been met for that Covered Code,
+ and if You include a notice stating that the Source Code version of the
+ Covered Code is available under the terms of this License, including a
+ description of how and where You have fulfilled the obligations of
+ Section 3.2. The notice must be conspicuously included in any notice in
+ an Executable version, related documentation or collateral in which You
+ describe recipients' rights relating to the Covered Code. You may
+ distribute the Executable version of Covered Code under a license of
+ Your choice, which may contain terms different from this License,
+ provided that You are in compliance with the terms of this License and
+ that the license for the Executable version does not attempt to limit
+ or alter the recipient's rights in the Source Code version from the
+ rights set forth in this License. If You distribute the Executable
+ version under a different license You must make it absolutely clear
+ that any terms which differ from this License are offered by You alone,
+ not by the Initial Developer or any Contributor. You hereby agree to
+ indemnify the Initial Developer and every Contributor for any liability
+ incurred by the Initial Developer or such Contributor as a result of
+ any such terms You offer.
+
+ 3.7. Larger Works.
+ You may create a Larger Work by combining Covered Code with other code
+ not governed by the terms of this License and distribute the Larger
+ Work as a single product. In such a case, You must make sure the
+ requirements of this License are fulfilled for the Covered Code.
+
+4. Inability to Comply Due to Statute or Regulation.
+
+ If it is impossible for You to comply with any of the terms of this
+ License with respect to some or all of the Covered Code due to statute
+ or regulation then You must: (a) comply with the terms of this License
+ to the maximum extent possible; and (b) describe the limitations and
+ the code they affect. Such description must be included in the LEGAL
+ file described in Section 3.4 and must be included with all
+ distributions of the Source Code. Except to the extent prohibited by
+ statute or regulation, such description must be sufficiently detailed
+ for a recipient of ordinary skill to be able to understand it.
+
+5. Application of this License.
+
+ This License applies to code to which the Initial Developer has
+ attached the notice in Exhibit A, and to related Covered Code.
+
+6. Versions of the License.
+
+ 6.1. New Versions.
+ Netscape Communications Corporation (``Netscape'') may publish revised
+ and/or new versions of the License from time to time. Each version will
+ be given a distinguishing version number.
+
+ 6.2. Effect of New Versions.
+ Once Covered Code has been published under a particular version of the
+ License, You may always continue to use it under the terms of that
+ version. You may also choose to use such Covered Code under the terms
+ of any subsequent version of the License published by Netscape. No one
+ other than Netscape has the right to modify the terms applicable to
+ Covered Code created under this License.
+
+ 6.3. Derivative Works.
+ If you create or use a modified version of this License (which you may
+ only do in order to apply it to code which is not already Covered Code
+ governed by this License), you must (a) rename Your license so that the
+ phrases ``Mozilla'', ``MOZILLAPL'', ``MOZPL'', ``Netscape'', ``NPL'' or
+ any confusingly similar phrase do not appear anywhere in your license
+ and (b) otherwise make it clear that your version of the license
+ contains terms which differ from the Mozilla Public License and
+ Netscape Public License. (Filling in the name of the Initial Developer,
+ Original Code or Contributor in the notice described in Exhibit A shall
+ not of themselves be deemed to be modifications of this License.)
+
+7. DISCLAIMER OF WARRANTY.
+
+ COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN ``AS IS'' BASIS,
+ WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF
+ DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING.
+ THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE
+ IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT,
+ YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE
+ COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER
+ OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF
+ ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
+
+8. TERMINATION.
+
+ This License and the rights granted hereunder will terminate
+ automatically if You fail to comply with terms herein and fail to cure
+ such breach within 30 days of becoming aware of the breach. All
+ sublicenses to the Covered Code which are properly granted shall
+ survive any termination of this License. Provisions which, by their
+ nature, must remain in effect beyond the termination of this License
+ shall survive.
+
+9. LIMITATION OF LIABILITY.
+
+ UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
+ (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE INITIAL
+ DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE,
+ OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO YOU OR ANY OTHER
+ PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
+ OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF
+ GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND
+ ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE
+ BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
+ LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY
+ RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW
+ PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE
+ EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THAT
+ EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
+
+10. U.S. GOVERNMENT END USERS.
+
+ The Covered Code is a ``commercial item,'' as that term is defined in
+ 48 C.F.R. 2.101 (Oct. 1995), consisting of ``commercial computer
+ software'' and ``commercial computer software documentation,'' as such
+ terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48
+ C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995),
+ all U.S. Government End Users acquire Covered Code with only those
+ rights set forth herein.
+
+11. MISCELLANEOUS.
+
+ This License represents the complete agreement concerning subject
+ matter hereof. If any provision of this License is held to be
+ unenforceable, such provision shall be reformed only to the extent
+ necessary to make it enforceable. This License shall be governed by
+ California law provisions (except to the extent applicable law, if any,
+ provides otherwise), excluding its conflict-of-law provisions. With
+ respect to disputes in which at least one party is a citizen of, or an
+ entity chartered or registered to do business in, the United States of
+ America: (a) unless otherwise agreed in writing, all disputes relating
+ to this License (excepting any dispute relating to intellectual
+ property rights) shall be subject to final and binding arbitration,
+ with the losing party paying all costs of arbitration; (b) any
+ arbitration relating to this Agreement shall be held in Santa Clara
+ County, California, under the auspices of JAMS/EndDispute; and (c) any
+ litigation relating to this Agreement shall be subject to the
+ jurisdiction of the Federal Courts of the Northern District of
+ California, with venue lying in Santa Clara County, California, with
+ the losing party responsible for costs, including without limitation,
+ court costs and reasonable attorneys fees and expenses. The application
+ of the United Nations Convention on Contracts for the International
+ Sale of Goods is expressly excluded. Any law or regulation which
+ provides that the language of a contract shall be construed against the
+ drafter shall not apply to this License.
+
+12. RESPONSIBILITY FOR CLAIMS.
+
+ Except in cases where another Contributor has failed to comply with
+ Section 3.4, You are responsible for damages arising, directly or
+ indirectly, out of Your utilization of rights under this License, based
+ on the number of copies of Covered Code you made available, the
+ revenues you received from utilizing such rights, and other relevant
+ factors. You agree to work with affected parties to distribute
+ responsibility on an equitable basis.
+
+EXHIBIT A.
+
+ ``The contents of this file are subject to the Mozilla Public License
+ Version 1.0 (the "License"); you may not use this file except in
+ compliance with the License. You may obtain a copy of the License at
+ http://www.mozilla.org/MPL/
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
+ License for the specific language governing rights and limitations
+ under the License.
+
+
+
+ The Initial Developer of the Original Code is Jose H. Solorzano.
+
+
+
11 leJOS-Droid/.classpath
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="gen"/>
+ <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
+ <classpathentry kind="lib" path="/lib/bluecove-2.1.1-SNAPSHOT.jar"/>
+ <classpathentry kind="lib" path="/lib/bluecove-gpl-2.1.1-SNAPSHOT.jar"/>
+ <classpathentry kind="lib" path="/lib/log4j-1.2.15.jar"/>
+ <classpathentry kind="lib" path="/lib/pccomm.jar"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
4 leJOS-Droid/.gitignore
@@ -0,0 +1,4 @@
+.DS_Store
+bin/lejos/**/*
+bin/res*
+bin/class*
33 leJOS-Droid/.project
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>LeJOS-Droid</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>com.android.ide.eclipse.adt.ApkBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>com.android.ide.eclipse.adt.AndroidNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
74 leJOS-Droid/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,74 @@
+#Sat Jan 09 10:21:50 JST 2010
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
+org.eclipse.jdt.core.compiler.source=1.5
20 leJOS-Droid/AndroidManifest.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="lejos.android"
+ android:versionCode="1"
+ android:versionName="1.0">
+ <application android:icon="@drawable/icon" android:label="@string/app_name">
+ <activity android:name=".test"
+ android:label="@string/app_name">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.LAUNCHER" />
+ </intent-filter>
+ </activity>
+
+ </application>
+ <uses-sdk android:minSdkVersion="3" />
+ <uses-permission android:name="android.permission.BLUETOOTH"></uses-permission>
+ <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"></uses-permission>
+ <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
+</manifest>
BIN  leJOS-Droid/bin/leJOS-Droid.apk
Binary file not shown
13 leJOS-Droid/default.properties
@@ -0,0 +1,13 @@
+# This file is automatically generated by Android Tools.
+# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
+#
+# This file must be checked in Version Control Systems.
+#
+# To customize properties used by the Ant build system use,
+# "build.properties", and override values to adapt the script to your
+# project structure.
+
+# Project target.
+target=android-3
+# Indicates whether an apk should be generated for each density.
+split.density=false
31 leJOS-Droid/gen/lejos/android/R.java
@@ -0,0 +1,31 @@
+/* AUTO-GENERATED FILE. DO NOT MODIFY.
+ *
+ * This class was automatically generated by the
+ * aapt tool from the resource data it found. It
+ * should not be modified by hand.
+ */
+
+package lejos.android;
+
+public final class R {
+ public static final class attr {
+ }
+ public static final class drawable {
+ public static final int icon=0x7f020000;
+ }
+ public static final class id {
+ public static final int button1=0x7f050000;
+ public static final int button2=0x7f050001;
+ public static final int button3=0x7f050002;
+ }
+ public static final class layout {
+ public static final int main=0x7f030000;
+ }
+ public static final class string {
+ public static final int app_name=0x7f040001;
+ public static final int hello=0x7f040000;
+ public static final int test_1=0x7f040002;
+ public static final int test_2=0x7f040003;
+ public static final int test_3=0x7f040004;
+ }
+}
BIN  leJOS-Droid/libs/armeabi/libbluecove.so
Binary file not shown
BIN  leJOS-Droid/res/drawable/icon.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
29 leJOS-Droid/res/layout/main.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ >
+ <TextView
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/hello"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:layout_marginTop="10dip"
+ android:layout_marginBottom="10dip"
+ />
+ <Button android:id="@+id/button1"
+ android:text="@string/test_1"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"/>
+
+ <Button android:id="@+id/button2"
+ android:text="@string/test_2"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content" />
+
+ <Button android:id="@+id/button3"
+ android:text="@string/test_3"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content" />
+</LinearLayout>
9 leJOS-Droid/res/values/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="hello">こにちは</string>
+ <string name="app_name">leJOS-Droid</string>
+ <string name="test_1">TachoCount</string>
+ <string name="test_2">USBSend</string>
+ <string name="test_3">EmptyTemplate</string>
+
+</resources>
241 leJOS-Droid/src/lejos/android/test.java
@@ -0,0 +1,241 @@
+package lejos.android;
+
+import java.io.BufferedWriter;
+import java.io.DataInputStream;
+import java.io.DataOutputStream;
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+
+import lejos.nxt.Motor;
+import lejos.nxt.Sound;
+import lejos.nxt.remote.NXTCommand;
+import lejos.pc.comm.NXTComm;
+import lejos.pc.comm.NXTCommLogListener;
+import lejos.pc.comm.NXTConnector;
+
+import android.app.Activity;
+import android.os.AsyncTask;
+import android.os.Bundle;
+import android.os.Environment;
+import android.util.Log;
+import android.view.View;
+import android.widget.Button;
+
+public class test extends Activity {
+
+ static final String TACHO_COUNT = "TachoCount";
+ static final String BT_SEND = "BTSend";
+ static final String YOUR_TURN = "YourTurn";
+ static final String CONNECTING = "Connecting...";
+ static final int LEJOS = 1;
+ static final int LEGO = 2;
+ /** Called when the activity is first created. */
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.main);
+
+ Button button;
+ seupNXJCache();
+ setupTachoCount();
+ setupBTSend();
+ setupNewTemplate();
+
+ }
+
+ private void setupNewTemplate() {
+ Button button;
+ button = (Button) findViewById(R.id.button3);
+ button.setOnClickListener(new View.OnClickListener() {
+
+ public void onClick(View arg0) {
+ try {
+ newApp();
+ } catch (Exception e) {
+ Log.e(YOUR_TURN, e.getMessage());
+ }
+ }
+ });
+ }
+
+ private void setupBTSend() {
+ Button button;
+ button = (Button) findViewById(R.id.button2);
+ button.setOnClickListener(new View.OnClickListener() {
+
+ public void onClick(View arg0) {
+ try {
+ btSend();
+ } catch (Exception e) {
+ Log.e(BT_SEND, "failed to run:" + e.getMessage());
+ }
+
+ }
+ });
+ }
+
+ private void setupTachoCount() {
+ Button button = (Button) findViewById(R.id.button1);
+ button.setOnClickListener(new View.OnClickListener() {
+
+ public void onClick(View arg0) {
+ try {
+ tachoCount();
+ } catch (Exception e) {
+ Log.e(TACHO_COUNT, "failed to run:" + e.getMessage());
+ }
+ }
+
+ });
+ }
+
+ private void tachoCount() throws Exception {
+ //we are going to talk to the standard Lego firmware so use LEGO
+ NXTConnector conn = connect(TACHO_COUNT, LEGO);
+ NXTCommand.getSingleton().setNXTComm(conn.getNXTComm());
+
+ Log.i(TACHO_COUNT, "Tachometer A: " + Motor.A.getTachoCount());
+ Log.i(TACHO_COUNT, "Tachometer C: " + Motor.C.getTachoCount());
+ Motor.A.rotate(5000);
+ Motor.C.rotate(-5000);
+ Thread.sleep(10000);
+ Sound.playTone(1000, 1000);
+ Log.i(TACHO_COUNT, "Tachometer A: " + Motor.A.getTachoCount());
+ Log.i(TACHO_COUNT, "Tachometer C: " + Motor.C.getTachoCount());
+ try {
+ conn.close();
+ } finally {
+ conn = null;
+ }
+
+ }
+
+ private NXTConnector connect(final String source, int connection_type) throws Exception {
+ NXTConnector conn = new NXTConnector();
+
+
+ conn.addLogListener(new NXTCommLogListener() {
+
+ public void logEvent(String arg0) {
+ Log.e(source+" NXJ log:", arg0);
+
+ }
+
+ public void logEvent(Throwable arg0) {
+ Log.e(source+" NXJ log:", arg0.getMessage(), arg0);
+
+ }
+
+ });
+
+ conn.setDebug(true);
+ boolean connected;
+
+ switch (connection_type) {
+ case LEGO:
+ Log.e(source," about to attempt LEGO connection ");
+ connected = conn.connectTo("btspp://", NXTComm.LCP);
+
+ // conn.connectTo("btspp://NXT", NXTComm.LCP) ;
+ break;
+ case LEJOS:
+ Log.e(source," about to attempt LEJOS connection " );
+ connected = conn.connectTo("btspp://");
+ break;
+
+ default:
+ throw new Exception("Nobody Home. Who the $%&$ are you trying to talk to? Try a different connection type!");
+ }
+
+
+
+ return conn;
+ }
+
+ protected void btSend() throws Exception {
+ //we are going to talk to the LeJOS firmware so use LEJOS
+ NXTConnector conn = connect(BT_SEND,LEJOS);
+
+ DataOutputStream dos = conn.getDataOut();
+ DataInputStream dis = conn.getDataIn();
+
+ for(int i=0;i<100;i++) {
+ try {
+ Log.e(BT_SEND,"Sending " + (i*30000));
+ dos.writeInt((i*30000));
+ dos.flush();
+
+ } catch (IOException ioe) {
+ Log.e(BT_SEND,"IO Exception writing bytes:");
+ Log.e(BT_SEND,ioe.getMessage());
+ break;
+ }
+
+ try {
+ Log.e(BT_SEND,"Received " + dis.readInt());
+ } catch (IOException ioe) {
+ Log.e(BT_SEND,"IO Exception reading bytes:");
+ Log.e(BT_SEND,ioe.getMessage());
+ break;
+ }
+ }
+
+ try {
+ dis.close();
+ dos.close();
+ conn.close();
+ } finally {
+ dis=null;
+ dos=null;
+ conn=null;
+ }
+
+}
+
+
+
+ protected void newApp() throws Exception {
+ Environment.getExternalStorageDirectory();
+ Log.i(YOUR_TURN,"Now get to work and write a great app!");
+
+
+
+ }
+
+ private void seupNXJCache() {
+ File root = Environment.getExternalStorageDirectory();
+ Log.i(YOUR_TURN,"Can we write to sdcard?:"+root.canWrite());
+
+
+ try {
+ String androidCacheFile ="nxj.cache";
+ File _cache_file = new File(root+"/LeJOS/", androidCacheFile);
+ if (root.canWrite()&&!_cache_file.exists()){
+ FileWriter gpxwriter = new FileWriter(_cache_file);
+ BufferedWriter out = new BufferedWriter(gpxwriter);
+ out.write("Hello world!");
+ out.flush();
+ out.close();
+ Log.e(YOUR_TURN, "File seems written to:"+ _cache_file.getName());
+ }
+ } catch (IOException e) {
+ Log.e(YOUR_TURN, "Could not write nxj.cache " + e.getMessage(),e);
+ }
+ }
+
+ //prepare for threading
+ private class DownloadImageTask extends AsyncTask {
+
+ protected void onPostExecute(Object result) {//executes back on UI thread
+
+ }
+
+ @Override
+ protected Object doInBackground(Object... arg0) {//splits off to a background thread
+ // TODO Auto-generated method stub
+ return null;
+ }
+ }
+
+}
3  lib/.gitignore
@@ -0,0 +1,3 @@
+.DS_Store
+.classpath
+.project
BIN  lib/bluecove-2.1.1-SNAPSHOT.jar
Binary file not shown
BIN  lib/bluecove-gpl-2.1.1-SNAPSHOT.jar
Binary file not shown
BIN  lib/log4j-1.2.15.jar
Binary file not shown
BIN  lib/pccomm.jar
Binary file not shown
Please sign in to comment.
Something went wrong with that request. Please try again.