Thanks Thanks:  31
Likes Likes:  18
Dislikes Dislikes:  0
Page 1 of 16 12311 ... LastLast
Results 1 to 10 of 160
  1. #1
    Super Moderator
    Join Date
    Nov 2016
    Post Thanks / Like

    Building Tomuro's ReCube Circuit.

    The purpose for this detailed series of posts is based on the great works of - = Tomuro and ReCube = -
    ...and to a much lesser degree the practical means any DIY dabbler can accomplish this task.

    ReCube is a cartridge chip resetting tool. The core provided functions will let you refill your depleted Cubify chips.
    Please contact Tomuro directly for the enhanced functionality of his code which is described in detail in the provided ZIP file.
    This is the link to Tomuro's page;
    Click the schematic and land here;
    There is a download link under the full schematic...
    ... site clue; "Skip Ad" upper right hand corner of the page after countdown completes. Your antivirus will light up and the tracking cookie request needs to be denied.
    Tomuro, these sites are painful! Let me know if you would like me to add a more direct link.

    On Tomuro's ReCube page you will find links to download required files to create your own chip resetting tool. The readme file in the root of the ZIP file explains loading ReCube V2 onto your NANO device and how the device operates. Read posts below in case you need to know your NANO is communicating with your PC. My Win10 did not have com ports set to sufficient throughput it seems. The Arduino app discussion below is how I worked out whatever was wrong. Now I have a better chance of getting the NANO loaded using the information and tools provided by Tomuro in the ZIP file.

    Tomuro reminded me in a post that all you need is power and a resistor to use the default "fill cart" function. In this case, you could solder the few wires directly to the NANO and use a USB power source. The LEDs are simply a feedback device and the switch is, after all, just a trigger easily mimicked with a wire. Thank you, Tomuro for this reminder.

    When you fix the included batch file "program.bat" to set your com port, also fix the hex file name that it calls. Also consider adding "pause" and "exit" as lines 2 and 3. Reasons explained in post 11.

    And another small bug; Infinity Rinse is mentioned as a color but not as a material. I did confirm with
    a real cartridge that the material type is "4" by reading it back. I successfully reset my infinity rinse chip to 98 percent.
    This information is simply missing in the docs.

    Build Status:
    These developments can go on forever but sometimes you have to say enough.
    2 proto-boards built and the 4th iteration of the wand.

    The scars are -not- from this project

    The NANO is committed; contacts are reliable; and the overall layout is fantastic!
    See posts below for details on the particulars.

    NANO ReCube terminal operations:

    Success! The Arduino IDE app is sufficient to provide serial communications with the ReCube once the program is loaded.
    Considering that establishing communication with the NANO before hand is, in my book, important enough, below are the steps to validate the NANO and your circuit. If you can upload the test program to the NANO and it functions, the ReCube code should load without issues.

    Quick lite version command set;
    3; read max amount
    4; read material type
    5; read color type
    7; read percentage
    8,<n>; write percentage

    The key will be displayed in the serial communication window (terminal - as we use to call it).

    Try this command; 3; 4; 5; 7; 8,50; 7;[enter]

    Final STL's and .cube3 files for the housing:

    The holes are left small so you can drill them to whatever size screw you have.
    I'm using M2 screws, similar to #2

    Contact detail:


    Ignore my solder comments in the history posts if you got the tools and skill to make a nice strong wind in place.
    The stops will take care of keeping things in their place. 20-22awg solid core copper wire is recommended.

    I now open the floor to questions and comments.

    ==== The history starts here ====

    I have finally picked up the parts I bought a long time ago for this project.
    Notice the two 4.7K resistors that are now parallel to become closer to 2.2K resistors. They're 2.3K on the VOM.
    Always good to buy spares

    I won't try to run it on this breadboard but I found it interesting that this one grid board would do everything.
    There are wires under the Nano as well. Basically, I've made a buss on the top of the breadboard for ground and power, and the chip leads are on the bottom 2 busses. Basically, there are 4 spare circuits. The only thing I couldn't get terminated was the jump for the 1K resistor to the LEDs. However, If I pull unused pins, I could re-purpose those circuits easily.


    Someone check me on the wiring diagram. I'm pretty sure I got it translated properly from Tomuro's latest schematic.

    I'll be soldering the components to the Nano and run flying buss-leads for ground and power.
    Now I can see what the circuit is doing. Two indicator legs and a pull-down operation.

    Lets see if I can get this together in short order.

    Maybe I should find a better switch too

    Wait, I don't need to supply 5 volts do I?
    5V comes through USB!

    Last edited by TommyDee; 02-14-2019 at 04:51 AM.

  2. Likes JasonDeth, semenpopov1 liked this post
  3. #2
    Expert 3D Printer
    Join Date
    Feb 2018
    Post Thanks / Like
    Yep, all the +5v you need comes from the nano - pin 27 (4th from the top righthand corner... )

    We're proud of you for taking this great step, TD!!

    Are any of your chips still attached to cartridges, or are they all loose?
    Last edited by JohnTee; 02-03-2019 at 10:58 PM.

  4. Likes semenpopov1 liked this post
  5. #3
    Super Moderator
    Join Date
    Nov 2016
    Post Thanks / Like
    I've got the chip removal down pat.

    Need some very thin yet compliant tape. Right now, double sticky cellophane tape works fine if you put the tape across the square opening and press the chip in. I'm not counting on that long term. I'm avoiding anything that permanent or aggressively sticky like the white foam tapes that are too thick. (ordered lifetime supply... will see if .016" thick is right)

    Proud of me ??? LOL! Wait 'till you see what I've learned in making DIY PCB's It might be a year or so, but I plan to test this latest finding. I really miss RadShack.

    And a question with similar consideration... do I need to make the bank A pin 4 to bank B pin 2 connection, or is this already done internally? I get a beep from the continuity meter. Just making sure one is not logic ground and one frame ground requiring bonding externally. This would eliminate another jumper wire.

    ...another very EE question - are the light being turned on sequentially? Meaning, if one is on, the other is off?

    Consider moving the LED directly to the Nano and using only one current limiting 1K resistor for both LED's tied to ground.
    Not exactly equivalent, but for this implementation it seems reasonable as long as only one LED will be on at any given time.

    And I do now have a spare Win XP PC to do this with. Risk mitigated.

    This is the wiring diagram I got with the above considerations in mind:


    And as an EE, I know you know what a knot in a wire means... What do you thing the yellow and white color code means?

    - - - - - - - - - -

    Today I went back to the salvage EE store. Got some 1/4W resistors including the proper 2.2K. And some vector boards.
    EDIT I did a quick study on the chip. Turns out that 2.2K is the highest resistance that you want for least parasitic drain. We don't give a hoot about parasitic drain so a lesser value is okay in a pinch. 300 ohms is minimum, 1K is safe according to the NANO spec, but I might limit myself to ~1.6K at the low end. 2.2K is great if you got one laying around

    John, can you confirm my thoughts on the diode resistor merge noted above?
    EDIT The premise for the merged resistor question is wrong. The ReCube does light both LEDs simultaneously when sending the terminal screen to the computer.

    - - - - - - - - - -

    Had a chance to put some time on this today. I opted to jump the ground pins and use the second 1K resistor for this first build.

    This vector board cam out pretty good for the layout.

    The chip lead-wires will come out the top corner holes of the NANO.
    Still need to solder the Nano to the board but this is good progress for me.


    Now to design a little case since I have mounting holes

    Oh Lookee -


    - - - - - - - - - -

    Prototype proved a little more cumbersome than I liked so I made a few tweaks...


    This one is easy to set up and centers on the chip with great visual feedback.
    The fit is solid even though I chose not to index the rotation.
    The edges of the chip's pockets are helping to maintain the orientation.
    I haven't committed the NANO yet because I want to make sure it is functioning properly and establish some level of communication.

    Interjection here - testing the seating the contacts shows the chip is buried enough to solder a wire on the wrapped contacts. Now you can manage exactly where you make contact. Keeping the contact wires further apart means less chance of shorting contacts or pads.
    A file of any kind, including a nail-file, will make quick work of cleaning up snags. I used a 40W archaic iron to do this. Just make sure the wire is relaxed when you heat it. And yes, I use a gel-flux, and yes, I clean up all the flux!

    RED GOES TO SMALL... the wand is flipped.


    Onto the next step guy... and I need help here!

    I plugged the NANO into a Windows 10 computer. The computer finds the device but registers as "unknown".
    Remember, I run bone stock systems and I have no Arduino drivers, libraries or anything else loaded.
    Windows is not offering to install drivers.
    This makes me the perfect test subject as to making sure we cover all basis in this thread.
    Or I could just scream "HELP!". (...and no, I have not power up the NANO in the circuit.)

    When I plug in the NANO, the power LED is on and the "L"-LED flashes slowly... pauses for a brief moment and starts flashing faster, red.
    I suspect that is simply an "I am not communicating yet" message that no handshake has been completed.


    - - - - - - - - - -

    Okay, so this was useful. Skip to around 11 minutes for S/W.

    - - - - - - - - - -




    ...but of course that isn't all there is too it as I find ALL TOO OFTEN!

    I'll have to backtrack but if you get a positive response from the NANO when uploading, more power to you!

    I tried uploading the sketch "bare minimum" to the NANO and got errors that seem to be quite common.
    Changed many settings in tools and got nowhere. The NANO is seen by the computer and the program, and the com port is not ambiguous.
    I confess, I did not compile before uploading my 1st attempt, but somehow I think it did it for me.

    Two thing did occur to me; the programmer went to AVR Dude likely from a different Atmel tool install.
    Selecting Arduino ISP... or whatever seemed to have helped remove errors.
    2nd- I opened the com port tool and found COM7 set to 9600 baud. So I upped that to 112,xxx-whatever.

    I have it set to the older bootloader NANO but I suspect that can be put back to the latest one.
    Update: yes, this NANO has an older bootloader according to the Arduino IDE. It won't upload simple sketches using the newer version.
    But I am writing to it through the Arduino IDE app. Happy camper!

    I was really starting to dread that I had a bootloader problem with the rapid flash. Not the case so far.

    - - - - - - - - - -

    These are the settings I used for Windows 10 within the Arduino IDE app;
    Last edited by TommyDee; 02-12-2019 at 04:18 AM.

  6. #4
    Expert 3D Printer
    Join Date
    Feb 2018
    Post Thanks / Like
    TD, I'm sorry I haven't been engaged, to try to help. We have sort of a small family health crisis (dad in law) going on, so I'm a bit busy.
    Anyway, as best I remember I just followed some instructions from Tomuro's website to get things running.
    My nano's LED does flash like you described, but I think that is just the booting up process.
    I use PuTTY to communicate with the COMx port - for which x changes each time I begin using the ReCube. It stays the same as long as I don't reboot windows.

    You sure are a better designer of gadgets than me!! I like your all-in-one setup.

  7. #5
    Super Moderator
    Join Date
    Nov 2016
    Post Thanks / Like
    Can well relate, John. This is a hobby... and real life still happens. I'll scour Tomuro's site.

    All the best to you and your family through this time!

    - - - - - - - - - -

    This is a work in progress, but this is my first cut at a thru-hole board fabrication.

    My raw board is not something you can easily find. It looks like they were made on a DIY CNC drill press.

    This thru-hole board layout utilizes the .10" x .10" grid of basic vector boards.


    This is the final wiring diagram from this board.

    And if anyone wants some of the bare vector boards, they can be had from .

    - - - - - - - - - -

    board.PNG WORD!

    I like this new layout for a couple of reasons. It's a layout! Couldn't ditch the one jumper without loosing trace width somewhere. Of course I was bound to the board I had on hand. But the layout is .1 x .1 pitch vector board compatible.
    Had trouble with the LED's. Tried to not bury interfaces too close to the NANO. But it should have some rectangular LEDs that fit. I had to sand these down a bit to fit them nicely side buy side. 2x5mm LED would be good.
    Really like the button on the other side now!
    I have several of the corner pins installed to make the NANO mount very solid on this motherboard.

    Do take note of the LED brightness. The green on this is like a festival and the red is lack luster. I know that playing around with the resistors will balance them but be aware. I'll replace these with some benign ones at some point.

    - - - - - - - - - -

    I wasn't too thrilled with the performance of the LEDs I tried to use yesterday.
    This morning I went and got some smaller replacements like the first build (rather than scavenging them from the 1st board).
    These are much more consistent in brightness and they are not overwhelmingly bright like the green LED was.

    All the components on this board, and the board itself came from Surplus Gizmos.
    Switch; 95 cents
    Resistors; 10 cents each
    LEDs; 35 cents each
    Vector board; 50 cents
    Headers came with the NANO but I did get a long single row header for 75 cents.

    Solid wire shown is 22awg solid.
    Overkill, obviously but bare copper wire is readily available from most EE salvage.

    Some glamour shorts:


    and the final layout:


    This is Proto 2; Shall we raffle off Proto 1?

    - - - - - - - - - -

    ...and for those who know how to make their own circuit boards, here is a PDF of the traces at 1:1:

    Attached Files Attached Files
    Last edited by TommyDee; 02-10-2019 at 01:05 AM.

  8. Thanks bolsoncerrado thanked for this post
  9. #6
    Expert 3D Printer
    Join Date
    Feb 2018
    Post Thanks / Like
    We now take time out for a non-announcement...

  10. #7
    Super Moderator
    Join Date
    Nov 2016
    Post Thanks / Like
    Back to the NANO for a moment. Tomuro has replied to my request for information. Yes, I can program the NANO without any interface. But what's more is that Tomuro also suggested that we can make this work with a wire and resistor!

    ...and then I remembered that one of the provided modes is to restore the cartridge in full without any interface!
    You don't need the lights other than to make you feel good! So it is simply a matter of operating the pull-down function of the switch on the 2.2K resistor.

    By extension, that also means that you just need a power source, which can be one of a million offerings for USB power sources.
    Or you can build a power supply solution right on the wand. I'm not going there, but it needed to be put out there.

    Still working on the wand! Got a PETG one printed. Trying to get the contacts to work without soldering. Moving forward!

    - - - - - - - - - -

    Thanks for that important information, John! Seriously more got done today. Here comes another image barrage.

    First, the PETG print is really nice in that it has really nice stiction (yep, real word!)... properties between PETG and the acrylic case in that it helps hold the wand in place with only a little pressure. One thing to keep in mind at this point ...did I create some kind of impedance or inductance coupling that is not compatible with this one-wire device, the chip(?) Okay, small risk but worth noting as I embark on detailing a few relevant build details in the following images. The overall structure is very pliable in PETG, but the PCB makes up for that where it counts by making the unit assembly quite rigid.

    One thing that became obvious to me is the asymmetry of my board. Easily solved. I wanted the NANO centered! Just offset the holes and all good. Being bound by a board form-factor has been a reality in my career far too long now to argue it. Therefore I appreciate your understanding for the asymmetry of this build.

    The second layout also provided better component distribution. Considering this is a "handed" job, having hold-points was important. Having the tactile reference on one side and the visual feedback on the other also proved of great utility. Here is a two-handed interface and a one-handed interface with comments:


    Two handed positive contact using 3 fingers for down-force on the finger pads of the wand and a free finger to operate the push-button.
    Easy viewing of the LED's and little risk of contacting circuit components or lead-wires.
    If you provide a USB power source, one click from here will fill your cartridge!

    But some of you are digital acrobats...


    The land between the two wires is a good place to provide pressure. The rest of the wand will behave nicely with just this one point restrained. The index finger is ready to operate the push-button. This is useful for when, well, you know... you're too busy to put the cartridge down on something

    Next, we need to talk about the contacts. I've tried a number of things to keep from soldering the wires but I came back to it anyway. Overall, it is a great way to "fix" the wires in plastic if you know what you are doing. And if you can make the board, you can make the contacts!

    (pause for effect.... ... . )

    - - - - - - - - - -

    I've enhanced the geometry for forming the wire around the bar and limiting the spillover. Getting a good sharp bend and a solid wind however is more alluding than one would think when first pondering such an undertaking. You can make one good enough, or maginal for that matter, but I'd really rather have a connection that can't screw up. And by screwing up I mean having the most inopportune instance happened at the very most inopportune time. Like a chip permanently erasing itself! And before you say it, I have received a factory cartridge with a blank chip! It happens!

    Okay, so you know I am not opposed to melting a bit of plastic to fix the wire that becomes the contacts. The bar the wires are wrapped around in the 3D printed frame is a sacrificial element. it is a source material for conforming to the wire, not the other way around. The bumps and edges are there to help manage the wind, but the final fixing is when you apply an iron to the copper forcing the wire to relax and the plastic to follow. This last comment is important as any tension on the copper wire will be relieved when you add solder. So make sure the coil is relaxed and wants to be where you put it. If it doesn't come out perfect, you do have a few seconds to correct the final position. I was able to adjust the reach of the contact after adding the parallel contact wire. The images below show what you are after. Be prepared to print a couple of wands just in case. You want to make sure this is to your liking before you commit the motherboard with the two final connections.

    Remember to clean the flux at all solder joints from the assembly when done torturing this thing. Residual flux doesn't stop working just because you ignore it! Rubbing alcohol and a tooth brush is all you need.


    This is what you are after. Up to a millimeter of lift on the flange and a nice parallel contact profile. Note the separation of the actual contact area.


    And the business end. What you are looking at is 3 coils of 22AWG solid strand wire. It measures ~.025" in diameter. Use what you like! All the above notations are applicable. This is simply something I have on hand... lifetime supply no less. This is often known as "telephone wire". But something like Magnet Wire is also an alternative. Epoxy coated wire used in transformer and motor windings. Just remember to strip the epoxy from the business ends of the wire. Do you have some heavy gauge stiff stranded wire? You know, those destroyed battery cables in the garage that have a mind of their own? Perfect salvage candidate for heavier gauge solid core copper strands. The reason I am pushing the heavier gauge copper strands over the whisps of wire supple stranded wire is managing the solder operation. And again, the reason I am pushing the solder operation because it makes for a rigid contact based on spacing and contact area.

    I know I posted about it above, but yes, the contact is being made by a wire soldered to the top of the coils and trimmed. I then take a file to the wire to get a flat contact area and remove any snags. I finished that up with some sandpaper to give the contact some spherical topology. This one has proper reach into the area where the chip resides in the cartridge. With the open visual reference, making proper contact with this type of solution should prove unremarkable.
    But for those who want to remark on indexing... be my quest. You can pick up the notch inside the cartridge to lock rotation and I've added the bridge to the frame to add more material to. My aim is to not have yet another thing in the box with long protrusions. This solution is sleek and elegant, easily stored and reasonably well protected from accidental short circuits with reasonable care. Don't set it down on foil with the USB plugged in!

    - - - - - - - - - -



    The 3D print file utilizes a tapered hole for various screw sizes. I happened to have a bulk of 2 and 2.5mm computer screws. They all have the blue thread lock on them. Not good for plastic threads! Again, I've over-iterated this design as it is. I am happy with the PETG but PLA works just as well. ABS might be a last resort only in that you will be taking a soldering iron to it.

    Somehow this ended up being a classic, almost steampunk solution.

    This link will take you to the STL and a .cube3 file in a zip.
    Feel free to remix the STL into whatever. I have no need to get this up on Thingiverse since it is a unique application.

    The Cube3 file is an Ekocycle-sliced print and converted to Cube3 using an ABS chip set up for 250*C max throughout from the left cartridge. This file will likely work very well with 3rd party ABS as well. For PLA chips, start with the included STL. My settings are simple. No need for almost solid! These types of designs from me are optimized for Cube3 printing profiles.

    Okay, we are ready for programming! Now that I have a motherboard under the NANO, I have functions. I may just have to play with them before committing ReCube to the NANO processor.
    Last edited by TommyDee; 02-10-2019 at 01:40 AM.

  11. #8
    Expert 3D Printer
    Join Date
    Feb 2018
    Post Thanks / Like
    A small suggestion: if the area that holds the contacts could be configured such that they could flex independently (ie, a split between them? separate "arms"?) -- so they were independently compliant to the chip -- you wouldn't have to be as precise about finishing the contact surfaces and/or holding the bracket perfectly level.
    (Just thought I throw that out there since the design is all finished up!)

  12. #9
    Super Moderator
    Join Date
    Nov 2016
    Post Thanks / Like
    Thanks John. The robustness and consistency of a linked connection is useful in this instance. The contacts are two legs of a 3-legged stool. The finger-holds deflect with very little pressure. Filing and/or sanding the contacts planar to the wand face is of little consequence. Keeping contacts where they belong is.

    And if you do use the solder method, you'll be glad they're linked! Nothing a little trimming couldn't take care of after fixing your contacts. With or without solder, heat will help fix your contact material in place. Any pent-up tension in the wire will move the wire and plastic when heated. You can form it while warm. This is another reason to keep the link through fabrication of the contacts.

    ...but I didn't give it much thought

    - - - - - - - - - -

    Here's an Arduino ReCube Shield Tester... Green LED will blink with regularity; 150ms in this code. The Red LED will blink randomly. When you press the Shield's button (the one we added), the Red NANO L-LED will light up while the button remains depressed.

    int val = 1;
    int ledState = HIGH;
    int ledState2 = LOW;
    unsigned long previousMillis = 0;
    const long interval = 150;

    void setup() {
    pinMode(4, INPUT);
    pinMode(5, OUTPUT);
    pinMode(6, OUTPUT);

    void loop() {
    val = digitalRead(4);
    digitalWrite(LED_BUILTIN, val);
    unsigned long currentMillis = millis();
    if (currentMillis - previousMillis >= interval) {
    previousMillis = currentMillis;
    if (ledState == HIGH) {
    ledState = LOW;
    } else {
    ledState = HIGH;
    if (ledState2 == LOW) {
    ledState2 = HIGH;
    } else {
    ledState2 = random(0, 2);
    digitalWrite(5, ledState);
    digitalWrite(6, ledState2);

    - - - - - - - - - -

    This might belong in the Saga section but I took an interesting side tour. Tomuro updated his schematic to reducing the pull-up resistor value on the one-wire pin. I saw the one-wire Arduino library and noted an entry talking about a 4.7K pull-up being common for one-wire chips (Maxim). Turns out the spec for our chips is in-fact 2.2K -on the high end- ! This can go as low as 300 ohms according to a quick glance of the spec. All the specs seem to be based on 2.2K performance. This is all about minimum parasitic power to the string of chips being monitored. We would well be safe with another common value for the 2.2K resistor in the 1.6-1.8K range. You have to drop below 1K to start risking over-current conditions on other I/O so I feel safe in suggesting this.

    - - - - - - - - - -

    Okay, to continue. I've been reading Tomuro's ReadMe and it just doesn't get any easier... I mean, this is Greek!

    I have the Arduino IDE installled on Windows 10.

    Readme 1.) What stuff is. What is the difference between the two hex files? In the instructions and the batch file, they both call for the non-bootloader version of the hex file. Is there any advantage of the second file if I'm using the Arduino IDE app? Remember that my NANO has to use the "older bootloader" option in the Arduino IDE. Does the bootloader version still load via USB?
    Don't worry about bootloader version if you don't need it.

    Readme 2.) Way cool. And 100% charge is all that I will be able to try at this point because the rest is even more cryptic. Obviously, I don't want 100% chips for my Cubes since they will fail using USB sticks for transfers.
    100% works perfectly with the button and a USB battery.

    Readme 3.) Doesn't the Arduino IDE have a serial console to communicate with the NANO? Do I need to install yet another app? Okay, here is where this whole thing falls down for me.
    Arduino IDE serial monitor works fine.

    Readme 4.) My COM port is 7, easy enough. But my comport baud rate is 115200. Do I need to adjust that before programming? Should i fix the BAT file to reflect 115200? I can see how the BAT file and the Readme command line are different in folder pointers. Sigh!
    The Baud Rate at 57600 worked fine without changes to my com port configuration.

    Readme 5.) I want to get there!
    See 6

    Readme 6. And I want to get to here too!
    Email sent

    HELP! I need the simplest and most streamlined means to make this work for me and still have query access via a terminal. ...and I suspect -many- others want the very same.
    I didn't blow anything up and no smoke was released from any of the smoke-filled devices. Cringing not-withstanding.
    Last edited by TommyDee; 02-11-2019 at 09:16 PM.

  13. #10
    Regular 3D Printer
    Join Date
    Jan 2017
    Post Thanks / Like
    Wow interesting post, as I have not seen it before to me that I love the electronics!
    I mounted it and it works perfectly, just that it does not let me change the material or the color, do you know where is the full version?



Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts