2015/03/21

MightyWatt resource page

This page contains the most up-to-date resources for MightyWatt.

 
Click here to view Google Drive folder with all the resources.

 

Resources also available on GitHub.


 
Please, contact me if you find a bug or have a software request.

Latest hardware revision: 2.5

Latest sketch (firmware) version: 2.5.9 (2.5.9 calibration)

Latest Windows control program version: 1.3.1.0

Warning: You will need FW 2.5.7 or higher for Windows client 1.3.0.0 and higher.


Guides

Detailed guide: All you need to know for calibrating and running MightyWatt.
Case assembly instructions: If you have the original acrylic layered case for MightyWatt + Arduino Uno or Arduino Zero (M0/M0 Pro), these are the instructions on how to assemble it.
Communication protocol description: If you wish to use your own PC-side control program with the original sketch, this guide has information about the communication protocol which is used by MightyWatt.
Booster pack guide: A guide for the official Booster pack accessory. Increases the maximum power dissipation with a power resistor.

Arduino sketches 

Main sketch (firmware): This is the program that runs in Arduino. As of version 2.5.7, it is compatible with Arduino Zero (M0/M0 Pro), Uno and Due boards. Please note that on Due boards, it is necessary to solder its AREF (BR1) jumper to EXT (external).
Calibration sketch: Use this for calibration of MightyWatt.

Schematic and board 

Eagle: Schematic and board plus a PNG image of the schematic.

Bill of Materials

PDF file: List of all the components you need to make MightyWatt.

Windows control program

Complete C# project: A PC-side program that controls MightyWatt. Program has manual control, advanced measurement programs and data logging. The executable is located in C#/bin/Release/MightyWatt.exe
Changelog: A file containing description of changes to the Windows program.

Charts

Excel macro: A macro-enabled workbook that can import data from MightyWatt Log File and automatically update it, thus showing charts in real-time.

Calibration aid

Excel spreadsheet: Calculates the calibration values.

Acrylic layered case

SVG drawing: Contains drawings of the layers. Numbers in parentheses indicate how many layers are needed for one case.


 

How to update to firmware version 2.3.1 (and higher) and Windows program 1.0.1.1 (and higher):


Windows program version 1.0.1.1 (and higher) is only compatible with firmware version 2.3.1 (and higher). It is, however, possible to upgrade any 2.0 or higher board to this version. You will have to modify the calibration values though. Download the new calibration aid and copy the source (measured, ADC and DAC) values from your old calibration aid to the new calibration aid (or make a new calibration). You will get a set of new values which you will put into the new sketch. Also, don't forget to comment "#define ZERO" and "#define DUE" and uncomment "#define UNO" line in the sketch. I recommend reading the Detailed guide.

10 comments:

  1. Hello,
    How do I set the Due for external analog reference. I can't seem to find the jumper

    ReplyDelete
    Replies
    1. Hi, if you put the board with USBs facing left, the reference jumper is at the top-right corner of the 6-pin ICSP header. It is labelled AREF and it is a tiny 0402 solder jumper. There are two positions: The default 3.3V and the EXT, which is needed for MightyWatt.
      I can send you a photo if you need.

      Delete
    2. Thanks for your reply.
      There is a resistor soldered to the 3.3V. Should I remove it?

      Delete
    3. The resistor is actually a zero-ohm short (link).
      You have to put it from the 3.3V position to the AREF position. The solder jumper has three pads. The short connects the middle pad to the 3.3V (bottom) pad by default. You have to move it to connect the middle pad with the AREF (top) pad. If you lose it, don't worry. A blob of solder will do. It is only a matter of disconnecting it from 3.3V and connecting to AREF. Let me know how you succeeded (jpolonsky@gmail.com).

      Delete
  2. I'm wondering about the unfinished board layout in the eagle .brd file...

    there are hidden Airwaves in N§2, N$4 and N$11 - so the shunt leaves unconnected ?

    ReplyDelete
    Replies
    1. Hi Overtuner, this is a safety feature. These three connections carry large currents. If they were connected on PCB but not heavily solder-plated, they could be damaged by the current so they are better left unconnected on the board. If you are going to build it, use a blob of solder on N$2 and utilize the FET's leads for the other two. It won't be enough for N$4 but the lead should reach the plated trace. Cover each high current trace connection with thick solder. But don't solder the shunt resistor power and sense terminals together, this would greatly affect the thermal coefficient.
      See this image (old version but same principle): http://4.bp.blogspot.com/-QazhgdQq2PU/UweRB8r39ZI/AAAAAAAAC_I/BFRFy_dDNPw/s1600/assembled+pcb+bottom.jpg

      Delete
  3. Jakub,
    better layout the traces completely and spare them out from Soldermask - so you can attach short pieces of solid copper wire and fill it with Solder.
    also you should route those high current traces on Top AND Bottom and add a lot of small via's.
    another small detail I saw on the pic - define the Mask Limit with 0.02 in your design rules, so all your GND-vias will be covered by solder-stop.

    regards
    Lutz

    btw. - great job done. maybe I'll steal some Ideas for my own standalone programmable load ;-) (still in design,much more Power and more powerful MCU like Teensy with large display)

    ReplyDelete
    Replies
    1. Thank you very much for your tips! Feel free to use any ideas from this project :-)
      Cheers
      Jakub

      Delete
  4. Jakube dobra prace. Mam dotaz k presnosti mereni proudu. Mas to nejak charakterizovane z hlediska total accuracy a pripadne sumu? Jde mi hlavne o pouziti loadu jako dummy load pripojeny na vystup motoroveho H-mustku rizeneho PWM typicky 1kHz az 2kHz. Rekneme ze A/D prevodnik je absolutne presny 16bit., jak si vede ta INA a shunt? Dik Dawe

    ReplyDelete
    Replies
    1. Ahoj Dawe, když jsem zátěž vyvíjel, tak jsem podobná měření dělal, ale raději jsem to přeměřil s poslední verzí hardware (2.5). Protože je to docela dost výsledků, dal jsem to na disk: https://drive.google.com/open?id=0B7G3xJXZNLUpd1JzRllfc2djWnc Je to anglicky, protože si myslím, že to bude pár zahraničních zákazníků taky zajímat, tak jsem si ušetřil práci :-)
      Z hlediska přesnosti je asi nejslabší článek ADC v Arduinu Uno. Je vidět, že Due ho má lepší. Mám doma zdroj jen do 3 A, takže měření jsou trochu nefér, protože čím blíž jsi maximálnímu rozsahu, tím se typicky snižuje relativní chyba. Já každému doporučuju nechodit pod 1 % rozsahu, tam už se přesnost hodně snižuje. Zátěž mám vyzkoušenou i ve verzi 25 A a linearita je slušná, surová data už ale nemám. Taky jsem jednou použil 16bitový DAC, ale slovy klasika "na funkci to nemá vliv", je tam samozřejmě jemnější krok, ale myslím, že celkově to nemá cenu. V případě zájmu budu kalibrovat dvě zátěže asi za dva týdny, jsou to ty 25A verze, takže si můžu schovat data.
      Když vidím frekvence v kHz, tak rovnou řeknu, že na to zátěž není dělaná. Původní projekt byl zaměřený jen na DC, takové aplikace jako jsou palivové články a baterie. K AC aplikacím jsem dost skeptický, protože jsem se snažil udělat zátěž spíše stabilní na úkor šířky pásma. Můžeš mi klidně napsat na email, jestli tě ještě něco ohledně zátěže bude zajímat: jpolonsky@gmail.com.
      Kuba

      Delete