Jump to content
View in the app

A better way to browse. Learn more.

Tinkerunity

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Geschrieben

Hallo Tinkerforge-Fans,

Ich habe das Tabletop-Weather-Station-Kit um den Soundsensor erweitert.
Jetzt möchte ich gerne einen Screenshot machen.
Das LCD-Bricklet hat ja die lcd128x64.read_pixels() Methode, mit Hilfe der das gehen sollte.
Ich habe dazu ein kleines Python-Prgramm geschrieben, es klappt auch soweit, jedoch gibt es unvollständige Screenshots:
Auf dem Startscreen fehlen die Tabs, auf den Graphic-Screen ausserdem die eigentliche Grafik. Es wird offenbar immer nur ein Teil der LCD-Pixel übertragen.

Hier ist mein Code für den Screenshot:

from tabletop_weather_station_demo.tinkerforge.ip_connection import IPConnection, Error
from tabletop_weather_station_demo.tinkerforge.bricklet_lcd_128x64 import BrickletLCD128x64
from tinkerforge.ip_connection import IPConnection, Error
from tinkerforge.bricklet_lcd_128x64 import BrickletLCD128x64
import png 

HOST = "localhost"
PORT = 4223
UID = "H9a"

ipcon = IPConnection()
lcd128x64 = BrickletLCD128x64(UID, ipcon)
ipcon.connect(HOST, PORT)

pixels = lcd128x64.read_pixels(0,0,127,63)
intpixels = [255 if x else 0 for x in pixels]

f = open("lcdimage.png", "wb")
w = png.Writer(128,64, greyscale=True, bitdepth=8, alpha=False)
rows = w.array_scanlines(intpixels)
w.write(f, rows)
f.close()

Hat jemand eine Idee, wieso das so ist und wie einen vollständigen Screenshot anfertigen kann?

Gruß

Karsten

 

startscreen.png

lcdimage.png

Geschrieben

Moin,

Die GUI wird in einem separaten Buffer gezeichnet. Die API des Bricklets hat zur Zeit keine Möglichkeit, den Buffer auszulesen. Ich setze mir mal auf die Liste, dafür eine Funktion einzubauen.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.