a5s:custom-firmware-developer-info

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
a5s:custom-firmware-developer-info [2019/03/24 22:19] samuelpinchesa5s:custom-firmware-developer-info [2020/12/25 02:13] (current) – external edit 127.0.0.1
Line 1: Line 1:
-===== Developer Information for A5S & A1 Custom Firmware ===== +Please note that this page has moved please go [[https://jgauroraforum.com/discussion/730/how-to-compile-your-own-custom-marlin-2-0-firmware-for-jgaurora-a5s-and-a1#latest|here]] for instructions and discussion on how to compile Marlin 2.0 with platformio:
- +
-**This document provides more detailed developer info on the [[a5s:firmware|custom firmware]], as well as info on how to setup a build environment and build your own version of the firmware from scratch. Due to compiler differences resulting on error message on mac, these instructions are currently PC only.** +
- +
-=== A5S & A1: Printer Firmware Differences === +
-The A5S and A1 are powered by the same motherboard. The only difference between these printers, is that the x-axis is reversed on the A1, so the motor directions must be changed. This also means that homing occurs to X-max, rather than the traditional X-min. The only other differences are minor geometry changes since the A5S and A1 differ in build volume.  +
- +
-=== Step 1. Download a copy of the firmware files === +
-You can either clone or download a copy of all the files from github here using [[https://github.com/pinchies/Marlin|the green button here]]. +
- +
-=== Step 2. Configure your files for the correct printer. === +
-These differences are all contained within the main configuration.h files for these printers. To configure the build for the correct printer, the correct configuration files can be copied from the [[https://github.com/pinchies/Marlin/tree/jgaurora_a5s_a1_with_lcd_buttons/Marlin/src/config/examples/JGAurora|config/examples/JGAurora]] directory, into the main [[https://github.com/pinchies/Marlin/tree/jgaurora_a5s_a1_with_lcd_buttons/Marlin|/Marlin/Marlin/]] folder, to be placed alongside Marlin.h. +
- +
-=== Step 3. Install a platformio-compatible code editor of your choice. === +
-You have two options for supported code editors, you can use [[https://code.visualstudio.com/|VSCode from Microsoft]] (recommended), or you can use [[https://atom.io/|Atom]]. +
- +
- +
-=== Step 4. Install Platformio === +
-Install instructions for Platformio are [[https://platformio.org/platformio-ide|here]]. +
- +
-{{:a5s:platformio-ide-vscode-pkg-installer.png?direct&600|}} +
- +
-NOTE: Installing takes some time, and happens in the background. You may want to leave this running for an hour to fully setup. If you find your projects don't compile, and seem to be frozen, don't worry, PlatformIO probably hasn't finished fully installing all the internal components. +
- +
-=== Step 5. Setup Workspace === +
-Add the entire Marlin root folder to your workspace in Platformio. +
- +
-{{:a5s:platformio-ide-vscode-welcome.png?direct&600|}} +
- +
-=== Step 6. Build Project === +
-Click the build button in the toolbar, like shown below. Platformio will download the correct packages and libraries for the firmware, so this may take some time. +
-{{:a5s:platformio-ide-vscode-build-project.png?direct&600|}} +
- +
-=== Step 7. Install Firmware === +
-The compiled firmware files will be found in the main folder, located in an invisible folder in ./.pioenvs/jgaurora_ax/ +
- +
-There will be two files: +
-  * firmware_with_bootloader.bin +
-  * firmware_for_sd_upload.bin. +
- +
-The file with bootloader is to be used if flashing a blank motherboard, as it includes the bootloader that is responsible for handling the SD card upload process. This means there is nothing to worry about if you want to experiment with creating your own firmware without the bootloader, as you can reinstall it later on. To flash the full firmware you will need a SWD programmer (a ST-link clone off ebay costs $5 or less). +
- +
-If you don't have a programmer device available, then you will have to flash using the SD card method: +
-  Place the bin "firmware_for_sd_upload.bin" onto the SD card. +
-  Turn off the printer, and unplug it from the wall. +
-  Wait 30 seconds.  +
-  - Insert the SD card. +
-  - Plug in and turn on the printer. Flashing will occur automatically. +
- +
-Flashing via SD card doesn't change the bootloader at all, so going back to factory firmware is simply following the instructions above, but using the [[https://jgaurorawiki.com/a5s/firmware#official-original-manufacturer-firmware|OEM firmware files linked to here]]+
- +
- +
-==== Original A5S Source Code ==== +
-JGAurora released the source code for the A5S in late 2018These files can be download here: +
- +
-  * [[https://www.dropbox.com/s/tfgaksnd7nf0q55/Source%20of%20A5S_20181122090929.zip?dl=0|A5S Firmware Code source from JGAURORA]] +
- +
-This firmware is based off the open source Dlion firmware project. That project which was an implementation of (a very old version of) the Marlin firmware, within a OpenRTOS project, with a touch interface. JGAurora created their current firmware from this project, but changed the interface side substantially. For more into this topic, you may want to read [[https://samuelpinches.com.au/3d-printer/today-pigs-are-flying-and-%e5%a4%aa%e9%99%bd%e5%be%9e%e8%a5%bf%e9%82%8a%e5%8d%87%e8%b5%b7-the-sun-rises-in-the-west-or-a-32-bit-mess/|this blog post]].  +
- +
-==== Pinout ==== +
-(**Click image to enlarge**) +
- +
-{{:a5s:pinout.png?direct&300|}}+
  
 +**[[https://jgauroraforum.com/discussion/730/how-to-compile-your-own-custom-marlin-2-0-firmware-for-jgaurora-a5s-and-a1#latest|How to compile your own custom marlin 2.0 firmware (for JGAurora A5S and A1)]]**
a5s/custom-firmware-developer-info.1553426366.txt.gz · Last modified: 2020/12/25 02:13 (external edit)