[ell-i-developers] Re: Node management, discovery and such issues

  • From: Pekka Nikander <pekka.nikander@xxxxxx>
  • To: ell-i-developers@xxxxxxxxxxxxx
  • Date: Thu, 27 Feb 2014 16:23:34 +0200

>> I'm planning now to start porting the old SPI code to the new runtime, then 
>> adding ENC28J60 Ethernet support.  If everything goes well, that should be 
>> up and running mid next week or so.
> Good. At that point we can start to call our platform network-enabled, even 
> though it is only so at l2.

Now it is "mid next week."  The code is not up and running, but a skeleton 
exists.  Sorry for being late from my self-estimated schedule, but I lost all 
productivity for last Thursday and Friday, as well has half of the weekend.

My current estimate is that the UDP/IP/CoAP will be on a usable condition on 
Tuesday or Wednesday.

>> Alternatively, we can write our own UDP/IP, and I believe that eventually we 
>> will.  The base ARP, IPv4, and UDP is quite easy, shouldn't take more than a 
>> few weeks.  IPv6 can be left for later.  What is harder is DHCP and any 
>> management protocols we may need.

IP, UDP, CoAP are now in a pretty good shape, written from scratch, even though 
work still remains.  Currently they take about 500 bytes of flash (+ buffers in 
RAM).  ARP and DHCP are non-existent.  My current estimate is that we can 
squeeze a working ARP+IP+UDP+DHCP+CoAP stack in about 1.5k-2k of flash.  RAM 
consumption depends mainly on how large packets we want so support, and whether 
we want to support two packets or just one packet at a time.

DHCP will take some time and is not my priority, so most probably we need to 
work with fixed IP addresses for a few weeks, unless someone volunteers.  Sure, 
I can provide a skeleton and help, but I see more urgent needs elsewhere.

> About DHCP, I have experience debugging it using several different networking 
> equipment and different debugging tools. While I’m not a C programmer, I can 
> definitely help in XP mode somebody that has the C skills necessary.

Anyone interested in coding DHCP with Teemu, on the top of a very skeletal 
skeleton?  It is not on the critical path, so it is also a good way to learn 
how to implement communication protocols in a constrained  space.

> Relating to other management protocols, I have little experience in any but 
> SNMP, which is definitely something we wish to avoid at all costs. I’ll have 
> to ask around for this but I’m quite sure some decent smallish protocol 
> exists for keeping track of things. Maybe COAP could be suited for this 
> purpose.

I think you should have a look how CoAP could also be used for network 
management purposes.  I believe it can, there may even be an I-D on that, I 
haven't checked.

> As a supporter for early and often releasing, I’m a bit wary on deciding to 
> write everything in house. This slows us down as we have a bottleneck in low 
> level C programming.

I wouldn't say us any more having a bottleneck.  Ivan is pretty efficient and 
Asif is hopefully getting gradually into speed.

We have a far bigger bottleneck currently at the PCB side.  The main obstacle 
is still getting the pin order frozen; see the discussion thread at the 
ell-i-pcb-design mailing list.


Other related posts: