Firmware used to collect data for first KickStat publication "KickStat: A Coin-Sized Potentiostat for High-Resolution Electrochemical Analysis" doi: https://doi.org/10.3390/s20082407
Note: KickStat was originally named MiniStat hence a few files still bearing the root name "MiniStat." We had to change the name after we found another publication with the name MiniStat, though earlier versions of our design (which was called MiniStat) were published on GitHub 3 years before the publication of the other manuscript in question. We apologize for the confusion.
Note: KickStat uses the SparkFun SAMD21 Dev Breakout board definition. Instructions for setting up your board as well as the Arduino IDE are below.
-
PCBWay parameters are located in attached images in the following location:
KickStat-Paper-Firmware/KickStat/Hardware/Button-Cell/RevB/Assembly-Instructions
files: PCBWay-Ordering-Parameters-01, PCBWay-Ordering-Parameters-02, PCBWay-Ordering-Parameters-03 -
Boards can be fabricated and assembled by PCBWay. Go to PCBWay's website and click the PCB Assembly option. You can select how many assembled PCBs you would like. Feel free to leave unique number of parts, SMT pads, and thru-holes blank. PCBWay will populate those fields themselves.
-
Feel free to specify whatever surface finish you prefer. I used HASL with lead, but if you feel more comfortable with lead-free, HASL lead-free and Immersion gold (ENIG) are very economical options.
-
Upload the Gerbers, centroid file, and the BOM to PCB Way's quote system. All those files are located in the Assembly Instructions folder. It will take 2-4 days to review your design. They will contact you over email when the review is complete or if they have any questions.
-
Note: PCBWay often asks about the cathode location for the LEDs. The cathode locations are as noted in the "KickStat-LED-Cathode-Mark.jpg" file. You can simply send them this file in an email. Be sure to reference your Product No. given in their quote system.
-
Note: I like to solder the SWD programming header (10-pin connector) myself (it's located on the bottom of the board), but PCBWay could also solder the headers as well. You'll just need to specify Assembly Side(s): as "Both sides." It might cost a little extra, but still very inexpensive as far as PCB assembly goes. You will also need to give them the part number for the SWD 10-pin connector. I like these options: from Adafruit PID: 752, from Digi-Key Part Number: 1175-1735-ND, Manufacturer Part Number: 3221-10-0300-00, as well as Digi-Key Part Number: 609-3695-1-ND, Manufacturer Part Number: 20021121-00010C4LF
-
Bootload your SAMD21 with the SparkFun SAMD21 Dev Board definition using these instructions "Bootloading-SAMD21.pdf". You will need an SWD 10-pin connector (as discussed in the Hardware Setup Instructions section) and a J-Link
-
Download SparkFun SAMD21 Drivers
-
Set up Arduino for SparkFun SAMD21 Board Definition. Note: I am using Arduino v.1.8.12, Arduino SAMD Boards v.1.8.6, and SparkFun SAMD Board v.1.7.5. I would recommend using all the same versions to avoid any trouble.
-
Download contents of the Firmware/libraries folder (KickStat/Firmware/libraries) into the Arduino libraries folder often located in: documents/arduino of your computer. But always double check. The contents of libraries include the MiniStatAnalyst library and the LMP91000 library. Both are necessary to run KickStat. Instructions for downloading Arduino libraries can be found on Arduino's website
-
Once all that is complete, modify the code as you wish, select the proper board definition within the Arduino IDE (SparkFun SAMD21 Dev Breakout), select the proper port, and you can upload.