Previously if multiple motes were selected
and the context menu of a non-selected mote
was used to delete, not the clicked mote
but the other selected ones were removed.
This behavior is fixed so that if another
mote is clicked only this is deleted.
Motes were highlighted only by the UDGMVisualizerSkin before.
Now highlighting moved from individual VisualizerSkin to Visualizer.
A selected mote is highlighted with a blue circle
and a semi-transparent gray overlay.
Long serial port names like
/dev/serial/by-id/usb-FTDI_FT230X_Basic_UART_DN0038W8-if00-port0
cause crashes. This is the simplest fix to avoid the problem.
This helps reduce the chance of a build failure due to transient
download error. This also switches to consistent use of wget
throughout, which reports download errors more cleanly in the travis
build logs.
Besides general whitespace and quoting cleanup, commands that test
variables were changed from:
[ $B = a ] && command || true
to
if [ $B = a ] ; then command ; fi
This form correctly returns the exit code of "command".
In order to use the er-server-example Radio resource it is required that the platform defines that it has a radio. This line might be required in other platforms.
The problem with the current version of the code was that the condition at the end of the do...while loop at Timer A1 interrupt:
while((TACCR1 - TAR) > INTERVAL);
evaluates to false whenever TACCR1 == TAR.
Not incrementing TACCR1 in this case leads to Timer A1 interrupt not being called for 2 seconds, until TAR counter reaches TACCR1 again after an overflow.
The patch avoids this problem by changing the condition of the loop, and using CLOCK_LT macro to compare between time values.
The patch also attempts to fix another problem: a read of TAR register while it is being updated may return a lower value than the actual contents. To avoid that, the "read twice and compare results" idiom should be used. As the TAR register is updated by the actual hardware, it is of no importance whether it is read with interrupts disabled or enabled; the problem can occur in both contexts.
The problem came from the fact that there two opposite macro (UIP_CONF_ROUTER) that could not activate the code responsible to send the PIO option in NDP.
In Neighbor Discovery Protocol, when IPv6 host adds a prefix (coming from PIO) but it is always failing whatever if is successfully add in prefix table. The reason comes from the fact that the function uip_ds6_prefix_add in host version always return NULL. This is opposite of the specification of the router version.