[ell-i-developers] Re: ENCX24J600 driver status

  • From: Asif Sardar <engr.asif.sardar@xxxxxxxxxxxxxx>
  • To: "ell-i-developers@xxxxxxxxxxxxx" <ell-i-developers@xxxxxxxxxxxxx>
  • Date: Mon, 10 Nov 2014 15:31:15 +0200

Hi all,

Untill so far:


   -

   I have read the ENCX24J600 data sheet
   -

   I have read the ENCX24J600 feature-runtime-wip code

   - The register map of ENCX24J600 for SPI interface is written correct

   - The SPI opcodes are correct

   - The transmit and receive buffer are configured and initialized correct

   - The receive filter is configured correct

   - The MACCON1 is configured correct

   - Checking the ECON1, ECON2, MACON2 is in progress


On Tue, Nov 4, 2014 at 5:23 PM, Jose Granados Vergara <jose.granados@xxxxxx>
wrote:

>  Here is an initialization procedure I found for reference:
>
>
> https://github.com/bootc/PolyController/blob/master/drivers/enc424j600.c#L73
>
>  -Jose
>   ------------------------------
> *De:* ell-i-developers-bounce@xxxxxxxxxxxxx [
> ell-i-developers-bounce@xxxxxxxxxxxxx] en nombre de Pekka Nikander [
> pekka.nikander@xxxxxx]
> *Enviado:* martes, 04 de noviembre de 2014 05:11 p.m.
> *Para:* ell-i-developers@xxxxxxxxxxxxx
> *Asunto:* [ell-i-developers] Re: ENCX24J600 driver status
>
>  Hi Asif,
>
>  Yes, you are on the right track.  E_STAT low byte reading is indeed
> returning a zero; I've verified that with SPI protocol analyser.  I suspect
> there is some initialisation problem.  The next step would be to carefully
> read through what we initialise in the registers, and in availablepackets
> probably read more registers to see what is going on.  ALso in receive to
> analyse the status bits.
>
>  --Pekka
>
>  On 2014–11–04, at 16:48 , Asif Sardar <engr.asif.sardar@xxxxxxxxxxxxxx>
> wrote:
>
>  Hi all,
>
>  I have been reading the code for SPI and ENCX24J600 in the
> feature-runtime-wip.
>
>  To my understanding the ENCX24J600Class::availablePackets() in
> encx24j600_packet.h is not returning correct packet count value in E_STAT
> address read through SPI. That may be the only reason why its not reading
> furthermore packets. Is it possible to test the value returned from lower
> 8-bits of E_STAT by writing it through serial port? There might be
> configuration problems while initializing the registers for encx24j600.
>
>
>
> On Thu, Oct 30, 2014 at 12:21 PM, Pekka Nikander <pekka.nikander@xxxxxx>
> wrote:
>
>> We did some further joint work on the ENCX24J600 driver with Teemu and
>> Otso:
>>
>> https://github.com/Ell-i/Runtime/commits/feature-encX24J600-wip
>>
>> The current status is as follows:
>>
>> 1. The test_ENCX24J600_send test case sends out packets correctly
>>
>> 2. The test_ENCX24J600_receive receives one packet, apparently correctly.
>>
>> 3. The test_CoAP_no_threads receives one packet, and apparently passes it
>> correctly to ARP, but ARP does not seem  to respond for some reason.
>>
>> The current blocking problem is that once the code has received one
>> packet, ENCX24J600.availablePackets no longer reports any more packets.  In
>> an earlier version, before fixing the location where we were reading the
>> packets from, the code did apparently read a packet each and every time
>> there was a packet:
>>
>>
>> https://github.com/Ell-i/Runtime/commit/3e58adbfdf2aeecb5e5b9b99c25c8000b8ad3813
>>
>> So, somehow the later changes, while fixing the bug of reading wrong
>> data, caused a new bug where any packets beyond the first one are not read
>> any more.
>>
>> --Pekka
>>
>>
>
>
>  --
>
>
>
> *With Best Regards, Asif Sardar. +358 43 8265795 <%2B358%2043%208265795> *
>
>
>


-- 



*With Best Regards,Asif Sardar.+358 43 8265795*

Other related posts: