1) Check Operating Manual for starting up with the system

  1. Other sources of help:
  2. Application Notes:
    • Placement Manual – practical advises and examples of how to mount the Marvelmind Indoor “GPS” system to achieve the best performance in different applications and configurations
    • Autonomous copter settings manual – basic and practical recommendations for setting up of Indoor “GPS” system for usage with autonomous copters/drones indoor and outdoor
    • PixHawk and Marvelmind Integration Manual – step by step guide for PixHawk and Marvelmind integration for drones
    • Architectures comparison – basic explanation of Non-Inverse and Inverse architectures, their use cases and differences between them
    • Beacons comparison – a table summarizing key differences between regular HW v4.9 beacons and new types of beacons: DSP, Mini-beacon and Outdoor/IP67/EX versions
    • Selection Guide – a slideset aiming at helping you in creating configuration of Indoor “GPS” suitable for your particular task and requirements


2) Install STM driver – required to connect beacons/modems to the Dashboard via USB. It needs to be installed only once on your Windows PC.


3) Download and install the latest stable SW


Always use SW from the same pack: Dashboard SW + modem SW + beacon SW. Don’t mix SW from different SW packages. If not from the same SW pack, the SW compatibility between the modem, beacon, and Dashboard SW is not guaranteed:

  • See how to update the SW in the Operating Manual
  • Start with default settings only


Updated on 01.Oct.2019

  • Correction update: Marvelmind SW pack v6.166
    • Correction: proper detection of Mini-RXs, Industrial Beacons and Industrial Super-Beacons in Linux
    • Improvement: drastically improved power consumption in IA mode for Mini-RX, Industrial Beacons, and Super-Beacons
    • New feature: support for IA in Industrial Super-Beacons
    • Changes: default ultrasound settings for Industrial Beacons and Industrial Super-Beacons are now 25kHz (metal sensors’ frequency) instead of previous default ultrasonic 31kHz (default for 16mm plastic sensors)


Updated on 25.Aug.2019

  • Major update and several new features: Marvelmind SW pack v6.160
    • New: Support of new HW – Industrial Super-Beacons
    • New: Paired beacons in IA and dual-head in IA. Demo:
    • New: Support of TDMA Mode 1 and Mode 2 in IA
    • New: Support of RSSI for automatic selection of submaps in IA maps with multiple submaps
    • New: Embedded Realtime Player for streaming location data in IA hedge
    • New: Both mobile beacons (“hedgehog” or hedgehog or hedge) and modem have a flag showing that the mobile beacon left geo-fencing zone
    • New: Possibility to set the COM part number for the modem for the Dashboard manually. And, as a result, a possibility to support more than 1 Dashboard and more than 1 modem per computer. Also, supported in API now
    • New: Support of 4 beacons per submap in IA (previously – up to 3 beacons)
    • New: Support in API of possibility of controlling axis vs. beacons relative position
    • New: Support of summing up of up to 3 microphones as a single microphone – used in Marvelmind Badge and Marvelmind Jacket – for more guaranteed tracking in challenging environment with obstructions
    • Updated: Radio profile 868MHz
    • Bug fix: minor USB connectivity issues with Mini-RX
    • Bug fix: corrected measurement with microphone n2 and Realtime Player enabled


Updated on 21.May.2019

  • Major update and several new features: Marvelmind SW pack v6.130
    • Support of submaps in Inverse Architecture (IA):
    • Support of vertical submaps in IA – useful for tracking in long aisles in warehouses, where XZ coordinates (along with the aisle and height) are important and Y coordinate (across) of the aisle is less so
    • Support of TDMA in IA – allows nearly perfect tracking in challenging conditions with obstructions in IA
    • Support for the Paired Beacons SW feature in IA. Now both IA and NIA allows Location+Direction functionality shown here:
    • Support for streaming of location data via virtual UART from the mobile beacon in IA
    • Support for Load Map with sleeping beacons to add new beacons for building larger maps
    • Support for streaming out center of Paired Beacons as opposed to locations of each of the beacons – option in the Dashboard
    • Service Zones for submaps are handled now by context menu (right click on the dot) instead of in a separate window
    • Mobile beacons (“hedges”) can be named now, for example, the name of the robot or the person – not only addresses as before
    • Support of advanced history in IA. Possibility to have duplicated ultrasound frequency combinations in submaps
    •  Improvements and bug fixes:
      • Temperature measurement by beacons with low temperatures and power voltage measurements
      • Stability of beacons with addresses >128
      • Height settings of stationary beacons in IA (“owls”)
      • Table of distances in IA with >2 stationary beacons
      • Load Map of vertical and intersecting submaps
      • Prevention of other beacons going to sleep on timeout during long SW update of a beacon over radio on slow radio profile
      • Smoother and more polished Realtime Player in the Dashboard



Updated on 22.Mar.2019

  • Major new and long-awaited Inverse Architecture (IA) introduced: Marvelmind SW pack v6.08
    • It is not a fully mature release yet – for those who can’t wait 🙂 New minor updates shall come pretty soon. If you see bugs, please, report to
    • If you have Mini-RX HW with earlier SW release that shows “Bootloader”, when connected to the Dashboard, do DFU programming right away:
      • Open the housing
      • Switch DIP switches similar to the instructions in the Operating Manual for HW v4.9
      • Uupdate the SW via DFU to the latest. After that, normal HEX programming via Dashboard will be possible
    • If your Mini-RX is discharged due to long shelf storage:
      • Switch both DIP switches off
      • Charge the beacon normally via USB for 2h
      • Upload the latest SW (DFU or HEX – depending on your original SW)
      • The beacon will have longer standby time now
    • Only one submap up to 30x30m supported. Support for multiple submaps shall come in a couple of months
    • Multiple mobile beacons without update rate reduction per mobile beacon unlike in NIA. Update rate is still slightly going down due to radio, but it has a lesser impact than in NIA
    • If two stationary beacons (“owls”) are used – 2D (XY) mode is chosen automatically. If 3 stationary beacons – 3D (XYZ) mode
    • See more on the Architectures comparison
  • Beacon naming change:
    • DSP beacon => Mini-RX
    • Mini-beacon => Mini-TX
    • Beacon RX IP67 => Industrial-RX
    • Beacon TX IP67 => Industrial-TX
  • Improved Industrial-TX: power saving; IMU data is streamed out to modem along with ultrasonic location updates
  • Improved power saving and battery protection for Beacon HW v4.9, Mini-TX and Mini-RX
  • New feature: hedgehog streams out its address in the raw IMU stream
  • Marvelmind SW package now contains not only pure SW, but also protocols and manuals. Note, that the manuals maybe updated independently from the SW. Thus, check the latest manuals on Downloads page




Updated on 07.Mar.2019

  • We are happy to publish a long-awaited Marvelmind API! 🙂
    • API library included
    • Windows and Linux supported
    • Intel/AMD and ARM processors supported
    • API Manual included
    • C-example included

Updated on 21.Feb.2019



Updated on 13.Dec.2018

What is new:

  • Support for DSP beacon and Mini-beacon added
  • IMU fusion of angle of Paired Beacons added
  • Change: IMU is switched off by default to save power
  • New power saving features – battery lifetime improved
  • Other improvements: faster connectivity to the Dashboard over USB; improved blinking of beacons with lost radio connectivity; etc.
  • Bug fix: manual entry of coordinates into the table of distance
  • Bug fix: angle – result of the Paired Beacons SW feature started working incorrectly in SW v6.01 – fixed now

Updated on 26.Nov.2018

What is new:

  • Major new feature – support for 255 beacons and 255 submaps per modem
    • Now it is possible to build truly large maps including up to 255 beacons (stationary+mobile combined) and up to 255 submaps
    • Notice that for larger maps, consisting of many submaps, most probably, you will have larger distances between modem and beacons. It is particularly important to place modem in the middle of the network of beacons to provide good radio coverage to all beacons in the map
  • New feature: user must setup handover zones between submaps to guarantee handover quality for complex maps with multi-floor and similar
  • New feature: default wireless connection is setting is now 153kbps (used to be 38kbps). Radio profile 153kbps provides radio coverage range nearly as much as 38kbps and update rate nearly as high 500kbps, i.e. it is a middle of 38kbps and 500kbps, combining the best of both
  • Correction: USB streaming in power save mode improved
  • Correction: Zero IMU button in the Dashboard is improved, while button Reset IMU is removed completely
  • Correction: ultrasound TX is not reset to 31kHz when Default button is pressed. Now, several types of ultrasonic frequencies supported, so 31kHz is not anymore a default ultrasonic frequency for all beacons
  • Improved: both energy saving and tracking quality with Power Saving mode enabled
  • Improved: only beacons with selected tick in the Dashboard lower menu will be accepted to the network – not any addresses. This improves predictability of the network, when there many beacons that may not belong to the network. Their attempts to join the network will be blocked
  • Improved: now, submaps support up to 4 beacons only. More than that – build another submap. Up to 255 beacons and up to 255 submaps are supported per beacon
  • Bug fix: improved map building with active hedgehog
  • Bug fix: duplicated address might work incorrectly in some cases

Updated on 01.Oct.2018

  • For HW v4.9 and v4.5: Dashboard SW v5.77 + Beacon SW v5.96 + Modem SW 5.96
  • It is an upgrade release with one major new feature and several corrections, improvements and bug fixes
  • Notice that SW support for HW v4.5 is about to be discontinued. So, it is recommended to get HW v4.9 or newer. HW v4.5 and HW v4.9 can work together in the same network
    • In the SW pack, only DFU SW for HW v4.5. And HEX and DFU for HW v4.9

What is new:

  • Major new feature – Real-time Player
    • Produces high-quality and very smooth track in real time (similar to the original Player, but in real-time – not from the CSV file) even in challenging conditions with an original poor raw track by doing real-time post-processing (filtering and interpolation) of several latest location measurements
    • Especially good for tracking of slow moving objects, like, people or producing location data for slow-moving autonomous robots. Less suitable for providing real-time location data for fast drones, because of inherent higher latency due to internal post-processing
    • Option to trade-off between latency vs. smoothness
  • Updated protocol and interfaces:
  • Bug fix: more stable path sending to a robot
  • Bug fix: corrected direction indicator in the Paired Beacon SW feature
  • Bug fix: improved map building with active hedgehog


Updated on 27.Aug.2018

  • For HW v4.9 only: Dashboard SW v5.72 + Beacon SW v5.93 + Modem SW 5.93
  • It is a major release with several new major features
  • Linux version of the Dashboard and Dashboard API will follow in the next minor release
  • Important notice for 500kbps:
    • Build the map in the 38kbps radio profile first
    • Modem will measure and store beacons’ frequency offsets
    • Only after that switch the system to 500kbps radio profile

What is new:

  • Multi-floor support:
  • Support of 3D (XYZ), 2D (XY), 1D (X) in a single map
  • Vertical submaps. Especially useful for precise Z support:
  • Support of submaps with Z-only data
  • Support of streaming of IMU data with each location update
  • Possibility to create 3D (XYZ) path, for example, for autonomous drones/copters
  • Support of direct manual entering of stationary beacons’ coordinates
  • Q – quality of positioning from modem and mobile beacon
  • Support of speed in NMEA stream based on IMU data
  • Streaming of telemetry from mobile beacon
  • Improved embedded Player of locations CSV file
  • Improved filtering of distances and location
  • Improved handovers between submaps
  • Reworked and improved ultrasonic trigger
  • Warning, when a second instance of Dashboard is started
  • Improved Load Map function
  • Bug fix: locking beacons to axes
  • Bug fix: locking beacons to substrate
  • Other bug fixes and improvements


Updated on 14.Mar.2018

What is new:

  • Update rate is measured with 1 digit after point, i.e. 8.2Hz instead of 8Hz
  • Timestamp in coordinates packet in streaming corresponds to the moment of emission of ultrasonic
  • Additionally, time from the moment of ultrasonic pulse emission to the current moment (packet time) is provided
  • Modem is streaming now angle from the Paired Beacons (previously, didn’t stream it)
  • Bug fix: IMU packets with ultrasonic packets from hedge via UART
  • Bug fix: compass works now properly
  • 6 symbol CPU ID introduced


Updated on 11.Mar.2018

What is new:

  • 1D mode supported now: So, it is possible now to have configuration consisting of 1 modem + 1 mobile beacon + 1 stationary beacons to have constant tracking of the distance from the stationary beacon to mobile beacon and vise versa. It is also possible to have distance tracking from several stationary beacons simultaneously. Each of them shell be a Submap. Multiple mobile beacons are supported too. Below is a screen capture of an exampled 1D system deployed with 1 stationary beacon (1 submap) and 2 mobile beacons (20 and 23):

  • Improved support of IP67 beacons
  • Switching between radio profiles is faster and more robust now
  • Possible to choose radio power in dBm
  • Fixed bug in robot path sending
  • Fixed bug in Write All command in the Dashboard
  • Fixed bugs in testing routing
  • General improvements and bug fixes

Updated on 25.Jan.2018

What is new:

  • New major feature for beta testing: IMU + ultrasonic sensor fusion. With update rate based purely on ultrasonic as low as 4Hz, you can get effective update rate of 100Hz from mobile beacon equipped with IMU thanks to the new sensor fusion feature. Expected update rate in future SW releases – 200Hz on the same HW
  • Tracks below:
    • 4Hz ultrasonic-only track => location update latency ~250ms
    • 4Hz ultrasonic + 100Hz IMU => location update latency ~10ms
    • 100Hz IMU-only track => location update latency ~10ms
    • Each square is 5x5cm
  • Notice, that IMU raw data protocol has changed. Also, notice that 100Hz location update is available only from the mobile beacon – not from the modem
  • Here is a Python code to extract 100Hz fast location update from mobile beacons via UART and virtual UART over USB
  • Code is in beta testing. So, your feedback is highly appreciated
  • General improvements and bug fixes



Updated on 04.Jan.2018

What is new:

  • New feature: CSV log file player. You can read tracks of mobile beacons recorded by the Dashboard into the CSV file and play it back directly in the Dashboard. You can choose exact time from the log, length of the track and even get some basic analytics, like: maximum speed, average speed, etc.
  • Improved radio profiles (38kbps, 153kbps, 500kbps) with better sensitivity. Tested line of sight distance on 500kbps with full-size quarter-wave antennas was >400m. Expected distance with 38kbps is even larger
  • Improved stability of waking up from sleep
  • Improved power saving mode
  • True update rate for paired beacons is shown now. Previously, it was shown for each beacon separately, i.e. 1/2 of the true update rate
  • Improved internal system clock synchronization
  • Dashboard now creates a new CSV log file every time, when the system starts/wakes up and every time, when a map is frozen
  • General improvements and bug fixes


Updated on 15.Nov.2017

What is new:

  • New: Now the SW for beacons and modem supports 2 main bands (915MHz and 433MHz) and 2 additional bands (868 MHz and 315 MHz) in a single file, i.e. you don’t have to select a separate file per frequency from the SW pack. Though, you still have to choose between SW for modem vs. SW for beacon and you have choose your HW (beacon v4.9 (5 sensors) vs. beacon v4.5 (4 sensors)). Note, that 315MHz additional band is recommended to be used with 433MHz HW boards and 868MHz – with 915MHz HW boards, because they are closer in frequencies. Remember, that the HW is not tuned for the additional bands and radio range can be severely reduced, as compared to the range in the regular main bands the boards are actually designed for. However, still, you may use additional band now, if you wish to do so, for example, to minimize interference with your onboard telemetry or because your country’s regulations don’t allow either 433MHz or 915MHz systems
  • New: Raw distance data streaming supported now
  • New: beacons streams out location data and clearly marks now whether it is its location or another beacon
  • New: flag introduced “Accept new/woken devices”. It is possible now to forbid the modem to automatically take into the map accidentally woken up beacons. Previously, if the beacon woke up for any reason, it would stay active, because it would respond to the modem’s signal and thus the beacon’s battery could be depleted for no purpose
  • New: a watchdog timer introduced in beacons to improve stability. As a drawback, the deep sleep mode that was previously recommended for shelving the product with absolute minimal current consumption is not supported anymore. For shelving, it is recommended to put both DIP switches in OFF position
  • New: mobile beacon protocols are updated (raw distance data added; flag of source of location data). Check them out
  • Improvement: more robust building of bigger maps made of frozen submaps
  • Bug fix: distances in the table of distance could be changing in some settings even, if the map was frozen
  • Bug fix: corrected loading of saved maps with submaps from a file
  • Bug fix: mirroring of a full frozen map consisting of submaps works now properly
  • Bug fix: uploading firmware over radio to a beacon in the frozen map
  • General bug fixes

Updated on 29.Oct.2017

What is new:

  • Improved: Power saving features are significantly improved. Note, that power saving is off by default and shall be enabled in modem settings: “Power save functions”
  • General bug fixes

Updated on 28.Sep.2017

What is new:

  • New feature: Two mobile beacons (‘hedgehogs”) can be paired and work together as a single beacon without update rate reduction. Moreover, each beacon streams out in this mode not only its own location, but direction where the pair is facing. This feature hugely simplifies autonomous driving and flight. Here is updated protocol with the changes
  • New feature: Save Map/Load Map feature and buttons are active now. You can build a very complex map with submaps and save all settings for the map, submaps, and all beacons including their ultrasonic gain, triggers, etc.
  • New feature: streaming user payload from mobile beacon to modem. See the table with speed vs. payload
  • New Arduino sample file: sending user payload from mobile beacon to modem
  • Improved: Until beacons are really awake, they are not shown as alive in the Dashboard anymore. Previously, they could be shown as green and alive before disappearing on timeout after a minute or so and that could confuse
  • General bug fixes

Updated on 13.Aug.2017

What is new:

    • New feature: path sending to copters
    • New feature: now each hedgehog streams out coordinates of all other hedgehogs – not only its own coordinates, i.e. now all robots/copters may know location of all other robots/copters
    • New feature: support of extended memory for Modem_256 (modem supporting up to 256 beacons. Current modem HW v4.9 supports up to 30 beacons)
    • New feature: extended update rate options to 0.1Hz and 0.2Hz
    • Improved service zones with 8 points
    • Improved sleep modes
  • Bug fix in modem: modem, sometimes, was not recognized by PC after PC reboot
  • Bug fix in sabmaps: after one of the beacons in submap of 3 beacons lost, system remained in 3D mode with insufficient number of beacons. Now it turns to 2D mode automatically
  • Bug fix of submaps with 2 beacons: they might lose tracking of hedge after modem reboot
  • Bug fix in embedded oscilloscope for distances between beacons >30m
  • Bug fix: occasionally, beacons sent previous location measurement, when no ultrasonic signal received. Now send a flag, that no signal received
  • Bug fix: improved operations with IMU


Updated on 05.Jun.2017

  • For HW v4.9 and v4.5 SW pack: Dashboard SW v5.31 + Beacon SW v5.63 + Modem SW 5.63

What is new:

  • Please, make sure that you are using right SW version for your HW – v4.5 vs. v4.9
  • Improved radio synchronization in challenging conditions
  • Increased channel spacing for 915MHz band
  • Improved oscilloscope scaling
  • Significantly improved trigger mode
  • Quality of ultrasonic signal assessment enchanced
  • Repetitive waking up of sleeping beacons
  • Timed out beacons are not removed from the map now, but marked as unused
  • As a customized feature, it is possible to have now 2 additional external buttons connected to 4×4 pins. They perform now 2 actions: (1) manual log of coordinates, (2) remote clearing the map of traces. Customized functionality may be assigned to those 2 external buttons
  • Improved waking up command
  • Improved performance for complex maps with multiple submaps
  • Multiple and various bug-fixing and error corrections


Updated on 27.Mar.2017

  • For HW v4.9 and v4.5 SW pack: Dashboard SW v5.16 + Beacon SW v5.51 + Modem SW 5.51
  • Since SW changes are pretty big with this release, please, use DFU for SW uploading. Future SW upgrades can be done with HEX, as usually.

What is new:

  • Please, make sure that you are using right SW version for your HW – v4.5 vs. v4.9
  • Full support of HW v4.9 – both 433MHz and 915MHz boards
  • Major change in ultrasonic signal triggering mode and AGC – completely new technique is employed now. It shall bring better results in noisy environment as well as when the ultrasonic signal is either too strong or too weak
  • Improved scanning of radio frequencies for better searching of beacons
  • Increased precision of geo-referencing from ~11cm to ~1.1cm
  • Added a new mode of raw data streaming from the modem’s UART – real-time raw distances and RSSI data
  • Usual bug-fixing and error corrections


Updated on 16.Feb.2017

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v5.06 + Beacon SW v5.41 + Modem SW 5.46
  • For HW v4.5 (5 sensors) Dashboard: Dashboard SW v5.06 – installation file with drivers. It is suitable the most for the very first installation of the Dashboard

What is new:

  • It is possible now to build a fully functional map/submap for 3D navigation using only 3 stationary beacons. Before, one would need at least 4 stationary beacons per map/submap for 3D navigation or 2 stationary beacons for 2D navigation
  • It is possible now to enter values in the table of distance between stationary beacons manually. Before it was fully automatic only
  • It is possible now to remove restriction on the minimal distance between stationary beacons or stationary beacons and mobile beacons. Before it was 0.35m at minimum. Now, it can be set to 0mm. As before, the distance between beacons is not limited anyhow. So, mobile beacons can as close to each other as one wishes
  • Enriched features of embedded oscilloscope designed for making possible a deeper analysis of implications of higher location update rate settings on the system performance
  • C and Python and UDP sample codes support now mm-output format, i.e. fully compatible with the main SW pack. To switch back to cm-resolution format
  • Usual bug-fixing and error corrections


Updated on 12.Jan.2017

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v5.01 + Beacon SW v5.40 + Modem SW 5.40

What is new:

  • Fixed bug that affected on proper writing of settings into the beacon in some circumstances
  • Faster beacon wake up time
  • Ultrasonic gain self-calibration introduced in beacons: Dashboard > View
  • Optimized displaying of beacon’s parameters, while beacon wakes up
  • Notice that C and Python and UDP sample codes are written for cm-output – not mm-output, i.e. not directly compatible. You can turn on compatibility mode to switch back to cm-resolution format


Updated on 20.Dec.2016

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v4.94 + Beacon SW v5.37 + Modem SW 5.37

What is new:

  • Fixed bug with SPI of mobile beacon
  • Significantly improved resolution of embedded oscilloscope
  • Now the Dashboard has an install file
  • Distances and coordinates are given now in millimeters
  • Notice that C and Python and UDP sample codes are written for cm-output – not mm-output, i.e. not directly compatible. You can turn on compatibility mode to switch back to cm-resolution format


Updated on 11.Dec.2016

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v4.92 + Beacon SW v5.35 + Modem SW 5.35

What is new:

  • Distances and coordinates are given now in millimeters
  • Key protocols are updated. Please, see them inside the SW package archive
  • Notice that C and Python and UDP sample codes are written for cm-output – not mm-output, i.e. not directly compatible. You can turn on compatibility mode to switch back to cm-resolution format


Updated on 08.Dec.2016

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v4.91 + Beacon SW v5.34 + Modem SW 5.34

What is new:

  • Some beacon addresses bug fix
  • Modem streaming bug fix


Updated on 26.Nov.2016

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v4.89 + Beacon SW v5.33 + Modem SW 5.33

What is new:

  • Interface with modem is done now in exactly the same format as with the beacon (UART/virtual UART, SPI)
  • NMEA support fixed: mm vs. cm output
  • Other various bug fixes


Updated on 10.Nov.2016

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v4.88 + Beacon SW v5.32 + Modem SW 5.32

What is new:

  • Tested support of at least 30 beacons per modem (29 stationary beacons + 1 mobile beacon or 26 mobile beacons + 4 stationary beacons or anything in the middle)
  • Various bug fixes, particularly, in submaps


Updated on 29.Oct.2016

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v4.87 + Beacon SW v5.28a + Modem SW 5.31_6cb9597

What is new:

  • UDP location streaming from modem is supported now. Previously, location data had to be requested each time – point by point
  • Bug fix in multimaps


Updated on 25.Oct.2016

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v4.85 + Beacon SW v5.28a + Modem SW 5.28_1564fd4

What is new:

  • Minor update


Updated on 13.Oct.2016

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v4.85 + Beacon SW v5.28 + modem SW sw5_28_1564fd4

Important! The SW introduced rather major changes, so some settings are affected too. After programming do the following:

  • While a beacon/modem is USB connected, press “Default” button (botton-right corner) to upload default settings to the beacon
  • Check radio profile settings on the beacon and on the modem. Choose the same. Otherwise, the modem won’t see beacons over the radio interface

What is new:

  • Some bug fixes and improvements


Updated on 12.Sep.2016

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v4.74 + Beacon SW v5.20a + modem SW sw5_20_745fac6 + DFU files

Important! The SW introduced rather major changes, so some settings are affected too. After programming do the following:

  • While a beacon/modem is USB connected, press “Default” button (botton-right corner) to upload default settings to the beacon
  • Check radio profile settings on the beacon and on the modem. Choose the same. Otherwise, the modem won’t see beacons over the radio interface

What is new:

  • A bug in oscilloscope timing was fixed
  • Modifified protocol. Now timestamp is milliseconds instead of alpha-cycles => our Python and C examples are not yet corrected accordingly
  • Addresses in devices will be now preserved even with major SW changes
  • It is now possible to disable additional location filtering in hedgehog by turning it off in the Dashboard. It is especially useful for small update rates of 0.5-2Hz
  • Improved timing with sending location data at update rates of 16Hz and below
  • Other minor bug fixes and improvements


Updated on 01.Sep.2016

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v4.73 + Beacon SW v5.19 + modem SW v5.19_f6c5d90

What is new:

  • Major new feature: NMEA support
    • Here is the NMEA protocol implementation description
  • Advanced energy saving features
    • Tested running time by beacon with 16Hz update rate and fully-charged embedded 1000mAh battery is up to 72h
    • Expected/calculated running time by beacon with 1Hz update is nearly 16 times longer => 48 days
    • External 10,000mAh power bank & 1Hz update rate on beacon shall give >1y running time from the same battery
  • Accellerated embedded oscilloscope
  • Optimized map creation for complex multi-beacon multi-submap maps with scanning ultrasonic sensor pairs feature
  • Other bug fixes and improvements


Updated on 23.July.2016

  • For HW v4.5 (5 sensors) SW pack: Dashboard SW v4.70b + Beacon SW v5.15 + modem SW v5.15_4279848
  • For HW v4.3 (4 sensors) SW pack: Dashboard SW v4.72 + Beacon SW v5.17 + modem SW v5.17

Important! The SW introduced rather major changes, so some settings are affected too. After programming do the following:

  • Connect each beacon via USB cable and assign addresses from the Dashboard again (2, 3, 4, etc.), since the SW resets addresses to all beacons to 1
  • While a beacon is USB connected, press “Default” button (botton-right corner) to upload default settings to the beacon
  • Check radio profile settings on the beacon and on the modem. Choose the same. Otherwise, the modem won’t see beacons over the radio interface

What is new:

  • Major new feature: Submaps
    • You can create several independent submaps, for example, for separate rooms with 2-6 beacons in each submap or even a few submaps in one big hall and merge them into a single solid map
  • Major new feature: Dashboard => Substrate
    • You can upload your real floor layout in .png or .tiff or .jpg or .bmp format on the map with beacons and put beacons in the right position on the layout
  • Other multiple bug fixes and improvements
  • If updating from SW v4.62 and fresher, just follow basic SW routing update: Run the Dashboard => Advanced view => Firmware => Choose the file => Program


Updated on 17.May.2016

What is new:

  • Bug fix: when powered by external power supply, the beacons didn’t wake up
  • Bug fix: data on heights of beacons were lost at some point of time
  • Other smaller bug fixes and improvements
  • If updating from SW v4.62 and fresher, just follow basic SW routing update: Run the Dashboard => Advanced view => Firmware => Choose the file => Program


Updated on 10.Mar.2016

What is new:

The key new features:

  • Support for Indoor “GPS” mini – system with two stationary beacons
  • Support of Z-coordinate in UDP protocol with the Dashboard
  • Various pther improvements and bug fixings


Updated on 02.Feb.2016

What is new:

  • For HW v4.5+ only! (beacons with 5 ultrasonic sensors)

Several major improvements:

  • Support for external flash memory for additional capacity in modem
  • Support for the 5th ultrasonic sensor providing even wider coverage in ultrasonic
  • Multiple other new features


Updated on 17.Nov.2015

What is new:

  • Various bug fixing
  • Further usability improvements


Updated on 02.Oct.2015

What is new:

  • Advanced power saving modes
  • Various bug fixing
  • General usability improvements

Important! Some earlier HW versions do not support all power saving modes. Use “Analog power in sleep” enabled first. It will increase power consumption by 5-8mA in active mode. If you happen to have a newer HW version, disable analog power in sleep. If system continues working normally – use it. It saves battery.

Default mode – “disabled”, i.e. if your HW does not support it, the system won’t work stable.

Updated on 20.Aug.2015

Important! Please, use addresses for beacons in the range of 2..63. There were reports that addresses 64..99 don’t always work well with SW v3.73. This bug has been fixed in the later versions.


Mobile beacon (“hedge”) interfacing protocol to robots

  1. Via virtual UART via USB: Supported interfaces

    This is the easiest way to connect since no soldering is required and protocol is the same for different operating systems.

  2. Via SPI:

    SPI & UART interface pins on beacon board

  3. Python library for beacon:

    • Here is the Python code for Linux-based devices integration via virtual UART via USB
    • Library is easy to use. Also, here is detailed description and example
    • Code is fairly universal; Tested on:
      • Ubuntu 16.04
      • Raspbian Jessie
      • Mac (OS X 10.10)
      • Python 2.7 & Python 3+
    • CRC calculation is done in “pythonic way”, i.e. library crcmod is used
    • There are handlers of different exceptions, for example, non-standard states of COM/USB

    The Python library provides quick and easy ability for integration of ultrasound navigation system with various linux-based devices. Among them are Raspberry Pi and other single-board PCs. This code is free to use in your applications (please include a reference link to this web page).

  4. C library for beacon:

    • Here is the C code + guiding document
    • Supported operating systems:
      • Microsoft Windows
      • GNU/Linux (including Raspberry Pi)
      • Mac OS X
    • Additionally, link to Github repository
      • v2018_04_06:
        • Improved processor load
        • Fixed compiling in Visual Studio
        • Added parsing for Paired Beacons angle
        • Added parsing for distance raw data
        • Added parsing for IMU raw data
        • Added parsing for IMU fusion packet
  5. Android/Java library for beacon:

    • Here is the Java code and simple Android application
    • Tested on:
      • Samsung S7 (API 25)
      • Huawei P6 (API 22)
  6. Connection of Marvelmind hedgehog to Arduino via UART and SPI:

  7. ROS support on Raspberry 2 and Raspberry 3:

    Marvelmind ROS package – GitHub link.

    Marvelmind ROS package v1.0.8 compatibility and main changes:

    • Supports both millimeters and centimeters (obsolete) formats of data
    • Supports hedgehog address in data stream. Can receive positions of multiple hedgehogs from modem
    • Supports receiving positions of stationary beacons
    • Supported ROS versions:
      • Kinetic for Ubuntu 16.04
      • Indigo for Ubuntu 14.04
      • Hydro for Ubuntu 12.04

    Please, check the instructions on ROS integration.

    ROS repository status.

  8. Pixhawk support and NMEA interface description:

    Here is a detailed PixHawk and Marvelmind Integration Manual.

    Please, also check the instructions on Pixhawk integration and description of interfacing via NMEA0183 protocol.

  9. Sending path to your robot/copter:
    • Here is an explanation how to send path data via mobile beacon to your robot/copter sample code.
    • Protocol description => 2.3.1. Request of writing the movement path
    • Relevant forum discussion

Modem and dashboard interfaces

It is possibly to get location data not only from the mobile beacon, but directly from the modem or the Dashboard:

  1. Protocol of data exchange with modem via USB interface: link
  2. The Dashboard software log description: forum link or direct link to the image. First column appeared later, and it is discussed in this topic. It is an additional absolute column – a timestamp – time in milliseconds passed from January,1 of 1970 (UNIX time) – Dashboard SW permanently writes coordinates into log file ‘hedgehogs.log’ that is stored into the Dashboard folder
  3. Protocol of data exchange with Dashboard via UDP: link
  4. UDP SW example:
    • Here is the C-written UDP example
    • Supported operating systems:
      • Microsoft Windows
      • GNU/Linux
    • Supported streaming as well as master-slave mode
  5. Marvelmind modem C library and sample code:
  6. Both Windows and Linux Dashboards are available