1. Got a question or need help troubleshooting? Post to the troubleshooting forum or Search the forums!

CommunityOS for Robo Printers (and others)

Discussion in 'Off Topic' started by WheresWaldo, Jun 3, 2019.

  1. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,806
    Likes Received:
    3,521
    communityos.png

    A replacement distribution for Robo3D R2 and C2 printers. It includes the OctoPrint host software for 3d printers out of the box and mjpg-streamer with RaspiCam support for live viewing of prints and timelapse video creation. A Linux proxy server is included so you can access your printer via your favorite browser at http://communityos.local.

    Features
     
    #1 WheresWaldo, Jun 3, 2019
    Last edited: Jun 3, 2019
    Roberto Torres likes this.
  2. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,806
    Likes Received:
    3,521
    What is included with CommunityOS

    CommunityOS is an attempt by a small group of Robo3D printer users to 'modernize' the operating environment used to run the R2 and C2 printers. The idea is to take the current hardware and extend their useful lives. Hopefully all the little bugs and nuisances of the existing control program will be a thing of the past. All the proprietary plugins, no longer supported by Robo3D are gone, replaced by the same or equivalent plugins from the original authors. No plugins that violate your privacy without asking permission.

    The Raspberry Pi (a Raspberry Pi 3 Model B+ recommended) has the following configuration:
    • Latest stable release of Raspbian Stretch Lite
    • Latest stable version of OctoPrint
      • All required Raspbian software is included in the distribution
      • All non-essential Raspbian software is removed from the distribution
    • PyBonjour is included for network access using friendly human-readable names
    • Latest version of mjpg-streamer for snapshots and timelapse
    • Latest version of HAProxy
    • Latest version of WiringPi for generalized GPIO support
    • SSH enabled by default
    • Easy way to provide a unique hostname for your network setup.
    We currently have two preconfigured distributions for your Robo3D printer. One for the R2 and another for the C2. A list of the preinstalled OctoPrint Plugins include:
    If you use one of the predefined distributions for the C2 or R2 you will have printer profiles preset within OctoPrint. The proper touchscreen drivers for the HDMI version of the C2 and the R2, respectively.

    If the predefined distribution is not exactly your cup of tea, then you have the option to build your very own distribution with the plugins you want preinstalled and preconfigured.
     
    #2 WheresWaldo, Jun 3, 2019
    Last edited: Jun 3, 2019
  3. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,806
    Likes Received:
    3,521
    Hardware requirements for CommunityOS

    You will need a new µSD card. We do not recommend that you reuse the existing card in your Robo printer. Please put that card in a safe place if you ever desire to return to the original RoboOS distribution, although the hope is you will never have to go back. We would recommend any quality µSD card with a minimum capacity of 8 GB (16 GB - 64 GB recommended). The image itself is only 2 GB in size, but it will expand automatically to use the entire capacity of your µSD card.

    If you already have a Robo3D C2 or R2 printer, there is nothing else needed. If you want to run this on another printer (Robo3D or otherwise), you will need the following hardware.

    • Raspberry Pi 3 Model B+ (tested on a Model 2 and above).
    • A +5.1 V micro USB power supply, with a minimum capacity of 2.5 A.
    • A USB cable to attach your Raspberry Pi directly to your printer
    • Optional Ethernet cable (if not using WiFi)
    • A compatible Raspberry Pi HDMI LCD Touchscreen, we have been very happy with most of the screens from Waveshare.com. For reference, the C2 uses a 3.5" resistive touchscreen and the R2 uses a 5" resistive touchscreen.
    • Some sort of case for it all, maybe even 3D print one.
     
    #3 WheresWaldo, Jun 3, 2019
    Last edited: Jun 3, 2019
  4. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,806
    Likes Received:
    3,521
    How to install a predefined CommunityOS image

    In order to use CommunityOS you first need to download and burn the image to removable media. The following instructions explain how to use balena Etcher to do just that.
    1. Download the latest release of CommunityOS from the GitHub repository to your local hard disk drive.
    2. Place an 8 GB or larger microSD card in a reader and plug it into your PC or Mac. Ignore any error messages or requests to format the drive.
    3. Open the balena Etcher application.
    4. At the opening screen press the Select Image button.
      [​IMG]
    5. In the file selection dialog select the .img file you downloaded in step 1 and press Open.
    6. Change the Drive selected in Etcher if it is not autodetected
    7. Press the Flash! button to continue.
      [​IMG]
    8. Etcher will pause for a few seconds as it is preparing to write the image to the microSD card.
    9. Once it has started flashing the image the following screen will appear with a percentage progression bar.
      [​IMG]
    10. Once flashing is complete, Etcher will validate that it has flashed the image correctly.
      [​IMG]
    11. After validating Etcher will unmount the drive and report that it is finish.
    12. You may get addition dialog boxes that indicate that your newly written image needs formatting, you must cancel all these dialog boxes.

    You are now ready to configure your CommunityOS image.
     
    #4 WheresWaldo, Jun 3, 2019
    Last edited: Jun 3, 2019
  5. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,806
    Likes Received:
    3,521
    How to configure your CommunityOS distribution

    Now that you have written the image onto a new µSD card, it is time to configure it for use on your home network. This requires the use of a text editor. Please do not use Windows Notepad or Wordpad to edit the necessary files. We recommend Notepad++ or any of a number of Linux style text editors.

    You may have to eject the µSD from your PC and insert it again for Windows to see it. Once Windows recognizes the µSD there may be a series of dialog boxes warning you that the drive requires formatting. Please Cancel all these warnings, without taking any other actions.

    Once you are ready for configuration, you should be able to get a directory of files in a /boot/ partition of the µSD.
    Directory-boot.png
    There are several files that can affect your configuration. The first file you will be editing is communityos-wpa-supplicant.txt. Within that file you will set up your access to your WiFi network. Once loaded in your text editor you should see something like this;
    wpa-supplicant-01.png
    The section that starts with ## WPA/WPA2 secured is where you need to start editing. First remove all the # characters from the front of every line starting with #network={ and ending with the line #}.In between the quotes where it says put SSID here, replace that text with the name of your WiFi network, remembering to leave the quotation marks. In the very next line replace the words put password here with the actual password used to connect to your WiFi network. Scroll down to the section with the lines that start with country=.
    wpa-supplicant-02.png
    Only one of the following lines must have the # removed, by default it is United Kingdom, if you are for example in the United States, add a # to the beginning of the line for GB and remove the # at the beginning of the line for the US. Save your file.

    If you are okay with accessing your CommunityOS server at the address of http://communityos.local then you are done editing and may now insert your µSD card into the Raspberry Pi and start the boot process. If you want or need to change the address for your CommunityOS server, create and edit a file named communityos-hostname.txt. If a host name other than communityos is desired type it into the first line, then save the file. Make sure there are no spaces or special characters in your hostname. Once complete you will be able to access your CommunityOS server at http://<hostname>.local, where <hostname> is replaced by whatever name you saved in the file, communityos-hostname.txt.

    You are now ready for your first boot up with CommunityOS.
     
    #5 WheresWaldo, Jun 3, 2019
    Last edited: Jun 7, 2019
  6. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,806
    Likes Received:
    3,521
    How to configure your CommunityOS distribution part 2

    After inserting your CommunityOS µSD into the Raspberry Pi and applying power it will boot up the first time and display the logo screen pictured here.
    logo_splash.png
    After 60 - 90 seconds you will see CommunityOS resizing its own file system to use the entire capacity of the µSD card used. Depending on the size of the µSD card it may take a moment or two to complete this operation. Upon completion the Raspberry Pi will reboot a second time.

    Once the second boot up is complete, a process that can take up to 5 minutes, you will be presented with an error screen stating that the control interface cannot connect to your OctoPrint server. At this point you must perform the first time configuration for OctoPrint. Every effort was made to "preconfigure" CommunityOS but a couple of items can only be configured after OctoPrint is running. Using your favorite browser, navigate to http://communityos.local. You may have to reload the page several times before you are presented with the OctoPrint Setup Wizard. Once OctoPrint is fully loaded you will be presented with the following setup screens.
    octoprint-setup-01.png
    Clicking on Next will move you to the Access Control screen.
    octoprint-setup-02.png
    Please make sure to fill this screen out completely and answer accordingly. Before proceeding you must select either to Disable or Keep Access Control (recommended) otherwise you will not be allowed to move one from this setup screen. Once you have made you Access Control determination, clicking on next with continue with the setup.
    octoprint-setup-03.png
    You can safely disable usage tracking if you like. Leaving it enabled will allow OctoPrint's author to track just how OctoPrint is being used. No personal data is ever transmitted with the anonymous usage statistics. For details on what gets tracked, please refer to tracking.octoprint.org and also the Privacy Policy at tracking.octoprint.org. Clicking on the Next button will move you to the final Setup Wizard screen.
    octoprint-setup-04.png
    At this point you have completed the Setup Wizard and clicking on Finish will take you to the default OctoPrint web interface. At the same time the display attached to your Raspberry Pi will have changed from the previous error screen to the home screen of the interface.
     
    #6 WheresWaldo, Jun 3, 2019
    Last edited: Jun 5, 2019
  7. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,806
    Likes Received:
    3,521
    reserved 7
     
  8. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,806
    Likes Received:
    3,521
    reserved 8
     
  9. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,806
    Likes Received:
    3,521
    reserved 9
     
  10. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,806
    Likes Received:
    3,521
    reserved 10
     

Share This Page