Skip to main content

No project description provided

Project description

OctoStudio

This Python library pass messages between Python and OctoStudio.

Specifically, it works with two blocks of OctoStudio:

  • beam to phones
  • wait for beam (work-in-progress)

Install

# Python >= 3.10
pip install octostudio

Usage

from octostudio import OctoStudio

def on_message(shape):
    print(shape)

octo = OctoStudio()
octo.on_message = on_message
octo.start()

For MicroBlocks users

This library was originally used to bridge OctoStudio's Bluetooth radio with MicroBlocks' wifi radio.

To do this you need to install this package, then run the command: octostudio-microblocks-bridge

Take a look at the inner workings.

For Scrarch users

Install dependencies:

pip install paho-mqtt octostudio

run the command: octostudio-scratch-bridge. Take a look at the inner workings.

Open the demo project

OctoStudio & Scratch demo video

Customize

octostudio-scratch-bridge uses the default MQTT broker and account. Other users may also be using it. If you want to use your own broker and account, you can run the following code instead of the default octostudio-scratch-bridge:

# custom octostudio-scratch-bridge
import paho.mqtt.client as mqtt
from octostudio import OctoStudio

mqtt_client = mqtt.Client()
# You can use other MQTT broker. If you want to use it with Scratch, make sure the MQTT broker supports wss protocol
mqtt_client.username_pw_set('guest', 'test')
mqtt_client.connect("mqtt.aimaker.space", 1883, 60)

def on_message(shape):
    mqtt_client.publish("octo_message", shape)
octo = OctoStudio()
octo.on_message = on_message
octo.start()

For Snap! users

Install dependencies:

pip install paho-mqtt octostudio

run the command: octostudio-snap-bridge. Take a look at the inner workings.

Open the demo project

FAQ

How to send a message to OctoStudio?

send a message to OctoStudio

I implemented this part directly in MicroBlocks instead of the bridge. I will update the relevant principles to this article soon.

Messages being delayed

Reference here: Maximum rate that advertisements can be scanned/read.

No solution found yet.

Related source code, looking forward to you improving it.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

octostudio-0.4.2.tar.gz (3.2 kB view details)

Uploaded Source

Built Distribution

octostudio-0.4.2-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

Details for the file octostudio-0.4.2.tar.gz.

File metadata

  • Download URL: octostudio-0.4.2.tar.gz
  • Upload date:
  • Size: 3.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.5 Darwin/22.5.0

File hashes

Hashes for octostudio-0.4.2.tar.gz
Algorithm Hash digest
SHA256 c91eb5331c8d39a652be050c7fe6ebb7f375b0969db6456fc4385539323fb5b8
MD5 dd1f4f8e4600c96d496d043ba0825068
BLAKE2b-256 f1ce30ace11b130ff57ddf199c86878e5ed25c6106d92b998ca8854d3d2dad11

See more details on using hashes here.

File details

Details for the file octostudio-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: octostudio-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 4.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.5 Darwin/22.5.0

File hashes

Hashes for octostudio-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 55e0eb44e24752dd217689bb2472b259e1c03e8e49b8ee5d8417ec36ba7311fe
MD5 62f91d030974624db9d2b2acf8343265
BLAKE2b-256 6c6e3799c91fe154349df3e7606d602d04087663d44baa37c4fed72cd92ac953

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page