diff --git a/main-new.html b/main-new.html new file mode 100644 index 0000000..dfcac4f --- /dev/null +++ b/main-new.html @@ -0,0 +1,525 @@ + + + + + + + Pybricks Hub Loader + + + + +
+
+
Pybricks Hub Loader
+
Disconnected
+
+ +
+ Device: none + Max char size: - + Max program: 261512 bytes + Running: no +
+ +
+ + + + + +
+ + main.bin not selected +
+
+
Uses Web Bluetooth; open in Chrome/Edge over HTTPS or localhost.
+
+ +
+
+
+ + +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/main.bin b/main.bin deleted file mode 100644 index 9e9ac35..0000000 Binary files a/main.bin and /dev/null differ diff --git a/main.html b/main.html index 7c8f1b2..d8e45d5 100644 --- a/main.html +++ b/main.html @@ -45,82 +45,131 @@ font-size: 12px; color: #888; } + + #stdinBar { + display: flex; + align-items: center; + margin-top: 12px; + gap: 8px; + } + + #stdinLabel { + font-size: 12px; + color: #e8ff47; + white-space: nowrap; + user-select: none; + min-width: 52px; + } + + #stdinInput { + flex: 1; + background: #111118; + color: #e0e0f0; + border: 1px solid #333; + padding: 6px 10px; + font-family: monospace; + font-size: 13px; + outline: none; + transition: border-color 0.15s; + } + + #stdinInput:focus { + border-color: #e8ff47; + } + + #stdinInput:disabled { + opacity: 0.35; + } + + #sendBtn { + background: #e8ff47; + color: #0a0a0f; + border: none; + padding: 6px 14px; + font-family: monospace; + font-weight: bold; + cursor: pointer; + white-space: nowrap; + } + + #sendBtn:disabled { + opacity: 0.4; + cursor: not-allowed; + } - +
Disconnected
+ +
+ stdin> + + +
+
diff --git a/main.py b/main.py index 723079f..b9b9cb1 100644 --- a/main.py +++ b/main.py @@ -1,8 +1,6 @@ from pybricks.hubs import PrimeHub from pybricks.parameters import Color from pybricks.tools import wait -import micropython - hub = PrimeHub() hub.light.on(Color.RED) wait(100) @@ -15,4 +13,16 @@ print("This is the spike prime hub.") print("\x1b[?PYN;99;hubReady;spike-prime~") # Another test — event 6 (notify), level="info", message="Boot complete" -print("\x1b[?PYN;6;info;Boot complete~") \ No newline at end of file +print("\x1b[?PYN;6;info;Boot complete~") + +while True: + # This will stay here until you send a \n + answer = input("Type something: ") + + # This will now show up in your [stdout] log + print("Hub received:", answer) + + if answer == "stop": + break + +print("--- Program Ended ---") diff --git a/project/bundle.py b/project/bundle.py new file mode 100644 index 0000000..e366a3f --- /dev/null +++ b/project/bundle.py @@ -0,0 +1,11 @@ +# build.py +import asyncio +from pybricksdev.compile import compile_multi_file + +async def main(): + result = await compile_multi_file("main.py", 5) + with open("main.bin", "wb") as f: + f.write(result) + print(f"Written {len(result)} bytes to main.bin") + +asyncio.run(main()) \ No newline at end of file diff --git a/project/imported.py b/project/imported.py new file mode 100644 index 0000000..38e193c --- /dev/null +++ b/project/imported.py @@ -0,0 +1,3 @@ +def foo(): + x = "importing works :D" + print(x) \ No newline at end of file diff --git a/project/main.bin b/project/main.bin new file mode 100644 index 0000000..3a6f9c2 Binary files /dev/null and b/project/main.bin differ diff --git a/project/main.py b/project/main.py new file mode 100644 index 0000000..27d9246 --- /dev/null +++ b/project/main.py @@ -0,0 +1,29 @@ +from pybricks.hubs import PrimeHub +from pybricks.parameters import Color +from pybricks.tools import wait +from imported import foo +hub = PrimeHub() +hub.light.on(Color.RED) +wait(100) + +print("Hello, World!") +print("This is the spike prime hub.") +#print(micropython.mem_info()) + +# Pynamics escape code test — event 99 (custom), name="hubReady", payload="spike-prime" +print("\x1b[?PYN;99;hubReady;spike-prime~") + +# Another test — event 6 (notify), level="info", message="Boot complete" +print("\x1b[?PYN;6;info;Boot complete~") +foo() +while True: + # This will stay here until you send a \n + answer = input("Type something: ") + + # This will now show up in your [stdout] log + print("Hub received:", answer) + + if answer == "stop": + break + +print("--- Program Ended ---")