Category Archives: Uncategorized

A Million Submitted Results

Its official!  the number of results submitted to servers managed by Smap has gone past 1 million.

It is fantastic to think that this tool has been useful to people and I hope it continues to be useful and to grow in usage.  Thankyou to everyone using Smap and everyone who has contributed over the years to making it all possible.

version 17.10 part B

Two releases in one month!

The changes are:

  1. Add ability to override fieldTask settings
  2. More flexible task creation (Enhancement #118)
  3. Add reviewing of task group settings
  4. Add downloading of PDF Templates
  5. Issue #126.  Dynamic choice names not shown with generated values in PDF exports
  6. Issue #125.  Hyperlinks in PDF templates are all put on page 1.
  7. Issue #82. User is permitted to try and create a task when there is no task group

The new features listed above are described in more detail below.

Overriding FieldTask Settings

There are a couple of changes to make this more useful

Firstly you no longer require organisational administrator privileges to set set fieldTask settings on the server.  Because of that they have been given their own tab in the user management page next to users and projects.

So now any administrator can specify the fieldTask settings but these changes still affect all phones that synchronise with the server.

Secondly, where there is a corresponding setting that you can specify on the phone then these will be overridden in a more consistent way.  This affects automatic synchronisation and the automatic deletion of instances from the phones after they are submitted.  For each of these you can now specify a value of “Set on phone”.  The phone user will then be able to configure these as they wish. Any other value will override the setting on the phone which will be disabled so the user cannot change it.

Hence for Automatically Synchronise the options are:

  • Set on phone.
  • Off.  The phone will not automatically synchronise.
  • Wifi.  The phone will synchronise only over a wifi connection.
  • Wifi and Cell.  The phone will synchronise over a cellular and wifi connection.

For deleting submitted results the options are:

  • Set on phone
  • Off.  Results are not deleted.
  • On. Results are deleted.

For this to work as described above you will also need to be using fieldTask 5.11

More Flexible Task Creation

Previously you could create tasks from survey results and you could select which tasks to create by specifying a value for one question in that existing survey.   You can now do more sophisticated selection of tasks using the same approach that was added to notifications.

When creating a task group from existing results select the “Advanced Filter” option.  You can then specify the filter you need. For example in the following dialog I am organising a follow up survey for all results where the age was less than 25.

Reviewing Task Group Settings

You can now review the settings you used to create a task group.  In the task group menu select “Edit Task Group”.  The settings will be shown.  However as of 17.10 this feature is still in development.  Its main aim is to show the user what filters they used to create tasks from existing data.  The limitations are:

  • You are not allowed to change any of the settings so at the moment it is really “View Task Group”
  • Some of the settings, such as address parameters, are not shown

Downloading PDF Templates

If you have uploaded a PDF template for a form using the settings dialog then you can now download that template, also from the settings dialog.  To do this select the downward chevron next to the template name.

Version 17.10

Filtering Notifications

When you add a notification, such as an email alert or forwarding of data to another server, you can now specify a filter so that only matching results generate the notification.

In the above example a PDF of the results will be emailed if the name contains the characters “smith” somewhere and the age is greater than 25.  You can get more details on the syntax of these filters by clicking on the (i) icon to the right.

Note that the name and the age has also been included in the body of the email along with the PDF for the results.  You can embed any question answer in either the subject or the content of the email.

Identifying Objects in Images

Artificial Intelligence has now been build into Smap!  In the parameters of an oversight form you can now add “auto=yes” to questions that refer to an image.  That image will then be processed by Amazon Recognition to identify objects automatically.  For an example of how to process an image in an oversight form refer to this article.

Bugs Fixed

  • In the monitor there is a separate column for “Upload Errors”.  This just shows the number of errors that have been seen on phones or webforms when users attempted to upload results probably to a deleted or blocked survey.   Usually the administrator will fix the problem and then the user tries again and this time the data is sent.  You don’t need to worry about this number just make sure that all results end up being sent from all the phones successfully.
  • Previously if you renamed a form part way through data collection you would see two rows of upload counts.  One for surveys uploaded to the old name and one for the new.  Now only the latest form name is shown along with the total of uploads for that form.

version 17.09 – Translating and Transcribing Data

Translating and Transcribing

In this release we have improved support for translating answers to questions from one language to another.  For example from French to English.  You can use the same feature to facilitate transcribing to text from an audio recording or a video.

Specify the source parameter in an Oversight form

For example if you have an audio question called q2 and you want to write the translation into a column called audio_transcription, then you can write your oversight form as shown below.

Oversight Form

The parameter source=q2 has been added to the audio_transcription column.  Clicking on a record in managed forms then shows a page similar to the one below where the user can play the audio and write the translation.

You can also reference:

  •  a text question in order to convert from one language to another.
  • an image question to write commentary on an image
  • and a video question in order to add commentary and a transcription.

Other Parameters

Parameters for oversight forms are new in version 17.09.  Other parameters are:

  • rows=a number.   This sets the number of rows to show when entering data for a text column.   In the above example the number of rows were set to 3.  However you can click on the bottom right-hand corner of the text box to make it smaller or larger at any time.
  • form_data=off  or form_data=on.   This is applied to a new row type called settings.  When set to off the form data for the selected record is not displayed which is useful when you are focussed on referencing specific questions.

Monitoring of Submitted Results

A new result type of “Upload Errors” has been added.  The background to this is that previously a change was made to the monitor to show errors that occur when the results of a survey are submitted and are reported back to the phone or webform.  Commonly these are due to a survey being blocked or deleted. However these errors are generally fixed directly by the users.  For example they will see an error on their phone because the survey is blocked.  The survey will then be unblocked and the user will re-submit.  All is good.  However the monitor page will then show 1 succesfull upload and 1 error.

It is still useful to see if there have been any errors in uploading results.  The new type of “Upload Errors” shows these.  These errors are just informational and should align with errors reported on the phone.   The “Errors” column will continue to show uploads that were accepted by the server but then  for some reason failed to get applied to the database.  These are the sort of errors where you might say “where is my data?” and are more significant.

The second change made to the monitor page is to always show the latest name of a survey.  Previously if you submitted 10 results to a survey then changed its name then submitted 10 more you would see two rows for the two survey names with 10 uploads each.  Now you will see one row and it will be for the latest survey name and have 20 uploads.

Other Changes

  • Add hyper links to video and audio answers when generating PDFs of submitted data.
  • When filtering by data values in field analysis the list of values to select in now sorted alphabetically
  • Added “nochoose” to video and audio questions. Previously this only worked for image questions.  If set then when completing a form with image, audio or video questions the user will not be prompted to add media from the phones sdcard.
  • Added another column called “upload Errors” to the monitor page that shows the status of submitted results.  In a previous change we had started showing

Range Questions

Questions that ask the user to select from a range of values using a slider have been included in odkCollect and are now also available in fieldTask.

Three range questions in a group

Support for these question types has just been added to Smap Server version 17.08.03 which will be deployed onto hosted servers next Saturday or earlier.

Add a range question to your survey using the online editor. You then have to specify 3 parameters in the parameters property.

  1. start
  2. end
  3. step


start=1 end=5 step=1

start=-2.0 end=2.0 step=0.5

If you add a decimal point to any of your parameters then the collected data will also be decimal. Otherwise it will be integer.

The Survey Edit Reference document has been updated to include range.  Range questions are not supported in the xlsForm editor yet.

version 17.08

This release adds support for odk parameters.   Actually currently there is only one parameter supported and that is max-pixels which can be used to reduce the size of photographs taken in a form.


Open the form in the online editor and select “Parameters” as the property you want to change.  Then find an image you want to reduce.  Then set the max-pixels parameter to the size you want.  For example:


The number is the maximum length in pixels of the long edge of the image.


  1. As well as SmapServer 17.08 you will need fieldTask version 5.06
  2. There is no support in xlsForm for parameters yet hence you will need to enter the parameter in the online editor as described above.
  3. You can consider parameters and appearance as doing very similar things .  In the past appearance was used for many of the capabilities that odk will now be adding using parameters.
  4. Help is available in the reference guide.


version 17.07

Automatic Phone Refresh

When there is a change to a survey, or the data that a survey references, then these changes can be pushed automatically down to all the affected phones.

Changes automatically refreshed include:

  • New survey added to a project (See video)
  • Survey Edited (See video)
  • Survey deleted
  • Survey Blocked
  • Update to a dependent survey. For example if a survey gets reference data from the results of another survey then updates to those results will result in the phone being refreshed (See video)
  • Change in phone users settings, ie added to a new project or new security settings
  • Tasks: added, deleted, assigned, unassigned, properties changed
  • Project set up changed. For example setting to “Task only” (In version 17.09 +)

You can specify automatic refresh in the organisation settings or in the phone settings for Wifi, Cellular or both. The organisation settings, if set on, will override the settings on the phone. Note these settings have been used for a while but previously would only automatically submit finished results to the server. Now they also automatically download new versions of the form.

Timing Data

The latest version of odkCollect and FieldTask 5 can collect the time taken to complete each questions.  You can now enable forms for this timing data and then view this data through the API.


Other New Features

  • “Acknowledge” question type added to the online editor.  This creates a question with a single checkbox.
  • Updated the Kobo API to return data from sub forms as well as the main form.  Using this link (user: gplay, password: gplay) returns a list of the available forms.   For the form titled “Sub Forms” you will see there is an extra URL returned that allows you to select the sub form of data.  To support sub forms additional parameters have been added such as “start_parkey”.  For details refer to the documentation.
  • Upgraded FieldTask to include odkCollect 1.8.1.   This is considered a major release so it has been given the version number 5.0.  The reason being that this update no longer supports versions of Android up to 4.04.  Hence FT4 will be kept available for older versions.  FT5 will be in google play shortly and will then be progressively rolled out onto servers.


Version 17.06

The june release is now available.

Repeat in Webforms using repeat count

New Features

  • Webforms has been updated to use the latest version of enketo-core, some new capabilities include:
    • Images are included in the choices that can be filtered using choice filters or cascading selects
    • Using repeat counts on begin repeats is really cool.  Especially if you make the repeat count dependent on another question.  Repeats are shown without buttons to add or remove and the number of repeats will change as you change the repeat count.
    • Plus lots of other styling improvements
  • When you create  PDF from results using a template, if you specify a text field with the name of an image question then a hyper link will be added.  If you are not using a template then you can add the appearance “pdfhyperlink” to show the link instead of the image itself.

version 17.05

Here it is finally. There was no release of the Smap server in March or April.

New Features

  • Integer and decimal results exported to XLSX files are now in number format in the spreadsheet.  Dates are in date format.
  • A “display_name” parameter has been added to questions.  This allows you to override the question name with something more user friendly for exports.
  • The “Unique Key” that you can specify for a form is now included in PDF exports.  You can also set the key value to be a serial number starting from an offset. For example:
    • serial(100)  will create keys of 100, 101…
    • REFserial(10) will create keys of REF10, REF11…
  • The charts on Browse Results and Managed Forms have been substantially modified, (this is still beta code)
    • Maps can now be added
    • Charts are added by the user and then saved with the survey.  This is in contrast to the previous approach where charts were added automatically for all questions causing performance problems on large surveys.
  • When exporting data to PDFs, for location questions you can specify an appearance of pdfzoom_xx, where xx is a number between 1 and 21.  This will show a map of the data at the specified zoom level.  The higher the number the smaller the area covered by the map.
  • Notification emails can now include survey name, instance name, unique key, user and device anywhere in the subject or body of the email, use:
    • ${surveyname}
    • ${instancename}
    • ${hrk}
    • ${username}
    • ${device}
  • Email notifications.  If you set up a notification in managed forms then an email will be sent to the address of the user to be notified

Bug Fixes

  • Updating of user ident is now prevented.  If you tried to change your logon id in the past you would not have been able to logon.  This is because the logon id is combined with the password to create the real encrypted password.  The only way to change your user ident is to create a new user and delete the old one.

Smap at AWS Summit – Berlin 18th May 2017

Yes Berlin which I am very excited about, even more so as I am attending the AWS summit there.   This will be an opportunity to get inspiration for Smap 2.0, the second generation of Smap software. I will be updating this post regularly up until the end of the Summit to record some of my thoughts on where the Smap architecture is headed.

Smap 2.0

  • A new system that will work with the existing Mobile Data Collection Servers and Phones
    • Runs in cloud
    • React.js front ends
    • GraphQL services where possible
    • Serverless back ends
    • Single sign on across mobile devices and servers
  • Will be used to deliver notifications and process management capability to the existing servers
  • Manage notifications to and from mobile phones.  For example notifying a phone that a new version of a survey is available
  • Plus much more

AWS Summit

None of the following comments represent design decisions for Smap 2.0 they just take the concepts from a topic and construct some potential scenarios.

Summit Demo: MXNet on the edge.  How to build a deep learning model that works on edge devices

A Smap server could be considered an edge device.  The data collected could feed a machine learning application to provide real time insight into data and quality assurance.

The data processed by the machine learning could include the time taken to answer each question in order to  identify poorly complete surveys.  The collection of question timing data is currently being added to ODKCollect and fieldTask in a joint Smap / ODK project.

The demo at the AWS summit is going to use a Raspberry Pi as the edge device to recognise art objects.   A mobile phone running fieldTask could also be an edge collection device interacting with Smap 2.0.  This is how the phone will get notifications to refresh forms etc.

MXNet is a neural network application from Apache which can be trained in order to recognise patterns.

Summit Demo: Utilize Powerful Visual Search and Discovery Capabilities with Amazon Rekognition

Rekognition is one of several AI services provided by AWS

  • Rekognition: Image recognition
  • Polly.  Text to speech
    • Lex.  Speech and text recognition and language understanding

It looks like there are quite a few sessions on AI at the summit and adding AI capabilities to Smap is something we are considering so this could be useful.