Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

This article will help you get setup if you have a M1 with a solution using Docker Desktop.

\uD83D\uDCD8 Instructions

  1. Download Docker Desktop for Apple Silicon (https://www.docker.com/products/docker-desktop/ )

  2. Install the latest version of vagrant (https://www.vagrantup.com/downloads )

  3. Clone the repo: git clone https://github.com/uw-midsun/box.git && cd box

  4. Go to your box directory and switch to branch main

    ~ % cd box 
    box % git checkout main
  5. Run vagrant up --provider=docker

  6. Run vagrant ssh

  7. Run cd shared

  8. Run git clone https://github.com/uw-midsun/fwxv.git && cd fwxv (if you clone with https, you will need to set up an ssh key later which is covered in our setup page)

  9. Run scons sim --project=leds --platform=x86 to test that your environment is working correctly. If it compiles and runs your environment is set up.

✨ Guide to flashing on M1s

While this guide provides instructions for flashing, it's important to note that the execution of scons sim still remains necessary within the Docker environment

Ensure that these steps, including any future flashing activities, are performed outside the Vagrant/Docker environment

  1. Download gcc-arm-none-eabi version 9.2.1 which is obtained from https://developer.arm.com/downloads/-/gnu-rm

  2. Move this to your tar file into your box folder and change current directory to ~/box

  3. Run this code in the box repository:

  4. Run scons in the box/shared/fwxv folder to test if building works

    For people who care about the step-by-step of the m1.sh:

    // Should be in the box repository with .tar.bz2 file
    tar xzf gcc-arm-none-eabi-9-2019-q4-major-mac.tar.bz2
    
    // move into gcc-arm-none-eabi folder
    cd gcc-arm-none-eabi-9-2019-q4-major/
    
    // run pwd and copy output into next command
    pwd
    
    // enter pwd output in [pwd input here] (do not include [] braces)
    // ex. echo 'export PATH="/Users/your-user-name/box/gcc-arm-none-eabi-9-2019-q4-major/bin:$PATH"' >> ~/.bashrc
    echo 'export PATH="[pwd input here]:$PATH"' >> ~/.bashrc
    source ~/.bashrc
    
    // you may get a permissions issue so we will "unquarantine" (remove quarantine attribute) our files
    // path to gcc-arm-none-eabi folder can be grabbed by cd gcc-arm-none-eabi-9-2019-q4-major and pwd
    // ex. xattr -d -r com.apple.quarantine /Users/your-user-name/box/gcc-arm-none-eabi-9-2019-q4-major/
    xattr -d -r com.apple.quarantine [path to gcc-arm-none-eabi folder]
    
    // check arm-none-eabi-gcc version 
    // Should get output similar to: 
    /* 
    *  arm-none-eabi-gcc (GNU Tools for Arm Embedded Processors 9-2019-q4-major) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599]
    *  Copyright (C) 2019 Free Software Foundation, Inc.
    *  This is free software; see the source for copying conditions.  There is NO
    *  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    /*
    arm-none-eabi-gcc --version
    
    // To test if it works, run scons to see if everything compiles correctly for you
    scons
    

  • No labels