MediaWiki API result

This is the HTML representation of the JSON format. HTML is good for debugging, but is unsuitable for application use.

Specify the format parameter to change the output format. To see the non-HTML representation of the JSON format, set format=json.

See the complete documentation, or the API help for more information.

{
    "batchcomplete": "",
    "warnings": {
        "main": {
            "*": "Subscribe to the mediawiki-api-announce mailing list at <https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce> for notice of API deprecations and breaking changes."
        },
        "revisions": {
            "*": "Because \"rvslots\" was not specified, a legacy format has been used for the output. This format is deprecated, and in the future the new format will always be used."
        }
    },
    "query": {
        "pages": {
            "118": {
                "pageid": 118,
                "ns": 0,
                "title": "Spin echo generator board (in progress)",
                "revisions": [
                    {
                        "contentformat": "text/x-wiki",
                        "contentmodel": "wikitext",
                        "*": "\n\nPCB schematic and layout here:\n\nhttps://rflab.martinos.org/images/7/76/Spin_echo_board_v8.zip\n\nLarge blue potentiometer sets TE.  Smaller potentiometers are used to set the duration of the gating pulse for 90 and 180 deg pulses (sent to RFPA), duration of the 90 deg. excitation hard pulse, duration of the 180 deg. refocusing hard pulse, and TR.\n\nThe synthesizer input should typically be 10 dBm or higher to drive the mixers properly.\n\n[[File:Spin_echo_board_bottom.JPG|400px|thumb|left|Top of PCB with digital IC's.]]\n\n[[File:Spin_echo_board_top.JPG|400px|thumb|left|Bottom of PCB with RF components and potentiometers to set pulse duration and duty cycle.]]"
                    }
                ]
            },
            "18": {
                "pageid": 18,
                "ns": 0,
                "title": "Startup notes",
                "revisions": [
                    {
                        "contentformat": "text/x-wiki",
                        "contentmodel": "wikitext",
                        "*": "\n\n\nBelow are some notes intended to help if you'd just received an amplifier board kit from MGH and are starting to set up the system.\n\n== Hardware setup == \n  \nYou will need a USB to micro-USB cable to communicate with the Teensy 3.5 microcontroller.\n  \nYou will need 9 of these fiber optic cables:\nhttps://www.digikey.com/product-detail/en/broadcom-limited/HFBR-RNS010Z/516-2092-ND/1990490\n  \nThere are also shorter lengths:\nhttps://www.digikey.com/products/en/cable-assemblies/fiber-optic-cables/449?k=avago%20fiber\n  \nWe recommend tying the cables together with heat shrink tubing or cable ties.    If you need a longer length, there are connectors/couplers that you can use to connect two fiber cables end-to-end. \n    \n  \nRemaining steps for setting up the hardware:\n \n(1)    Make Molex cables using connectors and crimp-on pins (ideally with a Molex crimp tool but you can do it with pliers if you\u2019re careful) \n(2)    Obtain 9 fiber optic cables to communicate between microcontroller board and fiber interface board. \n(3)    Populate OPA549 power op amps.  This must be done carefully.  I recommend fastening the op amps to the heat sink first, and then soldering the pins afterward.  This avoids putting mechanical strain on the pins.  If you solder them first and then screw them to the heat sink, the pins can be damaged and the op amp becomes unreliable.   Make sure you buy the OPA549T part number that matches the board hole layout (not the \u2018S\u2019 part number).\n \n \nPlease make sure you have the most recent version of the EAGLE circuit board schematics and the Powerpoint setup slides from this Wiki.\n \nThere is a 70 ampere fuse on each amplifier board to protect against short circuits.  You can change this fuse or bridge it as needed. \n \n \n== Teensy microcontroller code ==\n \nOur documentation for the control software is still missing (hopefully to be fixed in 2020...), so here are some guidelines for getting started:\n \n \nIn hardware.h, To address two amplifier boards (16 channels), change this line of code:\n \n     const int boardMap[NUM_B] = {0};//{3,4,5,6};   THESE ARE THE CHANNELS THAT ARE IN USE\n \nso that it addresses boards 0 and 1:\n \n     const int boardMap[NUM_B] = {0,1};//{3,4,5,6};   THESE ARE THE CHANNELS THAT ARE IN USE\n \nAlso change the number of boards to two:\n \n     #define NUM_B 2//number of boards --> NOTE: UPDATE THIS NUMBER FOR THE NUMBER OF AMPLIFIER BOARDS YOU ARE USING\n \nYou set the current on the channels here:\n \n     const int loopsize = 2  ;\n     float output_currents[loopsize][8] =\n     {{0,2,0,2,0,2,-2,2},\n     {0,2,2,-2,0,-2,0,0}};   // put currents here\n \nIf you are using two amplifier boards then the lines would look something like this:\n \n     const int loopsize = 2  ;\n     float output_currents[loopsize][8] =\n     {{0,2,0,2,0,2,-2,2,0,1,0,1,0,1,0,1},\n     {0,2,2,-2,0,-2,0,0,0,2,1,0,0,-2,0,0}};   // put currents here\n \nI just put random values for the currents.   The loop will repeat if you get more than 2 triggers.  Allow approximately 500us settling time after triggering before playing an RF pulse or acquiring readout data.    \n \nThis will loop through two rows of shim currents when triggers are received via fiber optic input to the blue receiver on the other side of the microcontroller board closest to the Teensy.   There is also a way to trigger the board using a BNC connector is you prefer (I can provide instructions for this if you are interested).\n \nIf you want to trigger on the fiber optic input to advance the shim setting, you must uncomment this line:\n \n      attachInterrupt(interruptPin, setDACVal, FALLING); // UNCOMMENT ME FOR TRIGGERS\n \nIf you do not want to use triggers, then comment out this line or just disconnect the trigger fiber.\n \nImportant commands for using the microcontroller.  Open the port dialog window.  Then use \u201cI\u201d to read the current on all channels.  \u201cZ\u201d will zero all channels immediately.  \u201cC\u201d will run an autocalibration on each channel to zero out the small offset current (usually 1-10mA per channel).  The autocalibration is useful because it will tell you with an \u201cX\u201d if any channel is broken or disconnected from the load (e.g., open-circuited).  If all channels pass the autocalibration, then most likely everything is working OK.  \u201cM\u201d will advance to the next row of shim currents.  After uploading the code to the micro-controller, you can press \u201cM\u201d to load the first row of currents.\n \nThere is another version of the Teensy code (available upon request) with a better looping structure for the currents, allowing blocks of shim currents to be played a desired number of times each.\n \nNote that the autocalibration code in the default code is hard-coded to use 32 shim amplifier channels (4 boards).  If you are using a different number of boards, you need to manually adjust this code.  For example, to use a single 8-channel board, you can comment out the unneeded calibration lines as follows:\n\n           for (int i = 0; i < 8; i++) {\n             calibrate_channel(0, i);\n           }\n        // for (int i = 0; i < 8; i++) {\n        //   calibrate_channel(1, i);\n        // }\n        // for (int i = 0; i < 8; i++) {\n        //   calibrate_channel(2, i);\n        // }\n        // for (int i = 0; i < 8; i++) {\n        //   calibrate_channel(3, i);\n        // }\n\n \nDon\u2019t go above 3.5 amps of current with the boards as presently configured.  We can go a little higher if you need to, but it will require changing the resistors on the analog input stage of each channel to increase the gain.  You can test the system to see how high it will go but at some point the DAC reaches its limit (~2.4 volts).  The analog stages uses the difference between a reference voltage (~1.2 V) and the DAC output voltage to set the polarity and amplitude of the output current, with a gain of approximately 3.5 (you can measure the exact gain).  Changing the input resistors on the analog stage will adjust the gain.  The 1nF capacitor in parallel acts with the 10 kohm resistors as a low pass filter on the DAC output to remove high frequency components which are outside the amplifier\u2019s bandwidth and can only cause bad things (like instability).  This slows the output current rise time, but only slightly.  This can be good for reducing noise and torques in the shim coil.  To reduce the rise time further, you can increase this capacitor value.  I\u2019m attaching Matlab simulation software that gives you the approximate transfer function of the amplifier and step response for a specified load impedance.\n\nNote that there is also a 10 kohm resistor on each OPA549 I_lim pin which limits the current to 3.5 amps in the present design.  If you'd like to use higher output currents, please replace this resistor with a smaller value (or 0 ohms to use the full output range up to 8 amps)."
                    }
                ]
            }
        }
    }
}