Commit graph

2485 commits

Author SHA1 Message Date
Oliver Schmidt 8082ddac41 Adjusted tests to recent changes.
The email and ftp programs aren't relevant anymore so support for them was removed from the cc65 builds. The explicit 80 column programs were added. The 80 colum web browser and Telnet server are built for all cc65 platforms as they are the largest and as such show best code increase issues.
2015-10-31 12:36:37 +01:00
Oliver Schmidt 5443c740e9 Added 80 column IRC client / web browser for the C64.
Recently support for 80 column CONIO based on 320x200 graphics was added to the cc65 C library for the C64. This change leverages this for the IRC client and the web browser. Because not everybody prefers this 'soft80' display with its small 4x8 charbox the 40 column programs are still available as before (with the new programs called 'irc80' and 'webbrowser80').
2015-10-30 16:48:00 +01:00
Oliver Schmidt fb5d0b7ef0 Made 80 column display a cc65 application attribute.
So far 80 column display was an attribute of a cc65 platform. Now each cc65 application can ask for 80 column display by defining WITH_80COL. Of course this is ignored by platforms incapable of 80 column display.

I see three types of application:

* Applications not benefitting from 80 column at all and in fact looking better with 40 column display. These are now using 40 column display. Examples: ethconfig, ipconfig

* Applications taking advantage of 80 column display if it is available without drawbacks. These stay as they were. Examples: Telnet server, web server, wget

* Applications needing 80 column display so urgently that it is likely desirable even if the display becomes harder to read. These come now in both flavors allowing the user to choose. Examples: IRC, web browser

Note: This change doesn't actually introduce any 80 column display with drawbacks. This if left to a subsequent change.
2015-10-30 12:42:58 +01:00
Tommy Sparber d817540f19 CCITT_CRC.java Change line endings from CRLF to LF
and remove trailing whitespaces.
2015-10-29 22:54:12 +11:00
Tommy Sparber 64c66efd7f Fix serialdump.c warnings (clang)
Using clang (on osx) yields to some warnings
(conversion between signed/unsigned, unused variable)
which gcc would only produce when used with -Wall.
This commit fixes those.
2015-10-28 17:46:59 +11:00
Simon Duquennoy 0e31bb12ea Moved generic baudrate defines and selection code to a new module tools/tools-utils.[ch] 2015-10-23 10:54:58 +02:00
Simon Duquennoy 88118482a8 Added more baudrates, added missing defs for MacOS 2015-10-23 10:54:57 +02:00
Simon Duquennoy 55d81ddd3a tunslip6: support MTU configuration, XON/XOFF flow control, and baudrates up
to 1000000 mbps
2015-10-23 10:54:57 +02:00
Simon Duquennoy 9171ba17fc Merge pull request #1304 from simonduq/pr/fix-tunslip6
Fix tunslip6
2015-10-23 09:37:01 +02:00
Rémy Léone f2440235b5 Fix CSC & XML export to match .gitattributes 2015-10-22 16:05:40 +02:00
Oliver Schmidt 61a5d234eb Merge pull request #1316 from oliverschmidt/master
Added ZIP file creation to retro distro Makefile.
2015-10-21 11:24:15 +02:00
Oliver Schmidt 4db4b7fcf2 Added ZIP file creation to retro distro Makefile.
The ZIP includes a comment containing the Git SHA of the code built.
2015-10-20 18:18:35 +02:00
Valentin Sawadski b0c7dabf4c Removes duplicate of uip_is_addr_linklocal
A simple search and replace of `uip_is_addr_link_local` to ensure the more
commonly used `uip_is_addr_linklocal` is used consistently.
2015-10-20 11:18:46 +02:00
Gaëtan Harter e5c7437e17 Fix default tun/tap issue with multiple tunslip6
When running multiple tunslip6 instances, it collides with tun0 being already
used (cannot open file).
However, system default is already to use "tun0" and "tap0".

By putting the default empty string as name, system automatically increment and
selects a free interface, "tun0", "tun1".
2015-10-19 17:52:23 +02:00
Simon Duquennoy 10bd49a71a Merge pull request #756 from sieben/dos2unix
dos2unix fix
2015-10-18 20:26:07 +02:00
Moritz 'Morty' Strübe e544e4c5b0 Cooja: Make sure motes are always removed from the list of unintialized motes 2015-10-15 10:17:07 +02:00
Moritz 'Morty' Strübe f17fc20fe7 Fix SafeRandom logic 2015-10-15 10:09:57 +02:00
Moritz 'Morty' Strübe 6f86e0bd92 Typos 2015-10-15 10:09:41 +02:00
Simon Duquennoy a9a46b29cc tunslip6: disable IP address inquiry by default. Document -I flag 2015-10-13 09:54:06 +02:00
Simon Duquennoy 30f69b0852 Revert "tunslip6: make printing of sensible strings from mote more reliable"
This reverts commit 6608b62b01.
2015-10-13 09:35:25 +02:00
Simon Duquennoy e6978aba4e Updating mspsim submodule to latest 2015-09-30 21:47:14 +02:00
Simon Duquennoy 2398b1c287 Merge pull request #676 from mcr/mcr_tunslip1
some additions to tunslip6 to make it a bit easier to diagnose problems with it
2015-09-28 13:19:26 +02:00
Simon Duquennoy f9537b6355 Merge pull request #1219 from simonduq/jn516x-port
NXP JN516x Platform
2015-09-25 12:09:52 +02:00
Simon Duquennoy 11f9b780c8 Added tools for NXP JN516x 2015-09-23 14:38:40 +02:00
Fredrik Österlind 88f8d25070 Merge pull request #1122 from cetic/pr-always-add-crc
Add CRC to packets send by CoojaMote
2015-09-23 09:10:44 +02:00
Fredrik Österlind e731848624 Merge pull request #1120 from cetic/pr-fix-cooja-packet-analyzer
Cooja: Clone packet data before modifying it in packet analyser
2015-09-23 09:08:08 +02:00
Lars Schmertmann 46ffc509c1 Added App/Tool/Example for usage of additional flash on econotag/mc1322x 2015-09-14 20:43:12 +02:00
Mattias Buelens 72aac552ef Cooja: Track CFS file size
Previously, the Cooja mote assumed that its file was always initially empty (file.endptr == 0). Therefore, a file uploaded to a mote's CFS could never be read by the mote, as the mote would prevent reads from going past the EOF (indicated by endptr).

By tracking the file size and making it accessible to Cooja, the correct size of the uploaded file can be reported to the mote and allow it to read the uploaded file.
2015-09-09 23:06:09 +02:00
Rémy Léone 7a5071dd30 Adding a gitattributes and correcting line-endings
https://help.github.com/articles/dealing-with-line-endings/
2015-09-07 15:40:02 +02:00
Fredrik Österlind dde83500c9 Merge pull request #1056 from tim-ist/packet_sync
[Cooja/cc2420] Check the frame preamble and MPDU length before parsing an outgoing packet
2015-09-07 14:36:15 +02:00
Fredrik Österlind 650de13ad8 Merge pull request #822 from cmorty/pull/cooja_saferandom
Make Random simulation thread safe
2015-09-01 11:13:23 +02:00
Sebastian Schinabeck ef779d4fc1 settingsObservable superseded by radioMediumObserver
Wasn't used anyway
2015-08-31 14:59:53 +02:00
Sebastian Schinabeck c1a275f0b2 Refactored RadioMediumObservable and added new Observable
Refactored RadioMediumObservable to RadioTransmissionObservable because of its function
Added correct RadioMediumObservable and updating in AbstractRadioMedium, DirectedGraphMedium and MRM
Added some documentation
2015-08-31 14:59:47 +02:00
Sebastian Schinabeck 42077adbb1 Add ScnObservable class with setChangedAndNotify() function
The ScnObservable extends the normal Observable with the combined setChangedAndNotify() function
2015-08-31 14:40:39 +02:00
Simon Duquennoy cc3bcbefd4 Merge pull request #1076 from cmorty/pull/serialdump
Make EINVAL handling more robust and revert binary
2015-08-28 23:54:43 +02:00
Adam Dunkels e859ad8e05 Need to increase the Cooja serial buffer size to accomodate the traffic 2015-08-27 10:28:54 +02:00
Adam Dunkels bfb29d2f11 Merge pull request #1116 from cetic/pr-uip-clear-buffer
Add uip_clear_buf() macro and replace all instances of uip_len = 0
2015-08-27 10:27:08 +02:00
Oliver Schmidt a3dba2e25c Changed Apple II 800kB floppy image type.
The .2mg image format contains a header which is missing from our file. So our file is rather a .po image.

I opted to not add the .2mg header as it is only necessary if the metadata it contains differs from the values "guessed" when using the "naked" .po image format. On the other hand there are image file consumers not understanding the .2mg image format.
2015-07-05 14:21:03 +02:00
Laurent Deru 68c284b955 Do not add a CRC to packet incoming from RfListener 2015-06-16 10:36:33 +02:00
Laurent Deru 6891ca12b0 Add crc to packets send by coojamote 2015-06-16 10:35:34 +02:00
Laurent Deru 7a56d91c50 Clone packet data before modifying it 2015-06-16 10:34:19 +02:00
Laurent Deru 1784338b2e Add uip_clear_buf() macro and replace all instances of uip_len = 0; with it 2015-06-15 11:10:51 +02:00
Oliver Schmidt 1493648fab Removed obsolete apps from retro distribution.
- By end of Jan 2014 SuperTweet.net was shut down (http://supertweetnews.140plus.com/). So Breadbox64 has come to an end for sure :-(

- The email app - or rather email sending app as it is SMTP only - can't be used anymore since nowadays everybody uses some "strong" authentication for SMTP session logon (thanks NSA).

- The ftp client app isn't very useful as it supports only download - for which the WGET app is almost always more useful for. But more important it doesn't support PASV which is more or less the only supported mode nowadays (especially over NAT).
2015-06-14 21:19:37 +02:00
Timofei Istomin eb4bdde9ca Finish the transmission at the end of a correct packet
This patch restores the original behaviour of Cooja when
the transmitted packet is correct (which is true in a vast majority
of cases).

In case of a wrong outgoing packet (wrong length, wrong preamble)
the transmission will end when the radio changes its state (which
should always happen after transmitting a packet).

Benchmarks with RPL (33 runs, 50 nodes, 3 hours of simulated time each)
yield the same results (PDR, delay, number of transmitted packets)
as with the unmodified Cooja.
2015-06-05 15:13:45 +02:00
Oleg Hahm fbeea78749 fix mixture of spaces and tabs for z1-bsl-nopic 2015-06-01 17:34:18 +02:00
Oleg Hahm 116ade0e63 z1-bsl-nopic requires Python 2 2015-06-01 17:34:00 +02:00
Timofei Istomin 034a97eed2 Don't generate a zero-length packet in case of errors.
The packet converter used to generate packets of length zero
when it encountered errors during conversion. This caused
exceptions in packet analyzers.

Now the converter returns null in case of error. Appropriate
checks have been added to the code that uses the return value.
2015-05-28 22:11:50 +02:00
Michael Richardson 11c3dcc622 tunslip6: added some better clarification of errors when TUNSETIFF fails 2015-05-24 18:55:12 -04:00
Michael Richardson f1433f7d5f tunslip6: option to turn off processing of IPA= address allocation 2015-05-24 18:55:07 -04:00
Michael Richardson 6608b62b01 tunslip6: make printing of sensible strings from mote more reliable 2015-05-24 18:55:02 -04:00
Michael Richardson 6b473301c5 tunslip6: removed commented out line printing IP address 2015-05-24 18:54:55 -04:00
Michael Richardson ab2c110c70 tunslip6: show progres with -P argument 2015-05-24 18:54:49 -04:00
Michael Richardson 6232cc488c tunslip6: remove trailing whitespace 2015-05-24 18:54:38 -04:00
Fredrik Österlind d1f976886f Merge pull request #1040 from atiselsts/cooja_multichannel
Improve multichannel support in Cooja
2015-05-19 08:59:06 +02:00
Moritz 'Morty' Strübe e38bc3bdcd Revert binary: serialdump-linux 2015-05-18 15:30:05 +02:00
Moritz 'Morty' Strübe d8639df64b Fix EINVAL handling and O_DIRECT 2015-05-18 15:24:18 +02:00
Moritz 'Morty' Strübe c4f8f0acfb Add regression-test for tools 2015-05-17 12:26:08 +02:00
Simon Duquennoy f45c6ad1b0 Merge pull request #1048 from cmorty/pull/serialdump
Fix and clean up serialdump.c
2015-05-15 20:12:58 +02:00
Fredrik Österlind 9261ff5d13 Merge pull request #979 from TheGeorge/drifting-motes
Time Drifting Motes
2015-05-13 11:21:34 +02:00
Moritz 'Morty' Strübe 23d6250584 Turn on optimization 2015-05-11 10:43:05 +02:00
Moritz 'Morty' Strübe 16f7c2448c Improve error message 2015-05-11 10:43:05 +02:00
Moritz 'Morty' Strübe 1e359d2324 Improve O_SYNC logic 2015-05-11 10:43:04 +02:00
Moritz 'Morty' Strübe 425c58e79d Set default speed to 115200 2015-05-11 10:43:04 +02:00
Moritz 'Morty' Strübe d26afef966 Fix serialdump.c
_GNU_SOURCE is needed for O_DIRECT
time.h is needed for strftime
2015-05-11 10:43:04 +02:00
Moritz 'Morty' Strübe 016bcdb8a8 Fix indentation 2015-05-11 10:42:54 +02:00
Adam Dunkels fb64e64ae2 Java code to let Cooja connect to a serial port 2015-05-10 10:51:12 +02:00
Timofei Istomin eae25d622d Check the frame preamble and MPDU length before parsing
Due to errors in mspsim and/or radio drivers, packets of incorrect
length are sometimes transmitted. The length might be larger than
the 127-byte maximum (considered negative in the current code)
or not matching the actual number of transmitted bytes.
This leads to wrong packet delimiting when converting from
the mspsim-level stream of bytes to Cooja-level packets
causing unhandled exceptions that terminate the simulation.

This patch checks the frame preamble (0000007A) and the length field.
If they are wrong, no decoding attempt is done.

The transmitted bytes are still delivered to the receivers untouched.
The connection is terminated when the radio state is changed (which alway
s happens when TX is done).
2015-05-08 18:52:34 +02:00
Andreas Löscher abe8e024ce fixed a bug where the scheduled time is not the executed one 2015-05-07 13:24:30 +02:00
Andreas Löscher 44c317ce1c Fix: the last execution time must be carried over when skipping 2015-05-07 13:24:30 +02:00
Andreas Löscher 2bd50bcbdc better implementation of the drifting 2015-05-07 13:24:30 +02:00
Andreas Löscher 21a22caf33 Added GUI and config file handling for Clock 2015-05-07 13:24:30 +02:00
Andreas Löscher cb6759c0a9 Time deviation support for Mica Motes 2015-05-07 13:24:30 +02:00
Andreas Löscher efbd170733 standart deviation is 1.0 2015-05-07 13:24:30 +02:00
Andreas Löscher 97da226255 time deviation for MSP based nodes 2015-05-07 13:24:30 +02:00
Andreas Löscher 1c4a6f701e No deviation support for Contiki motes 2015-05-07 13:24:30 +02:00
Andreas Löscher d2ddafb1d2 typos 2015-05-07 13:24:30 +02:00
Andreas Löscher ff4aee68bd Support in the mote clock interface for time deviation 2015-05-07 13:24:30 +02:00
Atis Elsts 67427b9b86 Improve multichannel support for Cooja.
* Fix CCA detection in Cooja in the case when the receiver swicthes on the right channel during an ongoing transmission. Always add a connection on transmission, even when the channel is not correct. Initially the connection is in a dormant state; this mimics what Cooja is doing when the receiver radio is turned off;
when the receiver is turned on and switched to the right channel, `updateSignalStrengths()` is called, and the connection starts to recieve PHY-level traffic.

* Add "channel" property for DGRM edges.

* Avoid cross-channel interference on DGRM and MRM radio mediums
2015-04-28 18:43:55 +02:00
Oliver Schmidt a824722862 Merge remote-tracking branch 'upstream/master' 2015-04-26 14:35:40 +02:00
Oliver Schmidt da536cb07c Removed superfluous AppleCommander parameters. 2015-02-21 17:16:08 +01:00
Andreas Löscher a4206273a5 Fixed HC analyser for SAC and DAC fields 2015-02-16 13:58:36 +01:00
Jelmer Tiete 44d1a376ec Updated cc2538-bsl submodule to version 1.1 (d6711e2). Most important changes include support for Python3, fixed a bug that would make synch fail on first try, added support for DTR and RTS pins driving Bootloader_enable and Reset pins, versioning system, setting of secondary IEEE address, general clean-up. 2015-02-12 20:13:40 +01:00
Simon Duquennoy a9cc909794 Network layer configuration: replace UIP_CONF_* with NETSTACK_CONF_WITH_* 2014-12-01 21:02:57 +01:00
Simon Duquennoy 722b3258d1 Cleanup of the Contiki network layer configuration. Now using CONTIKI_WITH_IPV6, CONTIKI_WITH_IPV4, and CONTIKI_WITH_RIME in makefiles, and UIP_CONF_IPV6, UIP_CONF_IPV4, UIP_CONF_RIME in c code. Now only the stacks that are used are compiled (via makefile MODULES). Make IPv6 the default network stack. 2014-12-01 20:13:09 +01:00
kkrentz fb00a217f5 packetbuf: Use packetbuf_holds_broadcast() all-over 2014-11-13 09:58:08 -08:00
Moritz 'Morty' Strübe 380c6b7622 Make Random thread safe 2014-11-13 13:09:23 +01:00
Moritz 'Morty' Strübe 1692169138 Output sha1sums of files used for simulation on fail
This helps reproducing results from the CI
2014-11-13 09:10:53 +01:00
Fredrik Österlind 16141845cf Merge pull request #850 from TheGeorge/master
Pull request for issue #840
2014-11-10 15:36:57 +01:00
Andreas Löscher 6d61893e09 Fixed a bug with the ScriptRunner plugin
The ScriptRunner plugin started the simulation in GUI and NOGUI mode.
Now the simulation is only started in nogui mode
2014-11-07 13:53:16 +01:00
Andreas Löscher f68bc3a40b fixed a bug in executeJAR 2014-11-07 12:09:14 +01:00
Andreas Löscher 0e729592f3 Added the control plugin behaviour to executeJAR 2014-11-07 11:45:38 +01:00
Enrico Joerns f49e1b8f5f Button: Allow to press and release button by mouse and key
In the previous implementation a click event was triggered when the
button was pressed.
This implementation allows to set and release buttons independently both
by mouse clicking and by key typing.
2014-11-07 01:38:54 +01:00
Andreas Löscher 4dcc3ba7fa Better error message when aborting simulation 2014-11-06 17:23:01 +01:00
Andreas Löscher 6cbe94b7e9 New PluginType SIM_CONTROL_PLUGIN for sim control
SIM_CONTROL_PLGUIN are handled like SIM_PLUGIN, with one exception.
If the simulation is started with -nogui=<simfile> than it is checked
if a controlling plugin is loaded. If not, the simulation terminates
with an error message.
2014-11-06 17:16:24 +01:00
Enrico Joerns bc6b7535d0 Buttons: use non-deprecated MSPSim button api 2014-11-04 01:48:12 +01:00
Enrico Joerns b5d119babd Buttons: Some minor cleanups
Removed imports not required anymore and made some class members final
2014-11-04 01:48:12 +01:00
Enrico Joerns b28c593776 Buttons: Added missing @Override annotations 2014-11-04 01:48:12 +01:00
Enrico Joerns 0a63922fa2 Buttons: Move implementation of button routines to Button class
The implementation of clickButton(), pressButton(), and releaseButton()
can be shared accross the several node-dependent implementations as
they use the node-dependent doPressButton() doReleaseButton() routines.
2014-11-04 01:48:12 +01:00
Enrico Joerns be88a4fc52 Button: Add doPressButton() and doReleaseButton() to Button class
As every Button has a node-specific implementation part, this should be
the minimal interface to the backend node emulator for pressing and
releasing a button.
2014-11-04 01:48:11 +01:00
Enrico Joerns 378ca2629d Button: None of the buttons will saves its state
Saving a buttons state in simulation file is not required as its state
is much too volatile.
2014-11-04 01:48:11 +01:00