builder555 / PineSAM

UI for Pinecil V2 - control it over BLE from your PC or your mobile.
MIT License
207 stars 11 forks source link
ble bluetooth pine64 pinecil pinecil-v2 soldering soldering-iron

Hits contributors welcome Download (all releases) Latest release bluetooth



Pinecil Settings and Menus

Why focus on soldering when you can play with the settings instead? With this app you have full control over your new shiny Pinecil V2 from your computer using bluetooth.

NB: No special browser BLE GATT or flags required and works on all major OS/devices.

NB: This app needs the python backend to run on a computer, it CANNOT run entirely in the browser like Joric's UI.

#### Full settings view


Features

Supported

System MacOS Linux Windows Phones
UI :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:
backend :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:


:desktop_computer: Install Options

I. Easy Method

  1. Install one of the binary packages made for your OS; does not require install of python or node.js.

  2. Download latest release here for your specific OS (Mac, Linux, Windows).

  3. Mac/Linux: extract and run ./start.sh in terminal.

  4. Windows:

    • right click on the zip, properties> general, check box to Unblock, then extract (reference).
    • Run PineSAM.exe
    • Approve any pop-up warnings.
    • Open http://localhost:8080 in your normal browser (the page will not open automatically).
    • Usage guide here.

II. Build the Dev version (Source-all-_.zip)

This ultimately creates the same PineSAM as in the premade binaries. Install this if there is an issue with the binaries or you are doing dev work.
For the backend script, first install:

Setup

Install all packages linked above first.

git clone https://github.com/builder555/PineSAM
cd PineSAM
chmod +x setup-dev.sh
chmod +x run-dev.sh
./setup-dev.sh

Run

./run-dev.sh
# press CTRL+C in the terminal window to stop

### Windows dev install #### Install Install the packages linked above for the backend script. Skip to 4 if you did this already. 1. Python install notes * Check "Add python.exe to PATH" and select "Customize Installation" * Check "Add Python to environment variables" option * Screenshots of options to select [are here](https://github.com/builder555/PineSAM/discussions/7#discussion-4862766). 2. Install [NodeJS here](https://nodejs.org/en/download/), accept all prompts to add packages during install including a prompt in the terminal that opens. 3. After installing packages listed for backend script ([reference](https://github.com/builder555/PineSAM/issues/131#issuecomment-1489711241)), go to System Environment variables to check paths ([image](https://github.com/builder555/PineSAM/discussions/130#discussion-5011624)). 4. Download the Source-all-__.zip from the [latest release](https://github.com/builder555/PineSAM/releases/latest). 5. Right click the zip > properties, if it has an Unblock option, then check unblock and extract ([example](https://github.com/builder555/PineSAM/discussions/106#discussion-4960445)). 6. Run powershell as administrator, set permissions to RemoteSigned ([image here](https://github.com/builder555/PineSAM/discussions/106)). ```shell # setting this one time in powershell normally persists on reboots. C:\ Set-ExecutionPolicy RemoteSigned ``` #### Run 1. change directory, `cd` into the PineSAM folder that was extracted above. ```shell .\setup-dev.bat # only need to run this one time for each new version .\run-dev.bat # run this command every time to start PineSAM (do not need to run as admin) ```
 

:signal_strength: Remote access

You can access the settings remotely once the app is running on the main PC/laptop.

🚧 Known issues

  1. bleak causes Python to crash on Mac: https://github.com/hbldh/bleak/issues/768

    • possible solution: give access to iTerm (or whichever terminal you use) to Bluetooth in Settings
  2. Pinecil not detected

    • possible reason: you paired your Pinecil using system settings. solution: unpair it from all other places.
    • possible reason: using older firmware (below 2.21). solution: flash current BLE firmware; below IronOS 2.21 only BETA versions will work with PineSAM.
  3. PineSAM script terminal crashes on start of script: incompatible version of IronOS, check/update firmware see above.

  4. Windows Powershell issue

    • windows by default does not allow any scripts to run in powershell. Make sure the zip file property is Unblock (reference) and set powershell to remotesigned with:
      set-executionpolicy remotesigned
    • check that windows has not reset the permissions in powershell with Get-ExecutionPolicy and change it back to RemoteSigned if needed (reference).
  5. See the Discussions section for install hints and solutions to some common issues.

  6. PineSAM usage instructions here.

  7. Something else: open an issue.

🛠️ Running Unit tests

# run inside 'backend' directory:
pipenv run test

:book: References

Contributors

builder555/
builder555
river-mochi/
river-mochi
Neil
Neil Hanlon
MagicLike/
MagicLike
Spagett/
Spagett
Kristian
Kristian Kosev
mcraa/
mcraa