Werner Almesberger
2017-04-10 15:53:44 UTC
The regular programming fixture looks like this when all the signals
shown in
http://downloads.qi-hardware.com/people/werner/anelok/tmp/mk3-quick/quick.pdf
are connected:
Loading Image...
The two unpopulated holes are for supplying battery and USB power,
which are intended for production testing (or for the power-only
fixture) but are not used with the Ben as programmer.
In this configuration, 3V3 is provided by the memory card interface
of the Ben. This interface has a little flaw: there is a FET to
switch power to the memory card and there is a 10 uF buffer
capacitor. [1] Unfortunately, this capacitor is on the "outside", so
when supplying power to the memory card, the Ben has to charge the
capacitor, plus any capacitance on the card.
This causes a drop of the internal 3.3 V rail of the Ben, which has
only a bit more than 10 uF of buffer capacitors of its own. When
using this to supply the 3V3 rail of Anelok, which has a total of at
least 30.4 uF [2], the resulting massive voltage drop immediately
hangs the Ben.
This could probably be solved by not powering the internal 3.3 V rail
of Anelok directly, but feeding power to one of the regulators,
either USB (1.1 uF input capacitance) or battery (10 uF), instead.
However, in the case of USB, the resulting 3V3 rail would then be at
only about 3.0 V, which is okay for the MCUs, but borderline for the
OLED panel. And in the case of battery power, this would require the
whole circuit to be present and operational, which is something we
can't take for granted during development and testing.
Fortunately, there is another option: instead of taking power from
the Ben, we can use a lab power supply instead. This requires a
variant of the regular programming fixture, using the same plastic
parts, but wired like this:
Loading Image...
For good measure I added a 22 uF capacitor on the power connector.
And this is what it all looks like in operation, complete with clamp
so that I don't have to push the PCB into the fixture and have my
hands free for typing:
Loading Image...
With all this in place, I was finally able to reach the third MCU, of
the BTLE radio:
***@BenNanoNote:~# ./nrf
Cortex M0
AP #1 ID 0x00000000 (???)
AP #0 ID 0x04770021 (AHB-AP)
HWID 0x0084 (QFAC)
Flash 1024 bytes * 256 pages = 262144 bytes
RAM 8192 bytes * 4 blocks = 32768 bytes
UID 5b85d400-5bba8e43
MAC 36:e4:e5:9d:97:f1 (random)
This is the last major component I had to verify. There are still a
few things missing, but the remaining bits are either known to work
(e.g., the OLED), or can be bypassed if they don't (e.g., the load
switch for display and card, which is hard to solder under the best
of circumstances, and I made it even harder by placing it too close
to the card header.)
- Werner
[1] Page 5 of http://en.qi-hardware.com/w/images/9/9c/Lb60_schematic.pdf
[2] http://downloads.qi-hardware.com/people/werner/anelok/tmp/power-tree-20170405.pdf
_______________________________________________
Qi Hardware Discussion List
Mail to list (members only): ***@lists.en.qi-hardware.com
Subscribe or Unsubscribe: http://lists.en.qi-hardware.com/m
shown in
http://downloads.qi-hardware.com/people/werner/anelok/tmp/mk3-quick/quick.pdf
are connected:
Loading Image...
The two unpopulated holes are for supplying battery and USB power,
which are intended for production testing (or for the power-only
fixture) but are not used with the Ben as programmer.
In this configuration, 3V3 is provided by the memory card interface
of the Ben. This interface has a little flaw: there is a FET to
switch power to the memory card and there is a 10 uF buffer
capacitor. [1] Unfortunately, this capacitor is on the "outside", so
when supplying power to the memory card, the Ben has to charge the
capacitor, plus any capacitance on the card.
This causes a drop of the internal 3.3 V rail of the Ben, which has
only a bit more than 10 uF of buffer capacitors of its own. When
using this to supply the 3V3 rail of Anelok, which has a total of at
least 30.4 uF [2], the resulting massive voltage drop immediately
hangs the Ben.
This could probably be solved by not powering the internal 3.3 V rail
of Anelok directly, but feeding power to one of the regulators,
either USB (1.1 uF input capacitance) or battery (10 uF), instead.
However, in the case of USB, the resulting 3V3 rail would then be at
only about 3.0 V, which is okay for the MCUs, but borderline for the
OLED panel. And in the case of battery power, this would require the
whole circuit to be present and operational, which is something we
can't take for granted during development and testing.
Fortunately, there is another option: instead of taking power from
the Ben, we can use a lab power supply instead. This requires a
variant of the regular programming fixture, using the same plastic
parts, but wired like this:
Loading Image...
For good measure I added a 22 uF capacitor on the power connector.
And this is what it all looks like in operation, complete with clamp
so that I don't have to push the PCB into the fixture and have my
hands free for typing:
Loading Image...
With all this in place, I was finally able to reach the third MCU, of
the BTLE radio:
***@BenNanoNote:~# ./nrf
Cortex M0
AP #1 ID 0x00000000 (???)
AP #0 ID 0x04770021 (AHB-AP)
HWID 0x0084 (QFAC)
Flash 1024 bytes * 256 pages = 262144 bytes
RAM 8192 bytes * 4 blocks = 32768 bytes
UID 5b85d400-5bba8e43
MAC 36:e4:e5:9d:97:f1 (random)
This is the last major component I had to verify. There are still a
few things missing, but the remaining bits are either known to work
(e.g., the OLED), or can be bypassed if they don't (e.g., the load
switch for display and card, which is hard to solder under the best
of circumstances, and I made it even harder by placing it too close
to the card header.)
- Werner
[1] Page 5 of http://en.qi-hardware.com/w/images/9/9c/Lb60_schematic.pdf
[2] http://downloads.qi-hardware.com/people/werner/anelok/tmp/power-tree-20170405.pdf
_______________________________________________
Qi Hardware Discussion List
Mail to list (members only): ***@lists.en.qi-hardware.com
Subscribe or Unsubscribe: http://lists.en.qi-hardware.com/m