JJRobots COMMUNITY

Full Version: Cloudless iBoardBot Server (via USB)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I bought an iBoardBot with the intention to leave it running in a shop window, but I definitely do not feel at ease using a not very secured cloud API and a printer that accepts unauthenticated commands from any host in an unsupervised public place. If I were a bored student, I'd probably think it would be funny to send drawings of genitals to all printers connected to the API Smile Another issue is that in some cases you don't actually have an internet connection from where you want to use it.

Therefore I started hacking on a custom iBoardBot server that connects to the robot through serial (USB) connection. It is written in Rust and accepts SVG uploads through a web browser. The SVG processing isn't very feature-complete yet, it only supports simple paths without handling stroke thickness and things like that, but it does support flattening of B├ęzier curves. The server also supports scheduling of erase-redraw cycles, so a single drawing could be erased and re-drawn automatically every 5 minutes or every hour.

Here's the code: https://github.com/dbrgn/iboardbot-web Note that you need to use a different firmware on your robot to use this. It's linked from the README and still a bit hacky (like the original firmware Tongue)

The library that does the conversion from the SVG file to polylines processable by the iBoardBot can be found here: https://github.com/dbrgn/svg2polylines

The intended use case is a Raspberry Pi connected to the printer that is not connected to the internet, but supports connecting through direct WiFi.

If you're interested, feel free to comment here or open issues on Github Smile Any feedback is welcome.
Great job! We will try it. For sure.

We have here, in Edinburgh some iboardbots in public places and yes... people use to draw... "everything" :-D

Thanks!
Yeah, if the drawing is meant to be public, then it's great Smile But if it's used as an advertising platform you want to make sure that nobody else gets access.
Reference URL's