Commit graph

1993 commits

Author SHA1 Message Date
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
Enrico Joerns ac61c45950 [cooja] plugins/Visualizer: Updated quick help to match new control
capabilities
2014-04-11 09:05:53 +02:00
Enrico Joerns 22ac769781 [cooja] plugins/Visualizer: Multi-mote selection functionality
This adds multi-mote selection capabilities to the visualizer plugin:

- [Ctrl + Mouse Drag]: Rectangular selection of multiple motes
- [Ctrl + Mouse Click]: Add/Remove motes from current selection
- Mouse Drag on any selected Mote: Move all currently selected motes

Note: This changes previous behaviour of using Ctrl key.
2014-04-11 09:05:38 +02:00
Moritz 'Morty' Strübe 50fe1e7046 Also remove uninitialized motes 2014-03-20 14:51:05 +01:00
Enrico Joerns 418c51a7d5 [cooja/mspsim] a single sky mote in cooja.config should be sufficient 2014-03-08 01:18:07 +01:00