• ESRI and Trimble 2009 Government Grant

    ESRI and Trimble have joined fores and launched the 2009 Mobile Government Grant Program. The joint grant program awards hardware, software, and training with a value of $89,980 to 20 state and local government agencies in the United States.

    More importantly however, the Grant Program is a vehicle for Government agencies to share their business processes, workflows, and custom software development with other Government agencies that have similar needs for field data capture and analysis.

    This grant applies to the use of both ESRI's ArcGIS Mobile and ArcPad software coupled with Trimble device offerings.

    For more information on the 2009 Mobile Government Grant Program:
    http://www.esri.com/grants/esri/government.html
    http://www.esri.com/grants/esri/docs/trimble-grant.pdf

    Also here is a link to the ArcPad blog posting on this as well:
    http://arcpadteam.blogspot.com/2009/09/esri-and-trimble-2009-mobile-government.html

    Mobile team

     

     

     

  • Japanese version of the ArcGIS Mobile Application

    The ArcGIS Mobile application is available in multiple languages! When ArcGIS 9.3 was released, ESRI France was the first ESRI distributor to localize the ArcGIS Mobile Application. However just recently, ESRI Japan released the ArcGIS Mobile 9.3.1 application for Windows Mobile in Japanese and Korean!


    Localized screen capture of the View Map Task

    How does this happen?

    When we develop our applications within the software development group, we also produce a Localization Kit to our distributors. This enables our distributors to localize our products and release/sell them in their local markets. The Localization Kit for ArcGIS Mobile includes 44 resource files (all text strings used in the application are stored inside of resource files, cab files, a public key file, and a set of instructions on how to localize ArcIS Mobile.

    The localization procedure for the Distributor goes like this:

    1. First they will translate the strings stored in the resource files (.resx files).
    2. Next they will build a satellite assembly using the resource files that were translated in their desired locale.
    3. Deploy their satellite assembly as a dll and test the mobile application to ensure that the translation was complete.
    4. ESRI will sign the application and return a CAB for final release testing to the Distributor (this is a necessary step as if not properly signed - the application may not be installed on mobile devices that are fully locked). Please refer to the following Microsoft article for details on Application Security and Code Signing http://msdn.microsoft.com/en-us/library/ms839377.aspx

    ESRI Korea currently has approximately 100 ArcGIS Mobile users spread over 5 organizations with another 50 to 100 users set to deploy applications this year using the localized version. The majority of the deployments in ESRI Korea are in the field operations for Utilities (gas, water, etc). Now that a localized version is available, ESRI Japan is anticipating adoption of the application soon.

    Thanks to Sunee Puckdee for her hard work with both distributors and developers on the mobile team to make this a success. Sunee is a product engineer on the mobile development team that focuses on testing and localization. You may have met her at the Users Conference this year as along with Jay Chen they led the "Try ArcGIS Mobile" event. Perhaps next year we will use the Japanese version!!

    Mobile Team

     

  • Thank You!

    Now that the 2009 Users Conference is over, the Mobile team would like to thank everyone that attended our technical sessions, came to the island to ask questions and see our demo theatre presentations, and went out to the marina and tried ArcGIS Mobile on a Trimble Juno SB or AT&T Fuze device!

    The Users Conference this year was a great success for the mobile team and we learned a lot from talking to all of you. We are now busy wrapping up 9.4 development and preparing for our beta release. Not to mention we are also busy at work at the newly announced iPhone application!

    If you were not able to attend the Users Conference or if you were unable to see ArcGIS Mobile 9.4 at the plenary, here is a link to a video of the mobile portion of the presentation.

    http://www.esri.com/events/uc/images/plenary/15arcgis-mobile.html

    Mobile team

  • Biggest Conference News! ESRI Inc takes the cup!

    Each year at the Users Conference, there is a hockey game that is held Sunday night between ESRI Canada and ESRI Inc. This year, ESRI Inc took the cup away from ESRI Canada and will be proudly presenting it around the Users Conference and then back in Redlands.

    In the picture you will find Glenn Meister, Ivan Trombley and Jeff Shaner from the mobile team.

  • Preparing for Try ArcGIS Mobile

    The Users Conference is fast approaching and yesterday we drove from Redlands to San Diego to field test the ArcGIS Mobile application in preparation for "Try ArcGIS Mobile". As I mentioned in a previous blog article, if you come to the Mobile Island you can sign up to "Try ArcGIS Mobile 9.4" outside the conference center around the beautiful marina.

    Jay Chen and Sunee Puckdee, product engineers on the mobile team, will be your hosts for this event. The picture below was taken yesterday outside of the convention center while we were mapping various landmarks.

     

    All you need to do is to come to the mobile island and sign up for the event. The event days and times are as follows:

    - Tuesday at 1:30pm
    - Wednesday at 1:30pm
    - Thursday at 10:00am

    We look forward to seeing you there!

    Mobile Team 

     

  • ArcGIS Mobile at UC2009

    The Mobile team is busy preparing their demos and powerpoints for the Users Conference. So I thought I would list all of our activities (sessions, demo theatres, and SIG meeting) so that you can put them ALL in your calendar...

    Technical Sessions
    ESRI Mobile GIS Solutions Overview (Tue 8:30am, Wed 1:30pm) in room 10
    ArcGIS Mobile - An Introduction (Tue 10:15am, Wed 3:15pm) in room 10
    Developing Applications with ArcGIS Mobile (Wed 10:15am, Thu 3:15pm) in room 10
    ArcGIS Mobile GIS 9.4 Plans (Tue 1:30pm, Thu 8:30am) in room 6B

    Demo Theatres
    Introducing ArcGIS Mobile (Tue 2:00pm, Wed 10:00am, Thu 9:00am)
    Focused Application Development using the ArcGIS Mobile SDK (Tue 3:00pm, Wed 1:00pm)
    Whats Coming in ArcGIS Mobile 9.4 (Tue 11:00am, Wed 3:00pm) 
    Managing business workflows with multiple roles (Wed 4:00pm) 

    Special Interest Group Meeting
    Mobile GIS Special Interest Group Meeting (Tue 12:00pm) in Room 28E 

    We look forward to meeting you at the conference!

    Mobile Team 

  • Try ArcGIS Mobile Live At UC 2009

    This year at the Users Conference, you will find the ArcGIS Mobile team either at the Mobile Island or presenting technical sessions. We are busy preparing now for this year's set of activities now. This is an exciting time for us because it is one of the precious opportunities we in the software development group get to interact with the users we build software for!

    This year we want the experience to be a little more exciting and interactive for you! On Tuesday and Wednesday at 1:30pm and Thursday at 10:00am, we want to take you outside the convention center to take ArcGIS Mobile for a test drive! At the Mobile Island this year, we will have 5 Trimble Juno SB and 5 AT&T Fuze devices equipped with ArcGIS Mobile so that you can walk around the marina, explore the application, capture data, come back to the island and see the results of your work.

    We will have sign up sheets at the Mobile Island so when it opens up on Tuesday morning, come and secure your spot for the day of your choice.

    Information about the Product Islands can be found here.

    As we get closer to the Users Conference, what additional mobile activities are coming your way!

    Hope to see you there,

    Mobile Team

     

  • 9.2 SP6 Mobile Server and Client SDK Patch released!

    Today we released a general patch titled ArcGIS Mobile Server and client SDK Patch for ArcGIS 9.2 Server for the Microsoft .NET Framework that you can install on top of ArcGIS Server .NET 9.2 SP6.

    This patch is a culmination of hot fixes and we felt that it was important we share these fixes with all clients that are still using 9.2 SP6 and cannot migrate to 9.3.1 in the near future.

    Please see the link above for details on the patch.

    Mobile team

     

     

  • ArcGIS Mobile Preconference Seminar

    If you are planning to attend the users conference this year and are looking for a hands-on deep-dive into the ArcGIS Mobile SDK, we will be hosting a preconference seminar on Sunday. There is an additional cost of $325.00 for this event.

    Here is a link to the seminar details http://www.esri.com/events/uc/agenda/precons.html#mobile

    Mobile Team

  • New ArcGIS Mobile Training Course

    Our Educational Services staff has completed a new training course for ArcGIS Mobile titled "Authoring and Serving ArcGIS Mobile Projects".

    This is an instructor-led course that targets GIS Analysts/Field Supervisors in the operational arm of an enterprise that are responsible for designing, creating and deploying mobile GIS solutions. Completing this course, you will gain detailed knowledge of the architecture of ArcGIS Mobile, learn how to design and author effective mobile maps, configure the ArcGIS Mobile application to best suit the needs of your field workforce, and learn how best to deploy and manage field projects.

    You can view a schedule of upcoming classes and register for one online at our Education and Training site. Cost per student is $980 USD.

     This instructor-led course builds upon two additional free self-study courses available on the Virtual Campus:

    Special thanks go to Kris Bezdecny and Alyson Smith for designing and building this course!

     Mobile Team

  • Mobile team fun

    Part of our software design and development process on the mobile team involves actually getting outside and using devices outdoors! For example, we are in development of a new Windows touch version of the ArcGIS Mobile application that we released for Windows Mobile at 9.3. We need to evaluate the styling of that application in different natural light conditions.

    Well today we decided to have a little fun and shoot some pictures outside. It was a gloomy day in Redlands and we wanted to make the best of it.  

    Click on the pictures to see them in detail. They are high-res photos so click a couple of times to enjoy the detail...

    1) With the Windows Mobile application at 9.4, we enhanced the Search Task. You can now save your search criteria as a pre-defined query. Using a pre-defined query, you can quickly locate inspections, incidents, people around you...


    Jay is hiding!

    2) The ArcGIS Mobile application running on a Trimble Geo device connected to a GeoBeacon via Bluetooth can provide sub-meter GPS accuracy! Also, the framework of the application is extensible for developers! We built an extension that plugs into the collect task that allows you to construct the shape of a feature using a laser range finder!


    Sabine and Jianwei are "The Collectors"

    3) For 9.4 we are planning to release a Windows Touch version of the ArcGIS Mobile application. It targets in-vehicle mounted systems and has a day/night-time mode that adjusts to varying light conditions. Need to test it out in a vehicle right?


    Scott the responder...

    4) In the field you want to avoid any form of text entry if you can help it. However sometimes you just need to take notes. Notes can be stored in a text field for a feature. The new Windows Touch application we are building will have an integrated keyboard so that you can actually type on the device itself..


    AGM at your fingertips...

    Hope you enjoyed our pics. We had fun taking them and expect another post with more pics coming soon!!

    Mobile Team

     

  • Spatial Reference, GPS and GeoTransformations...

    In this article we will explain the Spatial Reference object model and highlight what you need to know in order to build effective mobile applications that leverage the complexity of coordinate systems and the transformations between them.

    Also find with this article a recent posting to the code gallery by Sabine Barrera that illustrates how to transform GPS positions from WGS84 into the spatial reference of a mobile service. 

    DISCLAIMER: This is not for the faint of heart and the discussion implies that you have good foundational knowledge on map projections in ArcGIS. Here is some very well written background information that you can read on the subject.

    Mobile Spatial Reference

    A Mobile Service is both a web service and a data source in ArcGIS Mobile. The Mobile Service is your gateway to a map document that was published with "mobile data access" capabilities and as a data source it contains the map data that you have requested and cached on the client as the edits you have made in the field.

    When thinking about the mobile service, it is important to understand that the mobile service always references the "active" data frame in a map document. That data frame contains a set of map layers and has a spatial reference and precision associated with it. Note that since ArcMap supports "projection on the fly", the spatial reference of the data frame may be different than the spatial reference of the map layer's data source. The Mobile SDK operates in the spatial reference of the data frame.

    Within the ArcGIS Mobile SDK you will find the classes necessary to access the spatial reference of the mobile service. Here is an object model diagram that illustrates the classes available:

    The spatial reference class itself provides access to the string defining the coordinate system, the current geotransformation, and a collection of supported geotransformations as well. The spatial reference class supports the following projections at the 9.3.1 release: Lambert Conformal Conic, Transverse Mercator, Albers, Mercator, Double Stereographic, and Oblique Mercator. Note that spatial reference implementation for the Mobile SDK is the exact same spatial reference engine used inside of ArcGIS Engine/Desktop, however a subset of all projects are contained in the mobile engine for performance reasons.

    The spatial reference class also contains methods to convert between WGS84 coordinates and the spatial reference of the mobile service. Most conventional GPS systems use WGS84 - hence the explicit methods for converting between WGS84. Please note that we are enhancing this functionality in the 9.4 release. More on this as we come closer to the release of 9.4.

    The spatial reference itself is stored within the MapSchema.bin file that is located inside of the mobile cache directory. It is created when the mobile service is opened using MobileService.Open(). The map schema contains additional information about the map including the map name, full extent, initial extent, layers and their workspaces. It is important to note that the precision of the mobile cache is derived directly from the full extent property of the map. By default (in ArcMap) the full extent of the map is defined by unioning the extent of all layers in the map document. This can lead to coarse precision if your feature classes span a very large extent. You can constrain the full extent and increase precision of your cache by setting a custom full extent for the map.

    Datum Transformations

    If you plan to leverage GPS in your mobile application, you need to think about datum transformations!! Most GPS systems use WGS84, and as a result, the GPS components in ArcGIS Mobile assume WGS84. The map that you publish as a mobile service may not be. If it is not, and you do not apply a geotransformation when projecting the GPS positing on top of the mobile service, you will find that the location is NOT where it should be!!

    If, however, you do set the coordinate system in the map document to WGS84 then no transformation need be applied. When no transformation is applied, the MobileService.SpatialReference will return "Direct" as the value for the geotransformation.

    The Mobile SDK supports the following transformation methods: Direct, MolodenskyBadekas, MolodenskyAbridged, Molodensky, GeocentricTranslation, CoordinateFrame, PositionVector, LongitudeRotation and BursaWolf. Note that Grid or file-based methonds (NADCON/HARN and NTv2) are not supported.

    Specifying the transformation in ArcMap

    As mentioned above, if your map is not using WGS84, a datum transformation will be required to convert GPS positions from WGS84 into the datum of your map. For example, if the coordinate system of the map is GCS_Deutsches_Hauptdreicksnetz, the author of the map will need to specify a transformation that will convert from GCS_WGS_1984 into GCS_Deutsches_Hauptdreiecksnetz.

    If none of the data sources in the map are in WGS84, you will need to add a datasource that is. This will enable the Transformations dialog in ArcMap so that you can easily set the transformation. When a source is added to the map, a geographic coordinate systems warning will appear. Click on the "Transformations..." button and select GCS_WGS_1984 in the "Convert from" list box and then choose a transformation. You can now remove the WGS84 layer from your data frame and save the map document - your transformation will still be available.

    In the example above, DHDN_To_WGS_1984_3s was selected. For this map and published mobile service, the spatial reference will use this transformation to convert GPS positions to your coordinate system. The MobileService.SpatialReference.CurrentGeoTransformation will return "DHDN_To_WGS_1984_3x". If you have not specified the transformation, it will return "Not Defined" and your GPS positions may be quite off.

    Converting Data Sources to WGS84

    If you want to project your data source from its existing datum to WGS84, you can use the Project Geoprocessing Tool that is located inside ArcToolbox under the Data Management Tools > Projections and Transformations > Feature.

    Specifying the Transformation in your Mobile Application

    If you need to specify the transformation in your mobile application, you can implement a Wgs84GeoTransformation. The code below shows how to implement a transformation from WGS84 into German Zone 4.

    This transformation string will set the required parameters used. The geotransformation is shown in the WKT form first.

    // 108206 GEOGTRAN["DHDN_To_WGS_1984_3x", GEOGCS["GCS_Deutsches_Hauptdreiecksnetz", DATUM["D_Deutsches_Hauptdreiecksnetz",
    // SPHEROID["Bessel_1841",6377397.155,299.1528128]], PRIMEM["Greenwich",0.0], UNIT["Degree",0.0174532925199433]], GEOGCS["GCS_WGS_1984",
    // DATUM["D_WGS_1984", SPHEROID["WGS_1984",6378137.0,298.257223563]], PRIMEM["Greenwich",0.0],
    // UNIT["Degree",0.0174532925199433]],
    // METHOD["Position_Vector"],
    // PARAMETER["X_Axis_Translation",597.1],
    // PARAMETER["Y_Axis_Translation",71.4],
    // PARAMETER["Z_Axis_Translation",412.1],
    // PARAMETER["X_Axis_Rotation",0.894],
    // PARAMETER["Y_Axis_Rotation",0.068],
    // PARAMETER["Z_Axis_Rotation",-1.563],
    // PARAMETER["Scale_Difference",7.58]]
    double[] parameters = new double[10];
    // XTranslation
    parameters[Wgs84GeoTransformation.XTranslation] = 597.1;
    // YTranslation
    parameters[Wgs84GeoTransformation.YTranslation] = 71.4;
    // ZTranslation
    parameters[Wgs84GeoTransformation.ZTranslation] = 412.1;
    // XRotation
    parameters[Wgs84GeoTransformation.XRotation] = 0.894;
    // YRotation
    parameters[Wgs84GeoTransformation.YRotation] = 0.068;
    // ZRotation
    parameters[Wgs84GeoTransformation.ZRotation] = -1.563;
    // ScaleTranslation  or ScaleDifference
    parameters[Wgs84GeoTransformation.ScaleTranslation] = 7.58; 
    // The following parameters are only use by the MolodenskyBadekas method
    // XCenterRotation
    parameters[Wgs84GeoTransformation.XCenterRotation] = 0;
    // YCenterRotation
    parameters[Wgs84GeoTransformation.YCenterRotation] = 0;
    // ZCenterRotation
    parameters[Wgs84GeoTransformation.ZCenterRotation] = 0; 
    // This Wgs84GeoTransformation constructor requires a spatial reference,
    // the name of the new transformation, the transformation type, if the
    // transformation is forward (from a coordinate system to WGS84) or backward
    // and the transformation parameters
    customGeotransformation = new Wgs84GeoTransformation(mobileService1.SpatialReference,  "DHDN_To_WGS_1984_3x", GeoTransformationType.PositionVector, false, parameters); 
    // Add the new transformation to the collection of GeoTransformations in the SpatialReference

    mobileService1.SpatialReference.GeoTransformations.Add(customGeotransformation);

     

    // Set the current GeoTransformation Index to the be just added

    mobileService1.SpatialReference.CurrentGeoTransformationIndex = mobileService1.SpatialReference.GeoTransformations.Count – 1;

    Thanks to Sabine for contributing content for this posting. Our apologies for the length. We hope it helps your application development...

    Mobile Team

  • Checksum explained...

    Even though the server and the mobile client device have a great relationship, every time they meet they need to shake hands and identify themselves before doing any work together. We call this handshake a "checksum". The nature of the relationship is that the mobile client is always approaching the server and asking it for something - either to request map data from it or to post some changes it has made to the server's data. For this reason, it is important for the server to make sure that the mobile client properly identify itself so that it can fulfill its request as best it can.

    The way that the server can verify the identify the mobile client is by how it was created - by using the Map Document that was published as a mobile service. When a mobile client makes a request, the server interogates its signature, the map schema, and compares the number of map layers, certain properties of the feature layers in the map, the the feature class definition for each feature layer, and the spatial reference of the map. It is very thorough in its checking! 

    If any of these properties have been changed since the map schema was created for the mobile client, the server will not accept its requests and instead return a "checksum error" when it shakes hands!

    Publishing Best Practices

    It is extremely important that when you publish a mobile service, that you treat that relationship between the map document, the mobile service, and any mobile caches created from it as a binding contract between the three. 

    It is recommended that you:

    1. Create and author a map document specific for the mobile service you intend to publish.
    2. Make a copy of that map document if you plan to re-use it for other services (mobile, map or otherwise).
    3. Synchronize all mobile client caches that may have edits and delete the mobile caches before making changes to the schema.

    Also note that if you do need need to make changes, it is recommended that you create and deploy new mobile caches so that your mobile application and projects can forge a new relationship with the server rather than trying to get all data from the field!!

    Checksum Improvements

    In 9.3.1, we made some minor improvements to the checksum process by not checking the extent of feature layers in the map. The extent of a feature layer can grow simply by adding data to the feature class that serves as its source. This was most notable when publishing a map with an empty map layer. In the 9.4 release, the handshake will be much more relaxed. The server will now focus its interrogation on the schema of the feature classes themselves and no longer cares to much about how layers dress themselves in a map document.

    Saving Abandoned Edits and Mobile Cache to Shapefile Sample

    So, if the mobile client has features to share back with the server and the server no longer wants to talk to it, what is the client to do?? Well this is a challenge. The mobile team has just posted a "Mobile Cache to Shapefile Tool" on the code gallery. There is both a 9.2 version and a 9.3 version of this tool. The code sample will read in the mobile cache, lets you select a number of features from a given layer, and will create a shapefile from the selection. The features in that shapefile can then be imported into the geodatabase through ArcMap.

    It is important to note that there are inherent limitations with shapefiles that do not exist with data that is stored inside of ArcSDE geodatabases. Field names, support for domains and subtypes, etc. This will be the subject of a more detailed article around this tool itself...

    Please let us know if you have further requests/questions around the checksum.

    Thanks,

    Mobile Team

  • Connecting your GPS Receiver to ArcGIS Mobile

    One of the key benefits of field GIS software, like ArcGIS Mobile, is that you can leverage a GPS receiver to locate yourself on a map, collect GIS features using positions from the receiver, search for things around you, and share your location with others. However, one of the challenges you face is how to connect your GPS receiver to your mobile device and to ArcGIS Mobile.

    Within the 9.2 and 9.3 releases of ArcGIS Mobile, we wrote our GPS library using managed code. Unfortunately we encountered many issues that were directly related to the .NET CLR. One of the biggest problems faced with this implementation was the connection to a GPS receiver. Starting at 9.3.1 and beyond, we have now replaced the managed code GPS library with a native code implementation without changing our public .NET API.

    The GPS library reads and parses GPS positions from a COM port you are connected to. The COM port can be a physical serial port, a virtual COM port bound to a GPS receiver via Bluetooth or USB cable, or a program COM port attached to a GPS intermediate driver on Windows Mobile devices. Please note that the GPS intermediate driver is available on Windows Mobile 5.0 and newer systems and allows more than one application to access the GPS at the same time. For additional information on the intermediate driver, see http://msdn.microsoft.com/en-us/library/ms850332.aspx.

    It is also important to note that the ArcGIS Mobile GPS library only supports the NMEA protocol. GPS receivers that do not output GPS positions in NMEA format can be supported in ArcGIS Mobile if you leverage a third party tool (such as Trimble GPS Controller for Trimble GPS receivers).

    The illustration below shows the common GPS configurations, but these are not the only options available. You should ensure that your GPS receiver is correctly configured and you know what COM port you wish to use before starting your ArcGIS Mobile application and opening a connection to the GPS receiver.

    GPS Configuration

    Coming soon we will post an article that details how to configure GPS for your mobile device - for embedded GPS chipsets, bluetooth receivers and USB receivers.

    Thanks to Glenn for contributing this article...

     Mobile Team

  • What's Coming Next...

    If you attended the Developer Summit this year, you would have caught a glimpse at what is coming in the ArcGIS 9.4 release for ArcGIS Mobile. It is a pretty exciting release for the development team. If you did not get a chance to attend, you can view the plenary presentation on the web site - http://www.esri.com/events/devsummit/. Click on "Server and Mobile 9.4" to watch the mobile highlights.

    The 9.4 release is centered around the following key themes:

    • Extending the reach of our application platform support by including a new Tablet application that has all of the capabilities of the Windows Mobile application but targets touch screen windows devices.
    • Opening our field applications as a framework for developers to extend. Our goal is to lower the bar for developers that need to build highly focused mobile applications by allowing them to extend our new Tablet application and our existing Windows Mobile application with custom extensions, tasks, and data.
    • Improved usability of the Windows Mobile application. We have enhanced the Windows Mobile application so that it is more effective for touch or stylus use, added new GPS data collection functionality, improved editing workflows, support for direct picture capture, enhanced base map support including online map services, and much more.
    • Simplifying the management of field projects by introducing a new Mobile Project Center application that field supervisors can use to create mobile projects and deploy them to field devices.
    • Key enhancements to the Mobile SDK with exciting new capabilities for data management, consumption of online services, support for .NET 3.5, WPF, and much more.
    • Simplified setup and deployment of ArcGIS Mobile technology by including all mobile client capabilities into a separate setup from the Server .NET setup.
      Plenary Slide for ArcGIS Mobile used at Developer Summit

    In a future blog article we will spend more time talking about what is coming in 9.4.

    Mobile Team

More Posts Next page »