Labbook SmartInside
4 May, 2011
14 April, 2011
- Tried to run C:\Programs\Parrot\Examples\Win32, but the Win32Client fails on a 64bits machine. I will try to rebuild it.
- Solution and projects were generated with Visual Studio 2008 Express, so I subtracted 1.0 from the version in both ARDrone.sln, ARDroneAPI.vcproj and Win32Client.vcproj.
- Projects couldn't find source, because ARDroneLibDir and Win32ClientDir were still pointing to the non-existent D-drive. Manually edited ArDrone_properties.vsprops.
- Project couldn't find pthreads.h. Previously I had worked with Windows XP. Acoording to the Installation.pdf, I should have selected USE_WINDOWS_CONDITION_VARIABLES for Windows 7.
- Couldn't find the prerequisite (I presume that I installed it on the old c-drive), so I reinstalled the Windows SDK for Windows7 in C:\Program Files\Microsoft SDKs\Windows\v7.1. Still, the declaration in vp_os_signal_dep.h fails on CONDITION_VARIABLE.
- Seems that the wrong C:\Program Files (x86)\Microsoft Visual Studio 8\VC\PlatformSDK\include\windows.h is loaded. Moved C:\Program Files\Microsoft SDKs\Windows\v7.1 in front of C:\Program Files (x86)\Microsoft Visual Studio 8\VC\PlatformSDK\, and now the number of errors is reduced to one. Error was related with SDL. Adding SDL-directories to Tools->Options->VC++-directories solves this issue. ARDroneAPI can now be build.
- Win32Client still needs the DirectX SDK. Build fails on debugging information in dinput8.lib (requests a rebuild). Added both a x64 configuration to both projects. Rebuilded Release x64. Still, same error: "dinput8.lib(dilib2.obj) : fatal error LNK1103: debugging information corrupt; recompile module". Seems to be a problem of distribution. Will retry with March 2008 version (which still supports Visual Studio 2005).
- When adding this version to the LibraryDirectory the program compiles, links and runs. Tested it with firmware 1.4.7 (with the latest version 1.5.1 the AR.Drone can lift off, but gives a timeout when a steer-command is given. Version 1.5.1 seems only to work with an i-Phone.
20 March, 2011
- Enabled Latitude Dashboard.
17 February, 2011
- Downloaded the wpa adhoc package for Android 2.2, and installed it with the restore option n the boot-menu (power + volume-down). Inside the restore menu you have to navigate with the track-ball.
- Connected my phone to the blue ARDrone, and made my first test-flight with AR.Pro Light.
16 February, 2011
- Was able to root my HTC Desire phone with Android 2.2 with unrEVOked3. Only problem was that I didn't have enough memory available on my phone. After moving some applications to my SD-card it worked.
- AR Drone is now also available on the Market. Unfortunatelly, it requires a phone with could detect adhoc-environments. Should install wpa_supplicant patch, which requires a registration on xda-developers.
- With a fresh ARDrone I could use AR.Assist to temporally connect the blue ARDrone to connect to SMC. Yet, with my phone connected to SMC, I couldn't connect to the ARDrone (which AR.Assist reported to have address 0.0.0.1. Try again tommorrow.
15 February, 2011
- gdalinfo --formats doesn't show geotagged PDFs. The two pdf formats we received as maps are not recognized.
14 February, 2011
- Bas received the digital maps of our building. The maps are in DWG format, which is a variant of the AutoCAD DXF format. Yet, there seems to be an OpenDWG initiative, which has developed environment called Teigha.
- Part of this environment is a DWG-DXF converter. Could select different formats (binary or ascii, different specification years). Converted to 2000 binary dxf. Still, the gdal-library could not recognize it (which is not that strange, because it is a ogr-file). Tried to load the files with GeoTiffViewer, but the viewer couldn't find drivers for this files (tried both 2000 binary and ascii).
- Opened OSGeo4W shell. ogrinfo could open the datasource with its 26-drivers, although DXF was not part of the drivers. Strange, because according to ogr documentation, ogr should be able to read 2000 ascii files, and the driver should be compiled by default. Also openev couldn't load the file. Will try to install the latest version of OSGeo4W on nb-unreal.
- I found Load\Save functionallity in Tools\MapInfo.vb from the 2010\competition branch (to store the robot path as vectors). Couldn't find functionallity which uses the load of a vector-file.
- According to old Labbook, the gdal packages was compiled with DWGdirect no.
- Downloaded OSGeo4W.
Now the dxf-file is recognized by ogrinfo. Loading the file with openev doesn't work for import, but works for open (although the windows stays black).
21 January, 2011
- Tried AR.Drone Pro application, but you need a rooted telephone to make the ad-hoc connection.
21 January, 2011
- Looked at the tag-following code of Brown. The process the video in a pipeline, which is part of the ARdrone SDK. Yet, none of the stages seem to take control of the robot (only performing colour-space conversions).
- Read the Android NDK overview. NDK needs cygwin. Could build samples/hello-jni, although I had to use $NDK_PATH/ndk-build instead of $NDK/ndk-build.
- Read the Parrot\Examples\Android\ardrone\INSTALL instructions again. Changed in the custom.makefile from USE_LINUX to USE_ANDROID.
- Make in Parrot/ARDroneLib/Soft/Build fails, because makefile expects that GNUTOOLS_VERSION is defined.
- Problem is not so much that GNUTOOLS_VERSION not exist, but that the make is called including the full PATH (which includes Windows spaces). Overwriting cygwin's PATH with a very simple .:/usr/local/bin:/usr/bin:/bin solves this issue. Yet, still an error on the third level [3]: multiple target patterns for all. The makefile expects an argument at level [2], so I gave it vlib.
- Complained about pkg-config, so added gtk/bin to PATH. Make fails in generic.makefile, which is in VP_SDK build. Doing a build directly gives many questions. Providing the options (USE_ANDROID=yes, USE_others=no, NO_*=yes/no (tried both), USE_ARDRONE*=yes, USE_PARRATOS_CORE=no; USE_BONJOUR=no) remakes the target (but don't see much done).
- Specifying make -n shows the commands a makefile likes to give.
- Still, the makefile calls make -f lib.makefile build_libs, which calls make -f generic.makefile build_libs, which complains *** multiple target patterns.
-
- Found at forum instruction about the telnet commands to switch your AR.Drone to infrastrure mode, and a link to an Android app. Downloaded the apk in D:\Programs\android-sdk-windows\add-ons
- Downloaded another App from Marketplace. Both apps are only tested for Samsung Galaxies.
- Started the SDK Manager. There is an update for the Android SDK tools available (revision 7 to 8), but I cancelled this update for the moment. Bas' code I have downloaded in D:\projects\SmartInside\svn. Read the ReadMe. Command to install is adb -d install -r *.apk. Added D:\Programs\android-sdk-windows\tools to my PATH.
20 January, 2011
11 January, 2011
- Bas Terwijn collected a new dataset (with odometry, sonar, laser, wifi, GSM,
location-provider) with a round along the new lab.
10 January, 2011
- Uploaded the crosscompiled tiny webserver to the AR.Drone. Ftp doesn't accept another port as argument, but when ftp is called without arguments, you can make the connection with open 192.168.1.1 5551. Don't forget to set the transfer type to binary. The uploaded files are located in /update, which I moved to /home/default with telnet. The crosscompiled tiny webserver works fine (should have given it a home.html to display):
9 January, 2011
- Tried to install apt-cyg install libsdl-dev libgtk2.0-dev libiw-dev, but all three packages are not known. Looked with Setup for Cygwin packages, could only found libgtk2.0-development.
- Found Readme. Followed the instructions and downloaded source (SDL-1.2.14) from http://www.libsdl.org. Configure complied about not able to produce Win32 executables. Changed from default gcc (version 4.3.4) to gcc-3. Seems to work, libraries are installed in /usr/local/lib.
- libiw is a bit more difficult. Found Wireless Tools for Linux, but this site is from 1998. Source should build libiw, but both gcc-3 and gcc-4 gives loads of errors. Start looking for newer sources. According to wikipedia, I have the latest (stable) release. Lets try gcc-2. Under Linux, it works. With standard gcc (4.1.2) it works even better. Only dependences on libm.so.6 and libc.so.6. Strange.
- Tried to make ARDroneLib, but simple make fails, a more direct make PC_TARGET=yes USE_ARDRONE_TOOL=yes TARGET=pc_ USE_MINGW32=no -C ../Lib/Build build_libs on syntax errors and unknown target 'build_libs".
8 January, 2011
- Made without problems a tiny webserver with armv5tel-redhat-linux-gnueabi-gcc.
- The mountain goes less smootly. The mountain depends on time measurement with assembly calls, which is not easily ported to the arm5 architecture. The AR.Drone seems to be based on the ARM9E architecture.
- More details than given by Parrot can be given this Teardown page.
- Found implementation to direct access to the cycle counters; unfortunatelly not for the arm-architecture.
- Found some shared solutions for the classic performance lab.
- Found an implementation of a timer for EP9301 processor (ARM920T core, ARMv4T architecture).
- In another mail Michael Neuhauser used the ldmia instruction.
- The Cortex processors had a cycle count register.
- The processor selector indicated that the ARM968E-S is the only ARM9 processor fast enough for the AR.Drone.
4 January, 2011
- Made connection with the AR.Drone via telnet. Inspected the open ports with netstat -a. Could inspect ftp://192.168.1.1:5551/version.txt (1.3.3). Made the following screendump:
- To be tried: Arm CrossTool chain.
- I Should try yum on a machine where I am root (is pc-unreal a Fedora machine?).
- Was able to extract the rpm source-file with the rpmcpio trick.
- Configure works with gcc-4.2.2. Make fails at bfd directory.
3 January, 2011
- Brought a Microsoft Xbox 360 controller with me. Unfortunatelly, the gamepad.cpp initially didn't respond on any button pressed (although I pass the first functioncall). Problem was due to the EVENT macro. With only a simple macro TEST on button8 (start) and button7 (back) I could start en stop the AR.Drone engine. More advanced control is a bit tricky without a better Xbox 360 controller reference. Unfortunatelly, it seems that since XP SP1 Microsoft has moved from the DirectX to Xdirect API, so where I am looking for is really old. This my intermediate code (Win32\sdk_demo\Sources\UI\gamepad.cpp).
- Maarten Inja and Maarten de Waard have started the Visual Homing project.
Previous Labbook