Nanode / BT Homehub3 / Pachbe wont work but Virgin router does?

299 views
Skip to first unread message

Mike

unread,
Mar 20, 2012, 9:52:34 AM3/20/12
to nanode-users
Hi guys. I wonder if anyone can help me?
I have built 2 Nanode RFs, one for me and one for my friend.
I have no problem whatsoever connecting either of them to my Pachbe
account
or to my friends Pachbe account via my Virgin router.

If however we try and connect either unit to either Pachbe account via
my friends BT Homehub3 the Pachbe accounts stay frozen.

My friend and I are complete novices when it comes to setting up
routers but we believe that we have exhausted the possibilities in the
settings.
Port forwarding is set up to the device name in the Homehub3 rather
than the IP it is assigned.
We have forwarded Port 5000 to Port 80 on the Nanode.

The sketch that we have used to connect successfully to Pachube via my
Virgin router is
basically the one here:-

http://blog.wickeddevice.com/?p=260

with the Pachube key and feed number being changed to suit.
We are using DHCP rather than fixed IP.

We did also experiment with using the nanodes to serve a webpage
rather than stream data
by using the example :-
https://github.com/Nanode/Webserver-Live-Thermistor-Reading
This worked OK on the BT Homehub when viewed externally on a phone
etc. although it couldn't be viewed from within the Homehub but this
is a known issue with the BT router apparently?


I did have a brief conversation with another colleague who is much
more knowledgeable
in these matters who also has a Nanode/BTHomehub/Pachbe combo which
does not work.
Interestingly his Arduino/EtherShield/BTHomehub/Pachbe combo does!

I would be very grateful for any suggestions of what we could try in
order to resolve this issue.

thanks

Mike

SomeRandomBloke

unread,
Mar 22, 2012, 2:45:49 PM3/22/12
to nanode...@googlegroups.com
I've been using nanode with ethershield/ethercard libraries and a bt homehub2 for a while now with no problems, until I ditched the shitty homehub and went for something better. Not got a homehub3 yet, but soon!

You seem to be confusing issues here, one you are trying to send updates to pachube, the other is port forwarding of incoming requests. Port forwarding isnt needed to send updates out to Pachube. So perhaps turn that bit off and try again. Also, if you are using DHCP on the nanodes, try the dhcp test sketches in the etherCard library. That should show that the dhcp is working for you.

SRB

SomeRandomBloke

unread,
Apr 15, 2012, 1:00:35 PM4/15/12
to nanode...@googlegroups.com
Hi,

I've been having a look at the EtherCard library today after experiencing issues with DNS and DHCP now that I have a BT HomeHub3. I've also got it working successfully with Pachube. The DNS issue is a funny one and not sure of a solution other than a quick hack. Basically there is a bit in the response that should be set, however the BTHH3 seems to set this sometimes and not other times. I'm thinking this is to do with the response being cached in the router or not. However if this bit is not set then the library will not recognise the response.

A work around is to temporarily remove the check for this bit in the function checkForDnsAnswer in dns.cpp. The current check is:

  if (plen < 70 || gPB[UDP_SRC_PORT_L_P] != 53 ||  // OK
                   gPB[UDP_DST_PORT_H_P] != DNSCLIENT_SRC_PORT_H ||  // OK
                   gPB[UDP_DST_PORT_L_P] != dnstid_l ||
                   p[1] != dnstid_l   ||
                   (p[3] & 0x8F) != 0x80 ) {

I changed mine to:

  if (plen < 70 || gPB[UDP_SRC_PORT_L_P] != 53 ||  // OK
                   gPB[UDP_DST_PORT_H_P] != DNSCLIENT_SRC_PORT_H ||  // OK
                   gPB[UDP_DST_PORT_L_P] != dnstid_l ||
                   p[1] != dnstid_l  ) {

This gets round the problem temporarily for my setup.

Hope this helps.

SRB


 

On Tuesday, 20 March 2012 13:52:34 UTC, Mike wrote:

Jon Bartlett

unread,
Apr 15, 2012, 1:27:57 PM4/15/12
to nanode...@googlegroups.com

This is a bit off-topic, but at the moment, I'm trying to figure out why I can't get the Simple Pachube Sketch - with one-wire temp sensor code to be stable.

My code is a combination of Pachube Simple (Arduino v1.0) and one-wire temp sensing, and uses the Ethercard, one-wire, and DallasTemp libraries (all latest versions I rekon).

The code (main loop is below) - but fairly straight forward - and the error is that the payload gets corrupted after a period of time - generally between a few hours and a few days (it varies).

 

Heres the serial output (and you'll see where it gets corrupted) :

Requesting temperatures...

Timer:6460447  Millis:6460547

REQUEST: 187

PUT http://api.pachube.com/v2/feeds/48208.csv HTTP/1.0

Host: api.pachube.com

X-PachubeApiKey: yjR4WMzFzWGWu4bf_tFifyuJh43hjk£J4ltcDlpaz0g

Content-Length: 19

 

temperature,19.87

 

REPLY:

HTTP/1.1 200 OK

Date: Sun, 15 Apr 2012 13:10:25 GMT

Content-Type: text/plain; charset=utf-8

Connection: close

X-Pachube-Logging-Key: logging.0Vg8PrlBARnpBmL2oXVl

X-PachubeRequestId: 1d80f9d2d5bc88a2e2e74aef17347fce689febda

Cache-Control: max-age=0

Content-Length: 1

Age: 0

Vary: Accept-Encoding

 

Requesting temperatures...

Timer:6470562  Millis:6470662

REQUEST: 187

PUT http://api.pachube.com/v2/feeds/48208.csv HTTP/1.0

Host: api.pachube.com

X-PachubeApiKey: yjR4WMzFzWGWu4bf_tFifyuJh43hjk£J4ltcDlpaz0g

Content-Length: 19

 

temperature,19.94

 

REPLY:

HTTP/1.1 200 OK

Date: Sun, 15 Apr 2012 13:10:35 GMT

Content-Type: text/plain; charset=utf-8

Connection: close

X-Pachube-Logging-Key: logging.0Vg8PrlBARnpBmL2oXVl

X-PachubeRequestId: e7c101a11a588c85ce3ca089e4919db67578218c

Cache-Control: max-age=0

Content-Length: 1

Age: 0

Vary: Accept-Encoding

 

Requesting temperatures...

Timer:6480677  Millis:6480777

Requesting temperatures...

Timer:6490792  Millis:6490892

REQUEST: 187

PUT http://api.pachube.com/v2/feeds/48208.csv HTTP/1.0

Host: api.pachube.com

X-PachubeApiKey: yjR4WMzFzWGWu4bf_tFifyuJh43hjk£J4ltcDlpaz0g

Content-Length: 19

 

-PachubeRequestId:

REPLY:

HTTP/1.1 400 Bad Request

Date: Sun, 15 Apr 2012 13:10:55 GMT

Content-Type: text/plain; charset=utf-8

Connection: close

X-Pachube-Logging-Key: logging.0Vg8PrlBARnpBmL2oXVl

X-PachubeRequestId: 744459b23eb14f39511ad62ce5453d521915eea7

Cache-Control: no-cache

Content-Length: 61

Age: 0

 

CSV Parser Error: CSV is invalid. Incorrect number of fields.

Requesting temperatures...

Timer:6500907  Millis:6501006

REQUEST: 187

PUT http://api.pachube.com/v2/feeds/48208.csv HTTP/1.0

Host: api.pachube.com

X-PachubeApiKey: yjR4WMzFzWGWu4bf_tFifyuJh43hjk£J4ltcDlpaz0g

Content-Length: 19

 

L2oXVl

X-PachubeRe

REPLY:

HTTP/1.1 400 Bad Request

Date: Sun, 15 Apr 2012 13:11:05 GMT

Content-Type: text/plain; charset=utf-8

Connection: close

X-Pachube-Logging-Key: logging.0Vg8PrlBARnpBmL2oXVl

X-PachubeRequestId: 5ffc2d4f8915ae91d5537449e2a8ca9e3502f969

Cache-Control: no-cache

Content-Length: 61

Age: 0

 

CSV Parser Error: CSV is invalid. Incorrect number of fields.

Requesting temperatures...

Timer:6511021  Millis:6511120

Requesting temperatures...

Timer:6521135  Millis:6521234

REQUEST: 187

PUT http://api.pachube.com/v2/feeds/48208.csv HTTP/1.0

Host: api.pachube.com

X-PachubeApiKey: yjR4WMzFzWGWu4bf_tFifyuJh43hjk£J4ltcDlpaz0g

Content-Length: 19

 

L2oXVl

X-PachubeRe

REPLY:

HTTP/1.1 400 Bad Request

Date: Sun, 15 Apr 2012 13:11:26 GMT

Content-Type: text/plain; charset=utf-8

Connection: close

X-Pachube-Logging-Key: logging.0Vg8PrlBARnpBmL2oXVl

X-PachubeRequestId: a493b9c148de1c807bf24b421367f18da8db2193

Cache-Control: no-cache

Content-Length: 61

Age: 0

 

CSV Parser Error: CSV is invalid. Incorrect number of fields.

Requesting temperatures...

Timer:6531249  Millis:6531348

 

And heres the main loop code :

void loop () {

   

  ether.packetLoop(ether.packetReceive());

 

  if (millis() > timer) {

    //Read temperature first

    //Read temp now, so we get a delay for the query

    Serial.println("Requesting temperatures...");

    sensors.requestTemperatures(); // Send the command to get temperatures

    Serial.print("Timer:");

    Serial.print(timer);

    Serial.print("  Millis:");

    Serial.println( millis());

    delay(700);

 

   

    // Payload is ID, data pairs....

    // we can determine the size of the generated message ahead of time

    byte sd = stash.create();

    stash.print("temperature,");

    stash.println(sensors.getTempC(insideThermometer));

    //stash.print("1,");

    //stash.println((word) micros() / 456);

    stash.save();

   

    // generate the header with payload - note that the stash size is used,

    // and that a "stash descriptor" is passed in as argument using "$H"

    Stash::prepare(PSTR("PUT http://$F/v2/feeds/$F.csv HTTP/1.0" "\r\n"

                        "Host: $F" "\r\n"

                        "X-PachubeApiKey: $F" "\r\n"

                        "Content-Length: $D" "\r\n"

                        "\r\n"

                        "$H"),

            website, PSTR(FEED), website, PSTR(APIKEY), stash.size(), sd);

 

    // send the packet - this also releases all stash buffers once done

    ether.tcpSend();

    timer= millis() + 9300;

  }

}

 

Theres clearly something interrupting the main loop occasionally (see where the output shows multiple 'requesting temps' - and I suspect corruption is happening during the stash creation - but why that corrupts all future execution of the loop from then on, I dont know.

Am i running out of Stack ?

Interrupts not being handled ?

Any other ideas ?

 

Jon.

SomeRandomBloke

unread,
Apr 15, 2012, 2:07:27 PM4/15/12
to nanode...@googlegroups.com
Looks fairly straightforward, I've also updated my sketch to use this method of creating the request, seems quite simple really.

One thing with the latest library is that there is a new function called tcpReply that enables you to get the reply. This then enables you to see the response coming back, however I have found there are still issues with it detecting the response packet and flagging it so the function returns something. I am looking into this.

Sofar I've not had my sketch running for more than a few hours but it does seem stable enough. One thing, if you are using Arduino IDE 1.0, change your Serial.print("some text"); to Serial.print(F("Some text")); as this will then move your static strings into flash, freeing up valuable program memory.

SRB




On Tuesday, 20 March 2012 13:52:34 UTC, Mike wrote:

SomeRandomBloke

unread,
Apr 16, 2012, 4:21:04 PM4/16/12
to nanode...@googlegroups.com
Looks like my tests with latest EtherCard and Pachube example using stash code is failing after an hour so looks like there is some problem. Time to debug....

SRB

On Tuesday, 20 March 2012 13:52:34 UTC, Mike wrote:

jpdw

unread,
Apr 17, 2012, 12:49:35 PM4/17/12
to nanode-users
Sounds like what I was getting @ the weekend. Though I thinnk I was
going longer before getting issues.
The side affect I was getting was that packets are getting sent
without "stashed" elements; I've not really got to the bottom of it.
Check Stash::freecount and see if that is dropping to zero (or close
to) when you get problems.

jon

Jon Bartlett

unread,
Apr 17, 2012, 2:51:54 PM4/17/12
to nanode...@googlegroups.com

maybe this is my problem too with the latest Ethercard and one-wire pachube stuff.

 

It appears that the main loop is being called at random/strange times - including twice after the initial restart - but only sometimes...

Im wondering if the main loop is being interrupted mid/ and at the start of execution intermitently...

 

Glad to post my code to Github if it'll help..

J.

 

From: nanode...@googlegroups.com [mailto:nanode...@googlegroups.com] On Behalf Of SomeRandomBloke
Sent: 16 April 2012 21:21
To: nanode...@googlegroups.com
Subject: Re: Nanode / BT Homehub3 / Pachbe wont work but Virgin router does?

 

Looks like my tests with latest EtherCard and Pachube example using stash code is failing after an hour so looks like there is some problem. Time to debug....

SomeRandomBloke

unread,
Apr 17, 2012, 5:26:39 PM4/17/12
to nanode...@googlegroups.com
Its looking like a stash issue. The way the send works is to create the data in the stash then send it, but as its a tcp/ip connection there are a number of packets that go back and forwards between nanode, router and pachube before the stash is emptied into the packet buffer.
What I am seeing is the callback function is not being called and hence the stash is not being emptied. Eventually all the stash blocks are used up and it starts sending garbage which can be seen via the Pachube api debug page as 400 errors with a message about invalid csv. So now to track down whats happening in the packetLoop function.

SRB


 

On Tuesday, 20 March 2012 13:52:34 UTC, Mike wrote:

lloyda

unread,
Apr 18, 2012, 7:30:18 AM4/18/12
to nanode...@googlegroups.com

I've been looking at tcp issues with nanode base and emoncms. They may not be the same as being discussed here, but worth being aware of.  In summary, I've seen one issue, and one possible issue.

The definate issue is the inability of the library to handle an out of sequence packet. 

The possible issue involves the reuse of source port numbers (only 32 are used), and
connections not being properly dropped by my router.

These threads are worth looking at:
 
 
 
Lloyd

Jon Bartlett

unread,
Apr 19, 2012, 1:37:08 PM4/19/12
to nanode...@googlegroups.com

All,

 

As per the other thread around Virgin routers, the stash running out of space is whats corrupting my (simple Pachube with one-wire temp) sketch too.

I added this code to the end of the main loop

 

    Serial.print("Stash:freeCount :");

    Serial.println(Stash::freeCount());

 

You can see the stash free gets lower and lower (although its not linear - and does occasionally go up - the trend is down to zero), at which point you can see the packet text is corrupted...

 

I've just spotted the HTTP response isn't being received - I need to look into that too...

 

Jon.

 

Heres the Serial out from the code at the beginning...

Requesting temperatures...

Timer:0  Millis:7370

Stash:freeCount :54

REQUEST: 187

PUT http://api.pachube.com/v2/feeds/48208.csv HTTP/1.0

Host: api.pachube.com

X-PachubeApiKey: yjR4WMzFzWGWu4bf_tFifyuJh43hjk£J4ltcDlpaz0g

Content-Length: 19

 

temperature,20.50

 

Requesting temperatures...

Timer:17386  Millis:17485

Stash:freeCount :54

REQUEST: 187

PUT http://api.pachube.com/v2/feeds/48208.csv HTTP/1.0

Host: api.pachube.com

X-PachubeApiKey: yjR4WMzFzWGWu4bf_tFifyuJh43hjk£J4ltcDlpaz0g

Content-Length: 19

 

temperature,20.44

 

Requesting temperatures...

Timer:27500  Millis:27599

And when the stash is showing zero...

 

Requesting temperatures...

Timer:9110473  Millis:9110573

Stash:freeCount :9

REQUEST: 187

PUT http://api.pachube.com/v2/feeds/48208.csv HTTP/1.0

Host: api.pachube.com

X-PachubeApiKey: yjR4WMzFzWGWu4bf_tFifyuJh43hjk£J4ltcDlpaz0g

Content-Length: 19

 

temperature,20.31

 

Requesting temperatures...

Timer:9120588  Millis:9120688

Stash:freeCount :9

REQUEST: 187

PUT http://api.pachube.com/v2/feeds/48208.csv HTTP/1.0

Host: api.pachube.com

X-PachubeApiKey: yjR4WMzFzWGWu4bf_tFifyuJh43hjk£J4ltcDlpaz0g

Content-Length: 19

 

temperature,20.31

 

Requesting temperatures...

Timer:36054643  Millis:36054743

Stash:freeCount :0

Requesting temperatures...

Timer:36064757  Millis:36064857

Stash:freeCount :0

REQUEST: 187

PUT http://api.pachube.com/v2/feeds/48208.csv HTTP/1.0

Host: api.pachube.com

X-PachubeApiKey: yjR4WMzFzWGWu4bf_tFifyuJh43hjk£J4ltcDlpaz0g

Content-Length: 19

 

L2oXVl

X-PachubeRe

Requesting temperatures...

Timer:36074871  Millis:36074971

Stash:freeCount :0

REQUEST: 187

PUT http://api.pachube.com/v2/feeds/48208.csv HTTP/1.0

Host: api.pachube.com

X-PachubeApiKey: yjR4WMzFzWGWu4bf_tFifyuJh43hjk£J4ltcDlpaz0g

Content-Length: 19

 

L2oXVl

X-PachubeRe

Jon Bartlett

unread,
Apr 19, 2012, 4:20:10 PM4/19/12
to nanode...@googlegroups.com

The lack of http response seems to be something thats changed in the Ethercard library (last few days?)....going back to a a previous version...

 

Jon

jpdw

unread,
Apr 20, 2012, 5:10:48 PM4/20/12
to nanode...@googlegroups.com
Sounds exactly what I have been seeing on my nanode app (I'm not doing pachube logging but similarly doing http posts to a server, and using the stash).

Sort-of to prove the theory and till I could get the time to properly investigate, I've added a work-around to my scheduler:

void cb_1mwd(){
// check stash free & reset if needed
if(Stash::freeCount()<5){
Stash::initMap(56);
}
}

Pretty much a blunt object of trying to re-init the stash (rather than a complete reset of the nanode) when then count gets "low".  I picked 5 based on observing how low the freeCount would get before the app went boom.  Like you posted, the drop isn't linear - in my case sometimes not dropping at all for a given web call (every 5 secs), sometimes seeming to drop 3-4 each time.  Anyway, since putting in the above (which is being called once a minute), I've had much better performance.

Final comment - during some other ethercard debug attempts I managed to foo my ethercard source so last night did an update from github, which also seems to be better than the previous sync I did (around 2nd January).  Depending on how long ago you syncd there may be other issued fixed & tweaks treaked in the ethercard library  - though I think the stash drop is still there (though as I'm currently seeing how long mine will run -- 26hrs so far -- which is best I've had ! ) I dare not open the serial port to check freecount that'll reset it!!

Soon as I get some time I'll see if I can figure out what's going on but the stash stuff mystified me when I looked a while back... I think SRB was looking at the same area... If we're lucky he's already found the issue :-)  

(another) Jon

SomeRandomBloke

unread,
Apr 22, 2012, 4:05:20 AM4/22/12
to nanode...@googlegroups.com
Am aware of the issues and limitations. biggest one lately is the stash not being cleared because the response packet is not being detected under some circumstances. Extensive debugging added to library including new packet analysis functions and these are helping to identify issues.

SRB


On Tuesday, 20 March 2012 13:52:34 UTC, Mike wrote:

Jon Bartlett

unread,
Apr 22, 2012, 5:23:42 AM4/22/12
to nanode...@googlegroups.com

thanks Some.

Let us know if/how we can help.

 

on a slightly different topic - how come the receive packets/data aren't being sent to the Serial output in the latest library release ?  How can I check for server response for my HTTP calls ?

 

Jon

 

From: nanode...@googlegroups.com [mailto:nanode...@googlegroups.com] On Behalf Of SomeRandomBloke
Sent: 22 April 2012 09:05
To: nanode...@googlegroups.com
Subject: Re: Nanode / BT Homehub3 / Pachbe wont work but Virgin router does?

 

Am aware of the issues and limitations. biggest one lately is the stash not being cleared because the response packet is not being detected under some circumstances. Extensive debugging added to library including new packet analysis functions and these are helping to identify issues.

SomeRandomBloke

unread,
Apr 22, 2012, 5:36:44 PM4/22/12
to nanode...@googlegroups.com
the packets received dont go to the serial port. The contents get picked up by either the library for low level stuff such as ARP, DNS and DHCP, the rest get passed back up to the sketch to handle.

To check for replies, use tcpReply() function, although this doesnt always get called due to issues previously discussed.

SRB

Jon Bartlett

unread,
Apr 23, 2012, 1:14:17 PM4/23/12
to nanode...@googlegroups.com

Thanks - I guess that's what I meant really...

The Ethercard library as of circa March this year was sending all packets received to the serial port.  Specifically this statement in the Pachube example :

     ether.packetLoop(ether.packetReceive());

 

This  was really handy for debugging. 

...With the newest library it doesn't do this.

 

I'll look into the tcpReply function as you say..

 

J.

 

From: nanode...@googlegroups.com [mailto:nanode...@googlegroups.com] On Behalf Of SomeRandomBloke
Sent: 22 April 2012 22:37
To: nanode...@googlegroups.com
Subject: Re: Nanode / BT Homehub3 / Pachbe wont work but Virgin router does?

 

the packets received dont go to the serial port. The contents get picked up by either the library for low level stuff such as ARP, DNS and DHCP, the rest get passed back up to the sketch to handle.

 

To check for replies, use tcpReply() function, although this doesnt always get called due to issues previously discussed.

 

SRB



On Sunday, 22 April 2012 10:23:42 UTC+1, Jon Bartlett wrote:

thanks Some.

Let us know if/how we can help.

 

on a slightly different topic - how come the receive packets/data aren't being sent to the Serial output in the latest library release ?  How can I check for server response for my HTTP calls ?

 

Jon

 

SomeRandomBloke

unread,
Apr 23, 2012, 3:20:14 PM4/23/12
to nanode...@googlegroups.com
Nope, no serial port in there....

jpdw

unread,
Apr 23, 2012, 7:22:05 PM4/23/12
to nanode-users
Hm.. I've definitely got some serial debug in the ethercard library
I'm running -- sounds like what Jon B is missing. I wonder if we're
all running slightly different revisions/versions (the joy of git
perhaps?). After goosing my ethercard source very badly last week I
just pulled a fresh copy from jcw's github. Then I found it was
copying everything to serial -- I think this was 3 lines in tcp.c/
tcp_datafill_cb . They were not in the previous sync I'd done which I
*thought* was also from jcw .. making me wonder if I'd download from
somewhere else.

SRB -- anything that I could usefully test around? With my re-init-
the-stash routine I now seem to have my nanode running pretty solidly
(telling me it's done 46k HTTP POSTs to my server since last reboot --
about 2.5 days). Oddly, the stashfree stat showing every reducing
stash slots has stabilised a lot -- taking nearly 24hrs to need a
reset -- compared with maybe 1-2 hrs a week ago. (can't figure out
why it's behaving so much better!)

Anyway, my point is that if there's any additional testing that might
useful please let us know.


On Apr 23, 8:20 pm, SomeRandomBloke <adlind...@gmail.com> wrote:
> Nope, no serial port in there....
>
>
>
>
>
>
>
> On Monday, 23 April 2012 18:14:17 UTC+1, Jon Bartlett wrote:
>
> > Thanks - I guess that's what I meant really...
>
> > The Ethercard library as of circa March this year was sending all packets
> > received to the serial port.  Specifically this statement in the Pachube
> > example :
>
> >      ether.packetLoop(ether.packetReceive());
>
> > This  was really handy for debugging.
>
> > ...With the newest library it doesn't do this.
>
> > I'll look into the tcpReply function as you say..
>
> > J.
>
> > *From:* nanode...@googlegroups.com [mailto:
> > nanode...@googlegroups.com] *On Behalf Of *SomeRandomBloke
> > *Sent:* 22 April 2012 22:37
> > *To:* nanode...@googlegroups.com
> > *Subject:* Re: Nanode / BT Homehub3 / Pachbe wont work but Virgin router
> > does?
>
> > the packets received dont go to the serial port. The contents get picked
> > up by either the library for low level stuff such as ARP, DNS and DHCP, the
> > rest get passed back up to the sketch to handle.
>
> > To check for replies, use tcpReply() function, although this doesnt always
> > get called due to issues previously discussed.
>
> > SRB
>
> > On Sunday, 22 April 2012 10:23:42 UTC+1, Jon Bartlett wrote:
>
> > thanks Some.
>
> > Let us know if/how we can help.
>
> > on a slightly different topic - how come the receive packets/data aren't
> > being sent to the Serial output in the latest library release ?  How can I
> > check for server response for my HTTP calls ?
>
> > Jon
>
> > *From:* nanode...@googlegroups.com [mailto:
> > nanode...@googlegroups.com] *On Behalf Of *SomeRandomBloke
> > *Sent:* 22 April 2012 09:05
> > *To:* nanode...@googlegroups.com
> > *Subject:* Re: Nanode / BT Homehub3 / Pachbe wont work but Virgin router
Reply all
Reply to author
Forward
0 new messages