Skip to content

Commit

Permalink
update readme, clean up
Browse files Browse the repository at this point in the history
  • Loading branch information
jakub-lat committed Feb 15, 2024
1 parent 9131b0b commit eae46ff
Show file tree
Hide file tree
Showing 8 changed files with 28 additions and 5 deletions.
30 changes: 26 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,30 @@
# Memobird App

Unofficial app for Memobird G2 inkless printer.
Unofficial app for Memobird G2 inkless printer

The original app is not working anymore and has been taken down from Play Store, so I decided to make one myself.
Made in [Compose Multiplatform](https://www.jetbrains.com/lp/compose-multiplatform/) because I wanted to check it out (iOS isn't supported yet).
I found a Memobird printer laying around, and it turned out the original app is not working anymore. So, I decided to create the app myself for fun.
Simultaneously I learned Kotlin and [Compose Multiplatform](https://www.jetbrains.com/lp/compose-multiplatform/) from scratch.

Shout out to [LeMinaw/openmemobird](https://github.com/LeMinaw/openmemobird) for providing API "docs".
## How it works
On Android, it uses a [temporary Wi-Fi connection](https://developer.android.com/develop/connectivity/wifi/wifi-bootstrap) to communicate with the printer - iOS isn't supported as for now.
Shout out to [LeMinaw/openmemobird](https://github.com/LeMinaw/openmemobird) for providing Memobird API "docs".

## Screenshots

<p float="left">
<img src="screenshots/text.jpg" width="250" />
<img src="screenshots/image.jpg" width="250" />
<img src="screenshots/qr.jpg" width="250" />
<img src="screenshots/connect.jpg" width="250" />
<img src="screenshots/connected.jpg" width="250" />
</p>

## Known issues
* Sometimes the printer has a buffer overflow when requesting formatted text and prints random chinese characters and JSON
* Image height limit is 384px, only workaround that works is to split the image in parts, but then it produces large gaps.

## TODO
* Option to convert text to image for more flexibility and formatting
* Process images on-device instead of using the [server-side API](server/app.py)
* Add more printing options (e.g. drawings, barcodes, stickers)
* Make it work on iOS
3 changes: 2 additions & 1 deletion composeApp/src/commonMain/kotlin/components/OtherForm.kt
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,13 @@ fun OtherForm(onValueChange: (request: PrintRequest) -> Unit) {
SegmentedButtonItem(
selected = selectedIndex == 1,
onClick = { selectedIndex = 1 },
label = { Text("Something else") },
label = { Text("More") },
)
}
Spacer(Modifier.height(20.dp))
when (selectedIndex) {
0 -> QRCodeForm(onValueChange)
1 -> Text("TODO")
}
}

Expand Down
Binary file added screenshots/connect.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added screenshots/connected.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added screenshots/image.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added screenshots/qr.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added screenshots/text.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit eae46ff

Please sign in to comment.