Excellent news! :)<br><br>Pete Forsyth <peteforsyth@gmail.com> wrote:<br><br><div dir="ltr"><div>Super awesome! Thanks :)<br><br></div>Pete<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Mar 26, 2014 at 7:06 PM, Mitar <span dir="ltr"><<a href="mailto:mitar@tnode.com" target="_blank">mitar@tnode.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi!<br>
<div class=""><br>
> Can somebody have another crack at that tl;dr summary? :P<br>
<br>
</div>We will be able to use 200 routers we got donated. Before that they were<br>
rebooting every 60 seconds. Now we know how to make them not reboot<br>
automatically.<br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
Mitar<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
><br>
> -Pete<br>
> [[User|Peteforsyth]]<br>
><br>
><br>
> On Wed, Mar 26, 2014 at 6:53 PM, <a href="mailto:mattsenate@gmail.com">mattsenate@gmail.com</a><br>
> <<a href="mailto:mattsenate@gmail.com">mattsenate@gmail.com</a>>wrote:<br>
><br>
>> Thanks to this hack, we should be able to use a noisebridge-donated lot of<br>
>> ~200 sparky routers for <a href="https://peoplesopen.net/" target="_blank">https://peoplesopen.net/</a><br>
>><br>
>> Cheers!<br>
>><br>
>> // Matt<br>
>><br>
>><br>
>> ----- Reply message -----<br>
>> From: "Adrian Chadd" <<a href="mailto:adrian.chadd@gmail.com">adrian.chadd@gmail.com</a>><br>
>> To: "<a href="mailto:mesh@lists.sudoroom.org">mesh@lists.sudoroom.org</a>" <<a href="mailto:mesh@lists.sudoroom.org">mesh@lists.sudoroom.org</a>><br>
>> Subject: [Mesh] So, about those Meraki Sparky boards<br>
>> Date: Wed, Mar 26, 2014 18:34<br>
>><br>
>><br>
>> A little drinking at Noisebridge and some poking from JC got me<br>
>> thinking about the Sparky boards. So I came up to Sudo and worked with<br>
>> Marc to figure it out.<br>
>><br>
>> The TL;DR version: It's an AR2317 and you have a watchdog timer, but<br>
>> it doesn't actually reset the unit. It just posts an interrupt. It<br>
>> turns out GPIO6 is the "pat to stop it resetting" line.<br>
>><br>
>> So, the details:<br>
>><br>
>> I first did "help" at the redboot prompt. I found "bdshow", which is<br>
>> the "Atheros board info."<br>
>><br>
>> RedBoot> bdshow<br>
>> name:     Meraki Outdoor 1.0<br>
>> magic:    35333131<br>
>> cksum:    2a1b<br>
>> rev:      10<br>
>> major:    1<br>
>> minor:    0<br>
>> pciid:    0013<br>
>> wlan0:    yes 00:18:0a:50:7b:ae<br>
>> wlan1:    no  00:00:00:00:00:00<br>
>> enet0:    yes 00:18:0a:50:7b:ae<br>
>> enet1:    no  00:00:00:00:00:00<br>
>> uart0:    yes<br>
>> sysled:   no, gpio 0<br>
>> factory:  no, gpio 0<br>
>> serclk:   internal<br>
>> cpufreq:  calculated 184000000 Hz<br>
>> sysfreq:  calculated 92000000 Hz<br>
>> memcap:   disabled<br>
>> watchdg:  disabled (WARNING: for debugging only!)<br>
>><br>
>> serialNo: Q2AJYS5XMYZ8<br>
>> Watchdog Gpio pin: 6<br>
>> secret number: e2f019a200ee517e30ded15cdbd27ba72f9e30c8<br>
>><br>
>> .. hm. Watchdog GPIO pin 6? What's that?<br>
>><br>
>> After manually checking out the watchdog registers via 'x', we<br>
>> discovered that it would count down to 0 and not reset.<br>
>><br>
>> So, hm. Maybe the GPIO 6 wire is actually the right thing to pat. And<br>
>> yes, the board doesn't reset when you pat GPIO 6.<br>
>><br>
>><br>
>><br>
>> Board: ap61<br>
>> RAM: 0x80000000-0x82000000, [0x8003ddd0-0x80fe1000] available<br>
>> FLASH: 0xa8000000 - 0xa87e0000, 128 blocks of 0x00010000 bytes each.<br>
>> == Executing boot script in 2.000 seconds - enter ^C to abort<br>
>> ^C<br>
>> RedBoot> # set direction of gpio6 to out<br>
>> RedBoot> mfill -b 0xb1000098 -l 4 -p 0x00000043<br>
>> RedBoot> x -b 0xb1000098<br>
>> B1000098: 00 00 00 43 00 00 00 00  00 00 00 00 00 00 00 03<br>
>>  |...C............|<br>
>> B10000A8: FF EF F7 B9 7D DF 5F FF  00 00 00 00 00 00 00 00<br>
>>  |....}._.........|<br>
>><br>
>> RedBoot> # pat gpio6 - set it high, then low.<br>
>> RedBoot> mfill -b 0xb1000090 -l 4 -p 0x00000042<br>
>> RedBoot> mfill -b 0xb1000090 -l 4 -p 0x00000002<br>
>><br>
>> .. then I manually did this every minute or so.<br>
>><br>
>> RedBoot><br>
>> RedBoot> mfill -b 0xb1000090 -l 4 -p 0x00000042<br>
>> RedBoot> mfill -b 0xb1000090 -l 4 -p 0x00000002<br>
>> RedBoot> mfill -b 0xb1000090 -l 4 -p 0x00000042<br>
>> RedBoot> mfill -b 0xb1000090 -l 4 -p 0x00000002<br>
>><br>
>> .. so, the solution here seems to be to "set gpio6 to be output", then<br>
>> "pat it every 60 seconds."<br>
>><br>
>><br>
>> -a<br>
>> _______________________________________________<br>
>> mesh mailing list<br>
>> <a href="mailto:mesh@lists.sudoroom.org">mesh@lists.sudoroom.org</a><br>
>> <a href="https://lists.sudoroom.org/listinfo/mesh" target="_blank">https://lists.sudoroom.org/listinfo/mesh</a><br>
>><br>
>> _______________________________________________<br>
>> sudo-discuss mailing list<br>
>> <a href="mailto:sudo-discuss@lists.sudoroom.org">sudo-discuss@lists.sudoroom.org</a><br>
>> <a href="https://lists.sudoroom.org/listinfo/sudo-discuss" target="_blank">https://lists.sudoroom.org/listinfo/sudo-discuss</a><br>
>><br>
>><br>
><br>
><br>
><br>
> _______________________________________________<br>
> mesh mailing list<br>
> <a href="mailto:mesh@lists.sudoroom.org">mesh@lists.sudoroom.org</a><br>
> <a href="https://lists.sudoroom.org/listinfo/mesh" target="_blank">https://lists.sudoroom.org/listinfo/mesh</a><br>
><br>
<br>
</div></div><div class="HOEnZb"><div class="h5">--<br>
<a href="http://mitar.tnode.com/" target="_blank">http://mitar.tnode.com/</a><br>
<a href="https://twitter.com/mitar_m" target="_blank">https://twitter.com/mitar_m</a><br>
</div></div></blockquote></div><br></div>