Skip to content

Commit fe44f88

Browse files
authored
Merge pull request #2 from sparkfun/PaulZC_Integrated_Uploader
V2.0: Integrated Uploader - adding support for Linux and OSX
2 parents d905ff8 + 67f31a2 commit fe44f88

File tree

10 files changed

+1410
-132
lines changed

10 files changed

+1410
-132
lines changed

Blink.bin

280 Bytes
Binary file not shown.

LICENSE.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
The software is released under the [MIT License](http://opensource.org/licenses/MIT).
2+
3+
The MIT License (MIT)
4+
5+
Copyright (c) 2020 SparkFun Electronics
6+
7+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
8+
9+
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
10+
11+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
5.64 MB
Binary file not shown.

OSX/artemis_firmware_uploader_gui

41.3 MB
Binary file not shown.

README.md

Lines changed: 46 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,40 +3,79 @@ SparkFun Artemis Firmware Uploader GUI
33

44
![Artemis Firmware Uploader GUI](https://cdn.sparkfun.com/assets/home_page_posts/3/2/4/5/Artemis_Firmware_Uploader_GUI.jpg)
55

6-
The Artemis Firmware Uploader (AFU) is a simple to use Windows GUI for updating firmware and the bootloader on Artemis based products.
6+
The Artemis Firmware Uploader (AFU) is a simple to use GUI for updating firmware and the bootloader on Artemis based products.
77

88
To use:
99

1010
* Download the [repo ZIP](https://github.com/sparkfun/Artemis-Firmware-Upload-GUI/archive/master.zip)
11-
* Run artemis_firmware_uploader_gui.exe
11+
* Run the artemis_firmware_uploader_gui executable for your platform
12+
* **/Windows** contains the Windows .exe
13+
* **/OSX** contains an executable for macOS X
14+
* **/Linux** contains an executable built on Ubuntu
15+
* **/Raspberry_Pi__Debian** contains an executable for Raspberry Pi 4 (Debian Buster)
1216
* Select the firmware file you'd like to upload (should end in *.bin*)
1317
* Attach the Artemis target board over USB
1418
* Select the COM port (hit Refresh to refresh the list of USB devices)
1519
* Press Upload
1620

21+
The GUI does take a few seconds to load and run. _**Don't Panic**_ if the GUI does not start right away.
22+
1723
Be sure you are loading firmware for your board or product. While it's unlikely to damage Artemis by loading incorrect firmware it will erase the pre-existing firmware and may lead to the peripherals being controlled incorrectly.
1824

19-
An example *Blink.bin* firmware file is included in the repo. This firmware will cause pin 5 (the status LED on [ATP](https://www.sparkfun.com/products/15442)to blink at 1Hz.
25+
An example *Blink.bin* firmware file is included in the repo. This firmware will cause these LEDs to blink at 1Hz:
26+
* the D5 LED on the [SparkFun RedBoard Artemis ATP](https://www.sparkfun.com/products/15442)
27+
* the D13 LED on the [SparkFun RedBoard Artemis](https://www.sparkfun.com/products/15444)
28+
* the D18 LED on the [SparkFun Thing Plus - Artemis](https://www.sparkfun.com/products/15574)
29+
* the D19 LED on the [SparkFun RedBoard Artemis Nano](https://www.sparkfun.com/products/15443)
30+
* the Green LED on the [SparkFun Edge Development Board - Apollo3 Blue](https://www.sparkfun.com/products/15170)
31+
* the STAT LED on the [OpenLog Artemis](https://www.sparkfun.com/products/15846)
32+
* the D19 and GNSS LEDs on the [Artemis Global Tracker](https://www.sparkfun.com/products/16469)
2033

2134
Pressing the 'Update Bootloader' button will erase all firmware on the Artemis and load the latest bootloader firmware. This is handy when SparkFun releases updates to the [SVL](https://github.com/sparkfun/SparkFun_Apollo3_AmbiqSuite_BSPs/blob/master/common/examples/artemis_svl/src/main.c).
2235

23-
SparkFun labored with love to create this code. Feel like supporting open source hardware?
36+
For the [SparkFun Edge](https://www.sparkfun.com/products/15170), please click the ```Board Type``` menu and select ```Apollo3```.
37+
38+
SparkFun labored with love to create this code. Feel like supporting open source hardware?
2439
Buy a [breakout board](https://www.sparkfun.com/products/15444) from SparkFun!
2540

2641
Repository Contents
2742
-------------------
2843

29-
* **/tools** - The python source files and executables
44+
* **/tools** contains the python source files and SVL binary
45+
* **/Windows** contains the Windows .exe
46+
* **/OSX** contains an executable for macOS X
47+
* **/Linux** contains an executable built on Ubuntu
48+
* **/Raspberry_Pi__Debian** contains an executable for Raspberry Pi 4 (Debian Buster)
49+
* **LICENSE.md** contains the licence information
50+
51+
Building Your Own Executable
52+
----------------------------
53+
54+
We use Python3 and [pyinstaller](http://www.pyinstaller.org/) to create the executables. You can create your own executable if you want to, so long as you have PyQt5 and the other prerequisites installed.
55+
56+
The **/tools** folder contains the python source code, icons and the latest SVL bootloader binary. You can run the python code directly by calling:
57+
58+
```python3 artemis_firmware_uploader_gui.py```
59+
60+
On Windows platforms, you can create an executable by calling:
61+
62+
```pyinstaller --onefile --noconsole --distpath=. --icon=artemis_firmware_uploader_gui.ico --add-data="artemis_svl.bin;." --add-data="Artemis-Logo-Rounded.png;." artemis_firmware_uploader_gui.py```
63+
64+
On Linux platforms, you need to replace the semicolons with colons:
65+
66+
```pyinstaller --onefile --noconsole --distpath=. --icon=artemis_firmware_uploader_gui.ico --add-data="artemis_svl.bin:." --add-data="Artemis-Logo-Rounded.png:." artemis_firmware_uploader_gui.py```
67+
68+
This will create a single file executable which has the SVL binary bundled into it. You can then distribute it and run it on the same platform without needing Python3.
3069

3170
License Information
3271
-------------------
3372

34-
This product is _**open source**_!
73+
This product is _**open source**_!
3574

3675
If you have any questions or concerns on licensing, please contact [email protected].
3776

3877
Please use, reuse, and modify these files as you see fit. Please maintain attribution to SparkFun Electronics and release any derivative under the same license.
3978

4079
Distributed as-is; no warranty is given.
4180

42-
- Your friends at SparkFun.
81+
- Your friends at SparkFun.
40.9 MB
Binary file not shown.
Binary file not shown.

tools/ambiq_bin2board.exe

-6.68 MB
Binary file not shown.

0 commit comments

Comments
 (0)