Commit graph

1997 commits

Author SHA1 Message Date
Enrico Joerns
a9f31ee662 [cooja] plugins/VariableWatcher: Added @Override annotations 2014-08-31 01:52:14 +02:00
Enrico Joerns
01333c235c [cooja] interfaces/IPAddress: Reimplementation of the IPAddress interface
New features:
* extended interface
* Shows all IPv6 addresses of a mote
* Shows link local IP in visualizer
* Reads IPs correctly from different memory layouts
2014-08-29 13:08:56 +02:00
Enrico Joerns
f93b58b9fb [cooja] Get rid of all those redundant IP address to String functions
Commonly use the String representation functions of IPUtils.
2014-08-29 12:58:57 +02:00
Enrico Joerns
1babb9475d [ccoja] Added new IPUtils class
Utility class to convert IPv4/IPv6 byte arrays to String representation.

* RFC5952-compliant IPv6 address shortening routine
2014-08-29 12:58:19 +02:00
Enrico Joerns
c0f629dfbb [cooja] interfaces/IPAddress: Added @Override annotations 2014-08-29 12:12:20 +02:00
Enrico Joerns
d5c5198171 [cooja] interfaces/IPAddress: Indention cleanup 2014-08-29 12:11:10 +02:00
Enrico Joerns
133311b427 [cooja/serialsocket] SeriaSocketClient: Fixed position of pack() call 2014-08-29 00:55:07 +02:00
Enrico Joerns
db2f4e6818 [cooja/serialsocket] Write serial data only on simulation thread 2014-08-29 00:54:57 +02:00
Enrico Joerns
894a88d08e [cooja/serialsocket] SeriaSocketServer: Moved Observer and Handler to inner classes and let handler thread join before notifying server terminated 2014-08-29 00:35:26 +02:00
Enrico Joerns
dea03493bd [cooja/serialsocket] Support for xml import/export 2014-08-29 00:35:26 +02:00
Enrico Joerns
6c0e7ae15e [cooja/serialsocket] Allow to stop server / disconnect client 2014-08-29 00:35:26 +02:00
Enrico Joerns
f419274050 [cooja/serialsocket] SerialSocketClient: ClientListener interface decouples client implementation
and visualization
2014-08-29 00:35:26 +02:00
Enrico Joerns
b31818521d [cooja/serialsocket] SerialSocketServer: Allow only a single client,
reject further
2014-08-29 00:35:26 +02:00
Enrico Joerns
a18a7fa717 [cooja/serialsocket] SerialSocketServer: Fixed and improved server
implementation. Added visual feedback for new user interface.
2014-08-29 00:35:26 +02:00
Enrico Joerns
585db7df96 [cooja/serialsocket] SerialSocketServer: Applied some renames 2014-08-29 00:35:26 +02:00
Enrico Joerns
0d9698b908 [cooja/serialsocket] SerialSocketServer: New visual appearance with
status bar, port setting, and start button
2014-08-29 00:35:26 +02:00
Enrico Joerns
153457a151 [cooja/serialsocket] SerialSocketClient: Status bar and improved
action/event handling and visualization
2014-08-29 00:35:26 +02:00
Enrico Joerns
d90aec2376 [cooja/serialsocket] SerialSocketClient: New visual appearance with
input for server hostname and address including connect button
2014-08-29 00:35:26 +02:00
Enrico Joerns
404fd82399 [cooja/serialsocket] Added @Override annotations 2014-08-29 00:35:25 +02:00
Enrico Joerns
af7f9ced81 [cooja/serialsocket] Moved to package org.contikios.cooja.serialsocket 2014-08-29 00:35:25 +02:00
Enrico Joerns
e5653ac150 [cooja] Memory: Added add/removeMemoryMonitor functions
Provides a cleaner interface to access memory as VarMemory already
contains variable name based add/removeVarMonitor functions.
2014-08-28 19:28:49 +02:00
Enrico Joerns
77ab9359dd [cooja] Memory: Added get/setByteArray functions to Memory access class
Provides a cleaner interface to access memory as VarMemory already
contains variable name based get/setByteArray functions.
2014-08-28 19:26:24 +02:00
Fredrik Österlind
2a0ccf2c6b Merge pull request #628 from ejoerns/pull-req/cooja-memory
[Cooja] Rewrote Coojas mote memory management
2014-08-25 15:37:23 +02:00
Fredrik Osterlind
a4271f4327 hack to support symbol size parsing under cygwin 2014-08-21 20:01:45 +02:00
Fredrik Österlind
2de744f4b6 Merge pull request #768 from ejoerns/pull-req/cooja-tooltip
[Cooja] Simple mote tooltip for Visualizer
2014-08-13 13:23:33 +02:00
Fredrik Österlind
6fec61bf7c Merge pull request #769 from ejoerns/pull-req/cooja-traffic-vis
[Cooja] TrafficVisualizerSkin modifications
2014-08-13 13:13:01 +02:00
Fredrik Osterlind
b8d0b13ccf improved debugging output at referenceVar errors 2014-08-07 13:03:31 +02:00
Fredrik Osterlind
77d17196a7 section address parsing configuration for windows 2014-08-07 13:02:36 +02:00
Enrico Joerns
b9ac2953b7 [cooja] VarMemory: Actually throw UnknownVariableException 2014-08-07 13:01:50 +02:00
Enrico Joerns
0f2837320c [cooja] Reintroduced offset handling for absolute address space 2014-08-07 08:40:41 +02:00
Enrico Joerns
3da6c6d55a [cooja] ContikiMoteType: Fixed Command parsing
- Use `nm -aP` for parsing both addres and size information
- Use symbol section information for parsing
2014-08-07 08:40:21 +02:00
Fredrik Österlind
8b72ab49c0 Merge pull request #764 from ejoerns/pull-req/cooja-fraghead
[Cooja] Simple fragmentation header analyzer
2014-08-06 09:32:57 +02:00
Fredrik Österlind
cb6cb3fc13 Merge pull request #763 from ejoerns/pull-req/cooja-analyzers
[Cooja] Fixes and enhancements for 6lowpan analyzers
2014-08-06 08:55:29 +02:00
Enrico Joerns
d4e36dcd47 [cooja] logging: default logging level should not be highest 2014-08-05 18:22:34 +02:00
Enrico Joerns
f5531dfa74 [cooja] ContikiMoteType: Fix mapfile variable size parsing
For some longer variable names the lines are wrapped after the name
to display size information vertical aligned.
2014-08-05 17:25:38 +02:00
Enrico Joerns
defcd1a34c [cooja] ContikiMoteType: Moved further parse functions to SectionParser classes 2014-07-31 21:53:35 +02:00
Enrico Joerns
66d4dad1e1 [cooja] Removed offset from SectionMoteMemory to make it more generic 2014-07-31 21:53:35 +02:00
Enrico Joerns
c5ff3555a0 [cooja] ContikiMoteType: Introduce abstract SectionParser
Should encapsulate and decrease both redundancy and code duplication
2014-07-31 21:53:10 +02:00
Enrico Joerns
f4979ffeeb [cooja] memory: SectionMoteMemory implementation of MemoryInterface functions
as forwarding to encapsulated memory sections

Requires to make use of Symbol class for cooja motes, too
2014-07-31 21:20:09 +02:00
Enrico Joerns
070e0ba0fc [cooja] memory: Implementation of simple array-backed memory class 'ArrayMamory' 2014-07-31 21:20:09 +02:00
Enrico Joerns
f6a0f54424 [cooja] ContikiMoteType: Some renames and function reordering 2014-07-31 21:20:09 +02:00
Enrico Joerns
dae92d93bb [cooja] ContikiMoteType: Non-functional indention and code style updates 2014-07-31 21:20:09 +02:00
Enrico Joerns
434c4db1a2 [cooja] Implementation of former MspMoteMemory dummy functions 2014-07-31 21:20:08 +02:00
Enrico Joerns
e5a35821c3 [cooja] Implementation of former AvrMoteMemory dummy functions 2014-07-31 21:20:08 +02:00
Enrico Joerns
186240821f [cooja] memory: Moved SectionMoteMemory to package memory 2014-07-31 21:20:08 +02:00
Enrico Joerns
44767324a5 [cooja] memory: Removed AddressMemory class including all references 2014-07-31 21:20:01 +02:00
Enrico Joerns
482dab5d16 [cooja] memory: Removed MoteMemory class including all references 2014-07-31 21:08:18 +02:00
Enrico Joerns
9dd29d56c9 [cooja] getMemory() now returns MemoryInterface
Including code adaptions based on new memory methods to keep code compilable
2014-07-31 21:08:18 +02:00
Enrico Joerns
19d07beb16 [cooja] memory: SectionMoteMemory dummy implementation of MemoryInterface 2014-07-31 21:08:18 +02:00
Enrico Joerns
6b15e7837d [cooja] memory: Added address and symbol based memory access classes 2014-07-31 21:04:53 +02:00
Enrico Joerns
d1c05300a9 [cooja] memory: AvrMoteMemory and MspMoteMemory dummy implementation of MemoryInterface 2014-07-31 16:30:05 +02:00
Enrico Joerns
128ef57289 [cooja] memory: Introduce minimal memory access interface 'MemoryInterface'
A mote should provide access to its memory using this interface.
All high-level access methods are wrapped around this minimal interface.

Contains dummy-implementations of functions for AvrMoteMemory and MspMoteMemory
2014-07-31 16:27:25 +02:00
Enrico Joerns
4ac0250dc9 [cooja] Added base class MemoryBuffer for reading and writing both simple and complex data structures
to and from memory with support for padding.
2014-07-31 13:32:06 +02:00
Enrico Joerns
579f0a9a93 [cooja] Added MemoryLayout class to represent basic information about
motes memory such as word size or endianess
2014-07-31 13:32:06 +02:00
Enrico Joerns
c6f8a2d558 [cooja] Added @Override annotations for relevant files 2014-07-31 13:32:06 +02:00
Enrico Joerns
56e2536884 [cooja] plugins/Visualizer: Simple mote tooltip
Shows a motes type identifier and filename of firmware/sourcecode running on it
2014-07-17 00:30:44 +02:00
Enrico Joerns
a9cf1c1114 [cooja] plugins/analyzers/FragHeadPacketAnalyzer: Printout if first or nth fragment in verbose output 2014-07-11 03:43:56 +02:00
Enrico Joerns
d894390f3e [cooja] plugins/analyzers: printout of UDP ports and clearer layer separation 2014-07-11 03:42:52 +02:00
Enrico Joerns
70a44031bf [cooja] plugins/analyzers/ICMPv6Analyzer: Short names for ICMP types in brief output and more reader-friendly long names 2014-07-11 03:33:41 +02:00
Enrico Joerns
ab0be0b150 [cooja] plugins/analyzers/ICMPv6Analyzer: DTSN field is unsigned 2014-07-11 03:31:24 +02:00
Enrico Joerns
e556419e37 [cooja] plugins/analyzers/IPHCPacketAnalyzer: More verbose output of IPHC options 2014-07-11 03:31:24 +02:00
Enrico Joerns
5ee8c7e178 [cooja] plugins/analyzers/IPHCPacketAnalyzer: Hack for basic Hop-by-hop extension header handling 2014-07-11 03:31:21 +02:00
Enrico Joerns
3b60d96f39 [cooja] plugins/analyzers/IPHCPacketAnalyzer: Full port decompression for UDP header compression 2014-07-11 03:02:49 +02:00
Enrico Joerns
a88328c8db [cooja] plugins/analyzers/PacketAnalyzer: Fixed integer assembly from bytes in getInt() method 2014-07-11 03:00:48 +02:00
Enrico Joerns
9f70a6f327 [cooja] plugins/analyzers/IPHCPacketAnalyzer: fixed ttl encoding,
addded hlim decoding
2014-07-11 02:57:20 +02:00
Enrico Joerns
dbebd123a5 [cooja] plugins/analyzers/IEEE802154Analyzer: More verbose printout including FCF information 2014-07-11 02:52:10 +02:00
Enrico Joerns
649a447c9a [cooja] plugins/analyzers: Replace StringBuffer with lightweight StringBuilder
StringBuffer is a thread-safe version of StringBuilder that introduces
unnecessary overhead.

Additional replaced concatenations with .append()
2014-07-11 02:41:44 +02:00
Enrico Joerns
e16a5d65df [cooja] plugins/analyzers: Added @Override annotations 2014-07-11 02:14:46 +02:00
Enrico Joerns
3e9a780721 [cooja] plugins/analyzers: Indention and whitespace cleanups 2014-07-11 02:07:21 +02:00
Enrico Joerns
d4f7cf6a83 [cooja] plugins/sinks/TrafficVisualizerSkin: Synchronized to avoid ConcurrentModificationExcpetions 2014-07-11 01:03:35 +02:00
Enrico Joerns
cd9164d5e2 [cooja] skins/TrafficVisualizerSkin: Use alpha value to fade out arrow color an potentially allow to configure colors 2014-07-11 00:57:35 +02:00
Enrico Joerns
449046669f [cooja] skins/TrafficVisualizerSkin: Age handling moved to RadioConnectionArrow class which also got some lines of function documentation 2014-07-11 00:57:35 +02:00
Enrico Joerns
7c80213c3a [cooja] skins/TrafficVisualizerSkin: Reduce array copy and iteration overhead 2014-07-11 00:57:35 +02:00
Enrico Joerns
468d533c41 [cooja] skins/TrafficVisualizerSkin: Removed unnecessary 'historyCopy' 2014-07-11 00:57:35 +02:00
Enrico Joerns
ea80fd9257 [cooja] skins/TrafficVisualizerSkin: Use LinkedList instead of ArrayList to increase add and remove performance 2014-07-11 00:57:34 +02:00
Enrico Joerns
c92f83c048 [cooja] skins/TrafficVisualizerSkin: Indicate sent but unreceived messages by a red double circle around mote 2014-07-11 00:57:34 +02:00
Enrico Joerns
0e78bc67f9 [cooja] skins/TrafficVisualizerSkin: Added @Override annotations and added some final modifiers 2014-07-11 00:57:34 +02:00
Enrico Joerns
d8cf0d1349 [cooja] plugins/Visualizer: Deselect motes when removing
This also fixes visualization issues such as
remaining transmission range underlays for removed motes
2014-07-11 00:41:53 +02:00
Enrico Joerns
8b1bf449ee [cooja] plugins/Visualizer: Key control: Allow to abort actions with ESCAPE key and delete motes using DELETE key 2014-07-11 00:41:53 +02:00
Enrico Joerns
73fbb69e39 [cooja] plugins/Visualizer: Partly implement behavior of beginMoveRequest to fit new mote movement handling 2014-07-11 00:41:53 +02:00
Enrico Joerns
39f7ca586f [cooja] plugins/Visualizer: Mouse release always terminates previous action
and reses actions state and cursor appearance

Also renamed UNKNOWN state to NONE as it is a more adequate name for the new behavior
2014-07-11 00:41:53 +02:00
Enrico Joerns
2465a361e3 [cooja] plugins/Visualizer: Group mote placement modifications together (move, delete) 2014-07-11 00:41:53 +02:00
Enrico Joerns
99e74e8348 [cooja] plugins/Visualizer: Implemented multi-mode behavior of delete mote menu for move, too
Note that this does not yet implement the correct behavior of beginMoveReques()
2014-07-11 00:41:52 +02:00
Enrico Joerns
3ada5671ef [cooja] plugins/Visualizer: Fixed node selection in Delete menu handling
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.
2014-07-11 00:41:52 +02:00
Enrico Joerns
6594684342 [cooja] plugins/Visualizer: Enable multi-mote deletion in mote menu 2014-07-11 00:41:52 +02:00
Enrico Joerns
963d2686f3 [cooja] plugins/Visualizer: Fix: Always highlight selected motes.
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.
2014-07-11 00:41:52 +02:00
Enrico Joerns
80dc21d5d5 [cooja] plugins/analyzers: Added PacketAnalyzer for 6lowpan fragmentation header 2014-07-10 09:19:32 +02:00
Claes Jakobsson
9c08f28956 Added EEPROM support for Cooja with a rudimentary hexdump -C like viewer in the mote interface view 2014-05-08 22:35:58 +02:00
Fredrik Österlind
9adf75b10d Merge pull request #450 from darki2002/DGRM_support_BaseRSSI
Base RSSI support for DGRM
2014-04-27 11:36:10 +02:00
Jens Dede
823abf9d94 Fix exported simulation: add jsyntaxpane JAR, start simulation with maximum speed 2014-04-26 16:02:50 +02:00
Fredrik Österlind
d3b9954342 Merge pull request #639 from ejoerns/pull-req/cooja-plugin-pos
[Cooja] Set location of newly created plugins relative to second last activated plugin
2014-04-15 09:51:29 +02:00
Enrico Joerns
055c70b455 [cooja] Set location of newly created plugins relative to second last activated plugin.
Setting the position based on the number
of total inner frames was very inflexible
and caused pad positioning for larger number
of frames.

Setting the location of new plugin frames
to the second last activated one tries to
meet two requirements:
- Avoid covering the last activated plugin frame,
i.e. the one that was active when new plugin
start was invoked.
- Set new plugin near an actively used desktop pane
location and allow 'diagonal stacking'
2014-04-15 00:48:52 +02:00
Enrico Joerns
b53cee163d [cooja] plugins/LogListener: Prevent from throwing
ArrayIndexOutOfBoundsException in case of empty logTable
2014-04-15 00:22:24 +02:00
Enrico Joerns
ad0e192d84 [cooja] plugins/Visualizer: Replaced multiple if-string with switch over
strings
2014-04-11 09:23:30 +02:00
Enrico Joerns
cef3c4079d [cooja] Reformatted Visualizer and skins code 2014-04-11 09:23:28 +02:00
Enrico Joerns
ea979fa027 [cooja] plugins/Visualizer: Use more specific catches and multi-catches
if possible
2014-04-11 09:20:53 +02:00
Enrico Joerns
84b687efeb [cooja] Automated code updates that do not make any functional changes
- made loggers final
- added some diamond interface cosmetic
- shortened if-return statements
- replaced size == 0 check with .isEmpty()
2014-04-11 09:20:52 +02:00
Enrico Joerns
6e9b0e1497 [cooja] Added @Override annotations for Visualizer and skins 2014-04-11 09:20:52 +02:00
Enrico Joerns
8e648bcece [cooja] apps/mrm: Adapted MRM visualizer skin to show adequate
information for multi-selections
2014-04-11 09:20:52 +02:00
Enrico Joerns
e69b08f5fd [cooja] plugins/skins: Adapted DGRM and UDGM visualizer skins to show
adequate information for multi-selections
2014-04-11 09:20:46 +02:00