Doorgaan naar hoofdcontent

The excellent JTAGenum for Arduino

As I said before, I've been fiddling with finding the JTAG port on a Verbatim PowerBay NAS.
I did not succeed (yet), but have had the chance to try out JTAGenum for Arduino.
It is an excellent JTAG pin finder (and other things too). Check it out here:
http://deadhacker.com/2010/02/03/jtag-enumeration/
The guy's description of the tool is:
1. Given a large set of pins on a device determine which are JTAG lines
2. Enumerate the Instruction Register to find undocumented functionality
3. be easy to build and apply

It's really easy to use, but it did not manage to find the JTAG pins on my device. There might be another problem, such as:
- JTAG is disabled once the device is powered up
- The pins I'm fiddling with are not JTAG pins
- I ruined the circuitry already
- I'm just not trying hard enough

Back to JTAGenum: Since Arduino IDE 1.0.1, some things have changed and so the GIT version of JTAGenum would not compile as-is. Therefor the JTAGenum sketch had to be slightly adapted. You can find my version >here<.

Furthermore, I did the 3,3v modification to my Arduino Uno, so that i'm at the same voltage levels as the NAS.I have followed this guide: http://www.ladyada.net/library/arduino/3v3_arduino.html
Only downside to this is that using the 3,3v regulator they suggested and a 1N4001 diode, you'll get a 0.7 v voltage drop from the USB's 5V -> this means about 4.3 volts left. The regulator apparently needs more than a volt to get a 3.3V output. So that I have to use an external 5V adapter now.
You could instead:
- Not use a classic 1N4001 diode, but a Schottky diode (only 0.3v voltage drop)
- Use a low dropout regulator that can correctly make 3.3 volts out of 4.3 volts
- Use a level-shifter instead of the 3.3V modification to the entire Arduino.

As you can see in the Arduino Sketch, I have not reduced the internal clock of the Arduino, it seems to work pretty well at room temperature @ 3.3 volts.

Reacties

  1. have you seen this:
    http://www.loetlabor.org/Hacking_Verbatim_Powerbay

    seems that guys already figured out jtag pins.

    Me to afraid to fiddle around with uboot since I don't know about jtag.
    ...so my approach: little ATTiny soldered to serial, listening and waiting for command prompt. After detection automatically mount USB with custom application and "sideloading" them. Also should be possible not to use USB but internal Flash since some of the Nand-partitions seem unused (or only for backup).

    BeantwoordenVerwijderen
    Reacties
    1. Hi Jantlem,

      I should have taken one of the safer approaches instead of going all the way with this board.. Well, too late now!

      I have seen that webpage indeed. It seems that they have a "guess" of what the JTAG pins could be. I tried all combinations they mention, and many other using JTAG enum. But with no success...
      I tried soldering some pull-up resistors on the lines, but that did not help either.
      I'm giving up... for now, that is!

      Verwijderen
  2. also btw Arduino 1+ has a menu option for changing the clock.

    BeantwoordenVerwijderen

Een reactie posten

Populaire posts van deze blog

[RPi4][ Using the PiMoroni Fan Shim on LibreElec including the LEDs!

I recently bought a brand new Raspberry Pi 4, and wanted to try Kodi on it. There is only one Kodi-distribution which has more or less decent support for RPi 4 at the moment, and that's LibreElec (although still Alpha). Since the RPi 4 is famously overheating and throttling without a fan or at least a heatsink, I got a PiMoroni Fan Shim. Nice piece of hardware, but their library cannot run on LibreElec, because they do not support installing python libraries through pip etc... On LibreElec, the whole rootfs is a read-only squashfs image. So there's no way you can install the Pimoroni python library on LibreElec, but I found an alternative: I found Phil Randal's blog at  http://www.philrandal.co.uk/blog/archives/2019/07/entry_214.html , where he described how to get at least the Fan portion of the Fan Shim working on LibreElec. I decided to build on that, and port the LED functionality to LibreElec as well, without the need for "pip install" or a

Arch Linux: Fixing empty/blank windows for graphical applications that require root

When running applications such as "unetbootin" or "tuxboot", you might get a blank window, instead of the actual application. Even when running it through "gksudo", or having a decent polkit running (e.g. inside Gnome). E.g.: This is because these application use MIT_SHM (Shared memory), which for some reason does not work when running graphical applications as root, while being logged in as a regular user in X. The solution is to disable MIT_SHM. E.g.: $ sudo QT_X11_NO_MITSHM=1 tuxboot