Commit Graph

  • b770038cb6 FIXED - typo master origin/master origin/HEAD mlalondesvn 2009-02-06 16:12:28 +0000
  • 64380d09c9 MODIF - Changed all functions to inline. REMOVE - Hex utility functions mlalondesvn 2009-01-29 17:13:32 +0000
  • e444588173 Add author, license and copyright details. (Which weren't permitted in competition entry source.) follower 2008-02-16 10:43:34 +0000
  • 455c965626 Add the tidied up code from my Circuit Cellar design competition entry. This will be the new base for further development. follower 2008-02-16 06:49:40 +0000
  • 90daf297bd MODIF - More commenting and headers mlalondesvn 2008-02-09 06:48:47 +0000
  • 26f18000a2 MODIF - More comments mlalondesvn 2008-02-09 06:38:57 +0000
  • 9fbddf67bf ADDED - HDQ Library mlalondesvn 2008-02-09 05:35:11 +0000
  • f31d49e1e4 Enable sketches to be uploaded without the Arduino being power-cycled--by waiting for a connection again once a sketch has been uploaded. follower 2008-01-29 14:43:33 +0000
  • c27a9e3d25 Argh. That last commit was unintentional--what a mess... :-/ Okay, well, that was the IRC functionality... Gratuitous version change. follower 2008-01-29 10:12:32 +0000
  • aac1dc7f2a Change PIN_RESET to match pin on Netduino sheild prototype. NOTE: This is an INCOMPATIBLE change with existing connections. Add SPI_EN pin usage to allow future use of other items on the SPI bus. NOTE: This is *also* INCOMPATIBLE with existing connections. Add sketch upload functionality comment. follower 2008-01-29 10:07:50 +0000
  • 7e1137fa16 Quick commit of code to program sketch onto another ATMega chip. follower 2008-01-21 09:44:00 +0000
  • bedd180b0f Bah, that previous commit was the *current* uncommited code, which I hadn't intended to commit... Ummm. Yeah. So let's through this stupid thing in. follower 2008-01-09 15:37:51 +0000
  • 6dccead96d Fix the file name. follower 2008-01-09 15:26:30 +0000
  • a7b171f433 Copy current (old) version of demo to serve as base for serial/net proxy demo. follower 2008-01-09 15:25:41 +0000
  • 411a834cd5 Switch our test code back to the non-class style for temporary development purposes. follower 2007-12-22 15:57:17 +0000
  • f803ac7c6b Now do the annoying rename... follower 2007-12-22 15:53:40 +0000
  • 4813578111 Copy current echo server demo to serve as base for client demo. follower 2007-12-22 15:51:40 +0000
  • 2b9fcedc53 Exclude currently unused code so we get a more accurate idea of demo code size (<8.9K). follower 2007-12-19 14:20:46 +0000
  • c63aa9aca5 Change demo to enable *four* simultaneous echo server connections at once\! follower 2007-12-19 14:16:50 +0000
  • f9153bf652 Update head comments and revision information. follower 2007-12-19 13:28:45 +0000
  • 9a9ff8ed2a Use new 'EchoServer' classes for demo instead of old non-class demo. Run two echo servers simultaneously on ports 7 & 8 for one connection each. Note: When I first did this I didn't realise that the driver/chip seems to function quite happily when two servers listen on the same port--it seems to queue them. follower 2007-12-19 13:24:25 +0000
  • 43c20bf422 Add guts of 'EchoServer' state machine. (Currently unused.) follower 2007-12-19 13:16:40 +0000
  • 11551d3b61 Add defines for echo server state machine states. Add place to store current state. Initialise first state and listen. (Currently unused.) follower 2007-12-19 13:11:18 +0000
  • b2ed21239a Add rough hacky method to allow multiple sockets to be created. This needs to be fixed to (a) not create more than MAX sockets and (b) reuse sockets that have been closed. TODO: DO THIS PROPERLY\! follower 2007-12-19 12:51:41 +0000
  • a1e0e9864b Add comment about the need to investigate if we need to use 'disconnect' or not. follower 2007-12-19 12:39:11 +0000
  • e9e5b4dd44 Remove redundant 'NetworkConnection::' namespace reference. follower 2007-12-19 12:37:16 +0000
  • 677877160c Add initial skeleton for EchoServer class. (Not yet used.) follower 2007-12-13 14:23:05 +0000
  • 4f372c3010 Add single byte 'print' function to send data. The name is to match the 'Serial.print' function. TODO: Print strings etc? Change demo to echo data received to sender. follower 2007-12-11 13:10:43 +0000
  • 7d38f68179 Add 'available()' method to connection to match 'Serial.available()'. Change 'read()' method to match behaviour of 'Serial.read()'. Document some of this. Print bytes received from the demo to the console. follower 2007-12-11 12:18:09 +0000
  • e76648310b Change 'read' declaration to return an int to match the 'Serial.read' functionality--I don't overly like the approach but that's what I'm wanting to be compatible with. Note: We haven't actually matched the behaviour yet. follower 2007-12-11 11:55:47 +0000
  • 695136deb2 Correct comment about 'read' blocking for data--it seems that 'recv' actually doesn't block after all. follower 2007-12-11 11:54:14 +0000
  • 89bb89f05a Close connection when demo is finished. follower 2007-12-11 11:33:02 +0000
  • 265a634089 If the connection 'listen' method fails we bail into an infinite loop. TODO: Provide a way for the caller to detect and handle this kind of error? follower 2007-12-11 11:28:39 +0000
  • 2fc2cf46a8 Change connection listen method to return a boolean indicating whether the socket began to listen successfully. TODO: Use this value usefully. follower 2007-12-11 11:14:44 +0000
  • b0cfc84abe Add a comment about default socket possibility. follower 2007-12-11 11:08:57 +0000
  • 4979f30019 Add connection byte read method--not yet used. follower 2007-12-11 11:07:38 +0000
  • c89615a4a3 Store maximum number of sockets available to us. Note: We don't use this currently as we hardcode to always use socket number 0--which means things will break if someone tries to create more than one socket. TODO: Fix this, obviously... :-) follower 2007-12-11 11:02:48 +0000
  • 5e153c539e A quick fix to enable things to work again. The bug occurred because the socket number supplied to the socket creation/activation routine was never correctly initialised. I had thought a call to 'socket' routine returned the socket number in the first parameter, but it turns out I was supposed to _supply_ the socket number. (I had misunderstood what was hidden behind the 'SOCKET' type definition.) Oddly enough it took nearly two months before this mistake caused something to stop working (seemingly)--it seems nonsensical values didn't always cause failure. TODO: Investigate this further? TODO: FIx properly to allow multiple sockets and tracking thereof. follower 2007-12-11 10:47:04 +0000
  • 8247d829a2 Add method to close socket. NOTE: This change BREAKS THINGS and the demo NO LONGER FUNCTIONS. The problem is however unrelated to the commit--this code simply reveals an already existing bug due to the socket number being uninitialised. Now I've found out why the problem occurs I can fix it in the next commit. follower 2007-12-11 10:41:31 +0000
  • e4dfd94a4c Change 'listen' methods to take a 'uint16_t'. Temporarily include a test socket creation--THIS BREAKS the webserver demo. NOTE/TODO: Supplying port numbers greater than 255 IS BROKEN--I don't know why--see comments for more details. follower 2007-12-10 13:29:28 +0000
  • 6e0f16aec1 Add 'isConnected' method to 'NetworkConnection' in prepartion for use. follower 2007-12-10 12:31:19 +0000
  • 45481088d4 Add initial skeleton of the plain socket wrapping 'NetworkConnection' class--it is not yet used though. follower 2007-12-10 12:19:27 +0000
  • 228508d0a9 Move and reword configuration debug messages. follower 2007-12-10 11:43:48 +0000
  • 06f8f9a220 Remove test code. TODO: Add check/diagnostic ability to determine if the module and driver are functioning correctly? follower 2007-12-10 11:40:37 +0000
  • 4aaf08a396 Move default configuration into NetworkInterface constructor. Change default values. follower 2007-12-08 15:06:40 +0000
  • 3e04fbc259 (*Much* later...) Include skeleton of 'NetworkInterface' class and enable it to be initialised with a pre-configured 'Wiz810MjDevice' instance. (This required the use of 'References' and an 'initialization list' which was all news to me...) follower 2007-12-08 14:01:59 +0000
  • 0252654324 Remove old configuration data. follower 2007-12-08 11:29:02 +0000
  • d8f3eb266e Convert MAC address configuration to class method. follower 2007-12-08 11:26:37 +0000
  • b7867b8f80 Add six-byte buffer packing method to allow for MAC address configuration. follower 2007-12-08 11:21:06 +0000
  • 0abd75b40c Fix variable name in 'setIp' declaration. Add and convert to methods for configuring net mask and gateway. follower 2007-12-08 11:13:15 +0000
  • 0cc5fc9107 Move scratch buffer manipulation into helper method. Convert IP address configuration to use new method. follower 2007-12-08 10:59:40 +0000
  • 395266e282 Begin moving network configuration into Wiz class and convert IP address configuration to the new method. follower 2007-12-08 10:50:48 +0000
  • c61d2ef510 Move network module initialisation into class. follower 2007-12-08 09:15:56 +0000
  • 732e4ac846 Add skeleton of Wiz810MJ class. follower 2007-12-08 09:01:35 +0000
  • 5f2b65048d Change SPI configuration to use an object so we can match the 'Foo.begin()' convention of the standard Arduino Serial configuration people are used to seeing. follower 2007-12-08 08:32:22 +0000
  • 11ab05e210 Move SPI configuration function into a static class method of the SPI class. follower 2007-12-08 08:24:54 +0000
  • 89111a4e8c Add skeleton of SPI class. follower 2007-12-08 08:11:48 +0000
  • 4377145f3e Fix the filename. follower 2007-12-08 04:17:33 +0000
  • 2f5c9a5c42 Now that we've slightly tidied up WizDemo3 we'll leave it in peace. follower 2007-12-08 04:17:14 +0000
  • 621951f38a Simplify state machine defs and remove unneeded ones. follower 2007-12-08 03:33:47 +0000
  • fb104053ee Remove now unused 'sendPrompt' routine. follower 2007-12-08 03:29:47 +0000
  • 2e4f5189df Add some comments to 'readMatch'. follower 2007-12-08 03:27:20 +0000
  • 3d3d14263a Use new 'readMatch' routine to match start of the request to simplify state machine. follower 2007-12-08 03:13:10 +0000
  • e732cd1a42 Add routine to read and match bytes received. (Essentially strcmp replacement without requiring a large receive buffer.) Note that failed matches drop any bytes matched successfully. follower 2007-12-08 03:05:21 +0000
  • a099cfd0af Tidy up code by removing now unused rx buffer and other dead code/comments. follower 2007-12-08 02:57:09 +0000
  • b2fe6b8e9c Move the byte receiving into a convenience function and stop using the rx buffer. follower 2007-12-08 02:53:04 +0000
  • 5e9cbb88e0 Of course, it might be nice if we change the filename to be consistent too. (Also, the following changes are really 'back-porting' from a demo version I have on local disk.) follower 2007-12-07 13:29:50 +0000
  • 346522a470 Start working on a new 'tidier' version of the webserver demo but keep the old one around so we don't confuse people with a broken one... follower 2007-12-07 13:27:16 +0000
  • 3d6b27c0e3 Fix for Safari not displaying the response correctly--the issue was it displayed the Content-Type header in the page--seemingly due to using '\r' in the response (I thought this was required...). Also change the buffer offset used to change the page background colour to match the corrected response string. follower 2007-12-07 13:03:16 +0000
  • 3b8dab23f0 Apply xSmurf's fix for the order of socket close/disconnect. With this fix Safari isn't left hanging, but the response isn't displayed 100% correct due to another bug--a fix for that comes up next. follower 2007-12-07 12:58:24 +0000
  • 504380217e Now we've copied xSmurf's PROGMEM and other changes to his branch we'll back them out from here for now as they require SPrint from cral which we don't yet supply by default (this caused problems for people trying out the code in its current state.). follower 2007-12-07 12:40:54 +0000
  • 580cf788fe Copy xsmurf's PROGMEM and other changes into a branch so we don't lose them. follower 2007-12-07 12:30:38 +0000
  • 7004c8a934 Add branch for xsmurf's code. follower 2007-12-07 09:57:49 +0000
  • 9ae608bfa9 MODIF - Moved debug output to progmem functions FIXED - Unexpected connection closing issue: close() before disconnect() mlalondesvn 2007-11-09 04:42:54 +0000
  • 290ba148fd Add initial 'web server' flashing LED URL pattern demo. follower 2007-11-06 14:08:06 +0000
  • da32f20570 Clarify the install instructions a little as to which files go where. follower 2007-11-05 11:54:25 +0000
  • 2a5e2e31c6 Add comments to initialisation code. Remove debug prints. Remove some (probably) unnecessary comments. follower 2007-11-05 11:47:32 +0000
  • 215a3deaf2 Move module and driver initialisation code into separate function. follower 2007-11-05 11:35:56 +0000
  • 137136833f Fiddle some comment formatting. follower 2007-11-05 11:32:57 +0000
  • b2ec2cb92e Pull SPI configuration into separate function. follower 2007-11-05 11:30:40 +0000
  • 87a68cad36 Remove defines used by pre-driver-port SPI code. follower 2007-11-05 11:27:01 +0000
  • 24953c0e31 Remove some unnecessary debug code. follower 2007-11-05 11:24:50 +0000
  • ad0428f2a8 Remove comments associated with removed pre-driver-port code. follower 2007-11-05 11:18:19 +0000
  • b2c869d1f4 Remove initial pre-driver-port code that configured the module via SPI with a network configuration to enable a ping test. Includes code to communicate via SPI and to read address/register/memory locations. Remove associated code credit for spi_transfer from playground. All these functions are now implemented within the driver itself. TODO: Could we implement the driver SPI comms in a more efficient manner? follower 2007-11-05 11:16:40 +0000
  • cd1bdecdae Add initial very-rough demo of 'echo' server. follower 2007-11-05 11:12:24 +0000
  • 8245c6d8be DOS to Unix line-encoding conversion. follower 2007-11-05 10:01:02 +0000
  • f7c399c222 Move comment on changing the interface mode to the new README and remove the remainder of the original driver README. follower 2007-11-05 09:59:21 +0000
  • fe832a02bd Add instructions for building/installation. follower 2007-11-05 09:55:10 +0000
  • 2762498bee Remove instructions referring to using Makefile. follower 2007-11-05 09:47:38 +0000
  • ccfa563b98 It turns out Arduino compiles the files quite happily without the Makefile (with maybe 20 bytes difference). We're ditching the Makefile as I never got the Makefile to a state where it was fully working anyway as I ended up using: avr-gcc -mmcu=atmega168 -Wall -Os -fsigned-char -combine -c socket.c w5100.c -o wiz810mj.o && avr-strip --strip-debug --strip-unneeded -X -x *.o follower 2007-11-05 09:46:31 +0000
  • eccbe0ee95 Add basic license and readme files. follower 2007-11-05 04:50:05 +0000
  • 680c63d572 Remove unused file. follower 2007-11-05 04:49:17 +0000
  • 47a0ac06f0 Make functions visible to C++ code in Arduino. follower 2007-11-05 04:46:00 +0000
  • f6b6554d57 DOS to Unix line-encoding conversion. follower 2007-11-05 04:33:35 +0000
  • aabe93b198 DOS to Unix line-encoding conversion. follower 2007-11-05 04:31:37 +0000
  • 059bdfd7f8 Conditional exclusion of boolean type Arduino chokes on. follower 2007-11-05 04:28:40 +0000
  • e47f0a6bfb Add header file to enable inclusion in Arduino sketch. follower 2007-11-05 04:24:37 +0000
  • 2857e8988d Whoops, inclusion of delay.h should be dependent on PPPoE use. follower 2007-11-03 12:58:41 +0000
  • 2f963b350d The delay functions are only used for PPPoE so we're ditching the files. follower 2007-11-03 12:20:11 +0000
  • 4ac7c1b66e For Arduino we don't want to re-configure the SPI each time as we assume it's configured elsewhere. We also only want to touch the chip select pin unlike the original driver code. follower 2007-11-03 11:52:37 +0000