Releases: evil-mad/robopaint
v2.1.0 bugfix release
Our final release of latest v2 experimental features and bugfixes and the first in a line of a hopefully much faster release cycle! 🚧 🥇
Important note for Mac users:
Download and unzip RoboPaint_Mac_v210-B.zip. After unzipping, move RoboPaint.app to /Applications before launching it for the first time. If you do not, you will get an error. (You can type ⌘-⇧-A in the Finder on the Mac to open your /Applications folder.)
New User Features: 👤 👍
- None directly, but it's still highly recommended that all users upgrade to this version simply for bugfixes and decreased CPU usage.
Bugfixes:
- Printing a lot from windows was basically impossible without errors, but now works wonderfully
- Disconnect detection was broken for a few versions, but should now be working again.
- Fixed a bunch of legacy translation and settings code to better conform with cross-os path standards.
Dev Updates/Additions:
- Electron from 1.0.2 to 1.6.10 (Lots of breaking change updates go along with this)
- Allows for per mode reloads with preload scripts, among other innumerable bugfixes and speed improvements.
- Root jQuery 2.2.3 to 3.2.1, paper.js 0.9.25 to 0.11.3, qTip2 2.2.0 to 3.03
- Includes jQuery migrate legacy plugin for older code (in edit mode, etc).
- Devtron: for advanced debugging!
- Winston: For advanced logging! See readme for more info and log file locations.
- Pen defaults for machines with assumed pen only now work better, and "auto display size" works as expected with this.
- Dev
npm run rebuild
added for serialport build upgrades in the future. - Global startup error catch expanded, and now you can copy the error on screen for reference (couldn't do that at all before!).
Known issues:
- Logging is somewhat hacky and does not capture everything that's logged, just most of it for known (and a few unknown) logging situations. Should work for now, but need to ensure that common error prone code logs more of its important data or errors.
- Due to recent changes to improve smoothness/timing for sending serial commands, the virtualization in "simulation mode" with no bot attached no longer correctly times movements or other commands, so they're executed basically instantly. This will hopefully be fixed with the next iteration.
Credits: 🎈
Helpers @docprofsky & @rogerfachini stuck it out and helped debug and code review this release! Thank you! 🎉
v2.0.0 Beta 3 testing and preview release
Our third preview release to help find bugs and test incredible new features! 🪲 🚧
Bugfixes: 🐛🔨
- #280: Remove option for node runner from settings. This was causing problems for users without node installed.
- evil-mad/robopaint-mode-edit@2e38709; Fix file API
- #274: Add necessary files for Ubuntu Dash to find the RoboPaint binary.
New Dev Features: 😈 👍
- Use npm to build node-serialport automatically if you are using an architecture without a prebuilt node-serialport binary
Known issues: 🪲
- Due to recent changes to improve smoothness/timing for sending serial commands, the virtualization in "simulation mode" with no bot attached no longer correctly times movements or other commands, so they're executed basically instantly. This will hopefully be fixed with the next iteration.
- #275; Some SVGs render as all black, this is being looked into and is high priority for next release.
- Some SVGs don't parse well and will simply stop rendering for printing. We recommend if this is encountered, let us know in our Gitter chat room and provide the file and we'll try to classify it. Aside from that, if you can for you drawing turn off fill occlusion in settings, it may help.
- The Spiral Paint mode is experimental, and may not work. We ought to have left it disabled by default.
Special note: 🎈
- This is a brand new bugfix snapshot release. It has not been tested as thoroughly as v2.0.0 Beta 2. Please let us know if you encounter anything unexpected, as we work towards our non-beta release.
- Mac users: If you are using a MacOS version prior to 10.12, we recommend that you stick with Beta 2 for the moment.
v2.0.0 Beta 2 testing and preview release
Our second preview release to help find bugs and test incredible new features! 🪲 🚧
New User Features: 👤 👍
- Using the latest CNC Server v2.6 with big performance improvements and a major refactor that allows for multi-core threading and immediate printing with few hiccups, lag or slowdowns for very large projects. No more waiting for streaming.
- #252, #266: Replace all mode management of SVG data with an incredibly useful global history feature, for any modes that support SVG import/export.
- #267: Brand new offset fill for more complete algorithmic fills.
- #137: External server support: Most of the UI portion of connecting to remote servers works! Allowing you the option to connect to externally hosted robots via RoboPaint on a computer, or CNC Server on a RaspberryPi. This dos not yet select the same bot as is being used by the remote server, but control and queuing does work as expected. When starting the app without a bot connected, select "External Server" and enter the IP and port of your computer running RoboPaint/CNC Server.
- Support for both Debian and Redhat Linux Packages! Now standard we support the RPM and DEB package format. These are new so let us know if there are any issues.
Bugfixes: 🐛🔨
- #253: Background (minimized) performance issue on OS X
- #265, #262: Fixes multiple tracing problems with complex and nested compound paths
- 66aaa15: Hide quick load/history menu on external/mode focus
- #269: Switch to math based conversion for spiral shape fill, and speed up smaller single center fills
- cafc402: Catch errors on bad input paths during flatten
New Dev Features: 😈 👍
- d801da5: Pen power setting for EBB
- Upgrade to Electron 1.0.2, PaperJS 0.9.25, Serialport 4.x
- Far easier dev setup with top 4 OS/arch installs working immediately after
npm install
, and runs withnpm start
- Single repo release builds via
./build npm start
(still needs documentation) - Catch errors before app init (catches problems with native module mismatches, etc.).
Known issues: 🪲
- Due to recent changes to improve smoothness/timing for sending serial commands, the virtualization in "simulation mode" with no bot attached no longer correctly times movements or other commands, so they're executed basically instantly. This will hopefully be fixed with the next iteration.
- Some SVGs render as all black, this is being looked into and is high priority for next release.
- Some SVGs don't parse well and will simply stop rendering for printing. We recommend if this is encountered, let us know in our Gitter chat room and provide the file and we'll try to classify it. Aside from that, if you can for you drawing turn off fill occlusion in settings, it may help.
Credits: 🎈
Lots of work by teen helper @docprofsky in this release, some real problems worked through and improved, not to mention features tested and bugs squashed. Great job! 🍰 🎉
v2.0.0-Beta.1 testing and preview release
Official preview release to help find bugs, adds lots of news systems, and provides support for Mac OS X El Capitan.
New Features
- Modes are now externally hosted applications pulled from the incredibly popular NPM system. With this externalization, a strong Mode API was required that would allow common operations to be shared easily, and so it has been made for all current modes and a few new ones.
- Electron and new mode system is far faster and more stable, with fewer random fill/stroking issues, not to mention the ability to print far more difficult and complicated art.
- Electron and mode architecture are multiprocessor by default and their best to be efficient and keep their own work separate, ensuring a smooth experience.
- Experimental SVG HersheyText rendering mode for creating text completely revamped
- All paths to be taken by the bot are drawn on a preview layer above the image in the given color they're going to be drawn in gives you a clear idea of what will be done, and allows for an algorithm to choose the fastest path from each path end to the next, allowing for vastly more efficient image recreation.
- Brand new larger, cleaner settings menu
- #231: Interactive home screen mode exploration/info screen
- #227: Remote Print queue management is now a full fledged mode! Though the API is always available, enable the mode interface in Settings>Modes
- Three types of zig-zag line fills, and throwback "spiral fill" mode.
- Loads of customization options for fill/stroke parameters including resolution, occlusion, trace speed, and tons more.
- Basic "global height setting" for simple pen/brush calibration so modes don't have to do the legwork.
- Global event/status display with progress indicator.
Known Issues
- The spiral fill type has spacing/resolution support, but still uses the old "very large spiral", so it can die easily if the resolution is set low enough on a large shape. This has not been given priority, so the feature may not make it out of beta.
- Manual paint mode, which used to be a bastion of all the features removed from original auto paint mode, has been demoted for the time being as it needs direction and UI cleanup, and most of its functionality doesn't directly make sense any more or has been moved to the global settings menu.
This beta release is just a taste of things to come. We've paved the way for so many great features that the future is bright, and great are coming just around the corner.
RoboPaint v0.9.5
First release of 2015, a feature release, working our way up to 1.0.0!
Fixes
- #166 - Minor fixes to the settings form, also revamped a bit for translations.
Features
- #129 - Translations! - A work in progress for more than a year, we've finally "completed" all the ground work and initial (machine) translations for all modes, messages and interface elements for 11 supported languages:
- r العربية (Arabic)
- বাঙালি (Bengali)
- US English
- Español (Spanish)
- हिंदी (Hindi)
- Français (French)
- Deutsch (German)
- Português (Portugese)
- Pусский (Russian)
- اردو (Urdu)
- 简体字 (Simplified Chinese)
- #89 - Can now support painting with water from SVGs using transparency. Any layer/fill/stroke in your SVG with less than 100% opacity will be painted as water from the bottom (cleanest) reservoir.
- #203 - Mac OSX builds are now x64 by default. So says our research, this should allow better memory management and speed, though if you can't run it (<2007 Mac running 32bit), speak up on that ticket and let us know.
Upcoming
- EggBot support - Though scheduled for this release, it got too big for its own good and has been pushed off to 0.9.7
- Lots more, check the milestone for a full list.
RoboPaint v0.9.3
What's this?? Yet another bugfix release! This surprise release was made as we found some tricky issues on new CNCServer functionality surrounding Scratch/Snap support that we're certainly happy to get in.
Fixes
- techninja/cncserver#58 Fixed action beyond edges of the canvas: Now when drawing to/past the edge, brush/pen will lift, then will return once position is back on the canvas. This works naturally across all interfaces natively and seems to mesh well with existing functionality.
Features
- Though slated for the 0.9.5 release, we're letting these translation additions out early:
- #181 @rogerfachini's hard work for translating color names and their information. Also thanks to @RI0 for contributing various fixes and translations for this and others.
- #195 @docprofsky's hard work on an automated script to build out initial translations for the UN's top Languages, so we now have main settings and colorset translations for العربية (Arabic), বাঙালি (Bengali), हिंदी (Hindi), Français (French), Deutsch (German), Português (Portugese), Pусский (Russian), اردو (Urdu) & 简体字 (Simplified Chinese)!
- We're unfortunately missing complete right-to-left reading language support, and translations for modes, though they both be coming soon.
- More to come in the 0.9.5 feature release (now moved to January 5th, 2015). Suggest a new feature on the issues page, or comment on an existing one and let us know what you think!
🚧 🎅 🔨 🌏
RoboPaint v0.9.2
Another bugfix 🪲🔨 release, and likely the most stable till our next feature release, 0.9.5. due out in December.
Fixes
- #184 Remote print mode was broken by a few recent additions, now fixed.
- #182 A small addition added all the problems. This is the reason the 0.9.1 release was removed and is now fully fixed here.
- #131 An Old bug, second saves from edit mode on error now get reset and continue to provide error notification.
- #133 Marked for this release (though fixed in the last release), ensures better compatibility when converting various shapes into paths. SVG has a number of shape primitives, but they're all converted into
<path>
s before printing as we use DOM native path tracing functions. - #183 Fixed the position of the globe, by @docprofsky
- Fixed a number of issues for the Windows installer (now clears out install dir before copying files in), also added rudimentary translations for Spanish and French to the installer!
Features
- Packaged with this release, CNCServer brings new auto-inking feature and hopefully the last of the Scratch API features required before the official announcement and support of the Scratch/Snap programming feature. 😺
- More to come in the 0.9.5 feature release. Suggest a new feature on the issues page, or comment on an existing one and let us know what you think!
🚧 🐛 😖 🍗
RoboPaint v0.9.1
A quick turnaround bugfix release from "the big one", 0.9.0.
EDIT: This release had some bad issues, so the binaries have been pulled and we simply reccomend everyone use 0.9.2, or 0.9.0. Thank you 😺
Fixes
- #100 Adjust Auto-color rules when dealing with transparent objects (and retain stroke-width for converted paths)
- #121 Pencil tool draw position to bottom left corner
- #158 Fix Misaligned home screen buttons
- 924c221 From @rogerfachini, fixed Bold "markdown" parsing in settings pages
- 5531e31 Adjusted formatting in settings pages with non-english translations
- 0944b6e From @docprofsky, live updates for servo height in setting pages
Features
- e79f1c0 From @docprofsky, a welcome dev script for helping build serialport for node-webkit
- #177 - From @RI0 & @docprofsky, a French translation. Thank you!. We'll be getting actual mode translations soon.
- More to come in the 0.9.5 feature release. Suggest a new feature on the issues page, or comment on an existing one and let us know what you think!
🚧 🐛 🔨 ❤️
RoboPaint v0.9.0(b)
The long delayed 2nd quarter 2014 release is finally here!
LOTS of bug fixes and changes since 0.7.5, so many in fact that we skipped some version numbers!
HOTFIXES
For 0.9.0b, we've got four fixes from stock 0.9.0
- #153 - Park during pause wouldn't work if park was the last command sent
- #??? - Position zeroing wasn't acting properly or working well at all
- #152 - Edit mode fit content failed silently
- #113 - Fix mac menu version string
Fixes
- Ghosts of dead print jobs should no longer occasionally be haunting the program. Report any spooks if you see em.
- Strange line connection problem (most notably showing up on the Mona Lisa) has been fixed. Just missing a piece of logic on the lift/drop cycle for path tracing.
- Various minor developer oriented fixes from our second up-and-coming kid contributor, @docprofsky. Great job! 🍰.
- #5 - At least partially fixed, no longer have the unneeded menu on Mac.
Features
- Scratch support: Now as soon as you turn on RoboPaint, a secondary API will be available on your computer to allow the block based programming languages Scratch & Snap to control your bot! See the WaterColorBlocks repository for more information.
- Absolutely _huge_ new feature: Modes!. These are the standard functionality from RoboPaint modularized into a standard format that allows for relatively simply addition of a new mode of operation to the program. We'll be utilizing this a bunch in upcoming releases, so stay tuned.
- We've also got a number of experimental modes available to be enabled in advanced settings for the perusal of those curious enough to put up with a few bugs.
- Another incredibly gigantic feature: All commands are sent through immediately and queued inside of CNCServer, leading to vastly smoother prints, immediate updates on exact bot position, realtime buffer status updates, and advanced pause, move and resume control (pause works almost immediately in most cases).
- Because this is such a big change, be on the lookout for new issues around large/complex prints.
- Translation support added: Big thanks to our first outside contributor @rogerfachini for helping get translation and a simple slection UI in. He rocks! 🏆. Currently only supports the settings pages and main home screen (no mode support yet). Only provides a machine translation for Spanish right now, but we hope to expand that soon.
- #70 - Enhanced paint selection and add to existing colorsets from wiki. Still needs custom paint/ink selection options to finish this issue though.
- Bugsnag support: If you have a big bad error because something went wrong, the program will now report back to us and let us know for you! This is a bit of a pilot program to see how things go, hopefully the program will either tell you enough about what's wrong, or we'll find out. Don't be afraid to open an issue or contact us generally if you have problems.
For Developers
- Check the resources/modes folder for some experimental attempts, examples and ideas.
- Some other fun mode creation ideas include:
- Scratch/Snap programming mode
- Para drawing interface output to SVG
- Double pendulum curve follower
Upgrades
- NodeWebkit 0.10.5, brings huge bugfixes, crashlog support and mac menu API.
- New Windows build format without a zip file, so not only is loading is much faster, you can reach right in and start hacking the files if you'd like.
Known Issues
- > 0.7.0 Disconnect detection is still missing a bit, though apparently works for mac. See #127 and the real culprit @ serialport/node-serialport#265 for updates
Sorry it took so long to get this out. This project is wholly a labor of love and as such can only be done in my spare time and on weekends (while helping @makersylvia put together her book!). We're always happy to get more people in to help out, drop me a line or a pull request anytime and I'd love to work with you. :)
RoboPaint v0.7.5
First release for 2014
LOTS of bug fixes and changes since December, reading all about em below highly recommended.
Fixes
- Bugs, bugs and more bugs. Did I mention bugs? Lots of little ones
- b39b55d - Don't allow dragging of random objects.
- 287d817 - Fix the broken help link
- Fixed various draw timing issues with CNC Server that would cause drawings to speed through while the bot plodded along, specifically through techninja/cncserver@36f5008
- d6e0ee1 - Saving from edit mode should be a bit nicer in terms of file output, though this needs a bit of testing.
Features
- #19 - Giant new feature!! RoboPaint API, extending the CNC Server API, allows for high level operations like sending entire SVG images to be queued and printed entirely automatically. Example client-side application to come.
- #68 - Adds a cancel button to autopaint and manual mode.
- #107 - Cleanup up the example pictures a bit. (We'll gladly accept awesome contributions from the community as well!)
- bf97cb5 - Leaving painting mode will now automatically park and clear the CNC Server buffer
Experimental
- 38ff806 - Dancing/Marching ants selection marquee for paths in manual mode
- #128 - Support for other robots! This pulls in a listing of CNC Server supported bot types and applies the known aspect ratio to the canvas, and divines if it's got the toolset capable to paint with. Currently only somewhat supports the EggBot, look for awesome improvements planned in the next release.
For Developers
- All CNC Server and RoboPaint APIs are now CORS compliant, and open! Meaning out of the can, you can write a JS application in the browser and communicate directly with a bot. Better libraries for doing so are on the way :)
- Anyone wishing to dig into the internals, they just got a bit cleaner, with e4fcccd and its kin all the settings code has been broken out and share a common base
robopaint
namespace item. - New CNC Server Buffer API allows for discreet pausing, resuming and clearing of the low level command buffer.
Upgrades
- NodeWebkit 0.8.5, brings bugfixes and backports from 0.9.x
- Loads much faster in general... though I didn't use my stopwatch so.. you'll just have to trust me on that one. 😉
Known Issues
- > 0.7.0 Disconnect detection has gone missing! see #127 and the real culprit @ serialport/node-serialport#265
- > 0.7.0 Some lines occasionally don't pick up and put down at the right times.
- New Occasionally after a two minute timeout after cancelling a print job, phantom commands will arrive and move the bot around. Very odd.
- New Saving once, and then saving again with the same filename in edit mode will _not_ actually save anything! Best to switch out of edit mode, then back in and save again. Tracking @ #131
🐙 🌜 🏄 🌛 🐳