(apologies if this is the wrong 'folder')
Has anyone had a go at hacking the Fisher Price "Code-a-Pillar"? (here's the Fisher Price product page: http://fisher-price.mattel.com/shop/en- ... llar-dkt39 )
We have one lined up for a Christmas present for our son. Seems like there should be scope to hack it, especially as the individual segments are connected with standard sized USB connectors.
I think an interface for Scratch would make a lot of sense.
A search online only came up with: http://anngadzikowski.com/hack-your-code-a-pillar/
All this does is tell you how to mute the speaker. Yes the demo one in the store was loud (!) and there is no volume control, so I can see this as being a worthy 'hack', although I would probably insert a preset resistor into the circuit instead...
Yes I also know about Fisher Price's Code-a-pillar Android app, but this is just a simplistic game that simulates a virtual Code-a-pillar and as far as I can tell, it doesn't communicate with a real Code-a-pillar.
Would also be interested in co-operating with others on hacking the code-a-pillar, but I'm not yet sure where to start.
Richard Marsden
-
- Posts: 4
- Joined: Fri Nov 18, 2016 3:12 pm
Re: Hacking the Code-a-pillar?
Hi.
We have just got one of these for my 4 y/o, and I am quite interested in hacking it. It uses a standard USB port, but I don't know if it's wired as a USB port or as a proprietary world device.
Logically I can see that the codeapillar head reads a module identifying value from each connected module, then determines the action to take and feeds back a signal to trigger each module in sequence.
Be nice to replace the modules with a pi and controlling from my phone etc
We have just got one of these for my 4 y/o, and I am quite interested in hacking it. It uses a standard USB port, but I don't know if it's wired as a USB port or as a proprietary world device.
Logically I can see that the codeapillar head reads a module identifying value from each connected module, then determines the action to take and feeds back a signal to trigger each module in sequence.
Be nice to replace the modules with a pi and controlling from my phone etc
Re: Hacking the Code-a-pillar?
Yes I was thinking about how it might work, and (to me) it would make sense if it was like a shift register. So the head just queried the first segment, and that queries the next, and so on, so the instructions shift forward towards the head with each "move". There would be global "reset" instruction. Not sure about sound (to be honest I haven't played with ours yet and we deliberately did NOT buy the sound expansion pack lol) - that might be forwarded as a sample or as an instruction ("Play sound #3").
We need someone with a USB sniffer to confirm if it really is a standard USB.
re. controlling it: Yes that is the type of thing I'm thinking of
Richard
We need someone with a USB sniffer to confirm if it really is a standard USB.
re. controlling it: Yes that is the type of thing I'm thinking of
Richard
Re: Hacking the Code-a-pillar?
I doubt it actually uses USB. The way I would do it is have all the smarts in the head, a cheapo micro in the segments. A daisy chained serial link towards the tail and a multi-drop serial line back up. Head sends out a "what are you" request, the first segment replies then sends the "what are you to the" next. The order of received identification bytes lets the head know what order the segments are in.
Even if not that way it would probably be easy to mod it so it was.
Code: Select all
+V -:------------:------------:------------:-
.------. : .-----. : .-----. : .-----. :
| HEAD |----:->| LFT |---:->| RGT |---:->| FWD |---:-
| |<-. : | |-. : | |-. : | |-. :
`------' | : `-----' | : `-----' | : `-----' | :
`-:----------^-:----------^-:----------^-:-
0V -:------------:------------:------------:-
- DougieLawson
- Posts: 40594
- Joined: Sun Jun 16, 2013 11:19 pm
- Location: A small cave in deepest darkest Basingstoke, UK
- Contact: Website Twitter
Re: Hacking the Code-a-pillar?
If you install Wireshark that has a built-in USB sniffer included with the Windows version.winwaed wrote: We need someone with a USB sniffer to confirm if it really is a standard USB.
https://wiki.wireshark.org/CaptureSetup/USB
Any language using left-hand whitespace for syntax is ridiculous
Any DMs sent on Twitter will be answered next month.
Fake doctors - are all on my foes list.
Any requirement to use a crystal ball or mind reading will result in me ignoring your question.
Any DMs sent on Twitter will be answered next month.
Fake doctors - are all on my foes list.
Any requirement to use a crystal ball or mind reading will result in me ignoring your question.
-
- Posts: 4
- Joined: Fri Nov 18, 2016 3:12 pm
Re: Hacking the Code-a-pillar?
I intend (unless someone else gets there first) to split out a USB cable and see if it is wired as a USB. At the very least, to see what volts and power are on which pins.
I would have thought they would conform to USB standards so as to prevent damage when the average product user plugs a USB lead into the port.
I would have thought they would conform to USB standards so as to prevent damage when the average product user plugs a USB lead into the port.
Re: Hacking the Code-a-pillar?
Hello!
I have started to look into how the code a pillar works. It is using a sort of simple 1-wire bus for the communications between the head and the tail blocks. A second wire is used to figure out the order of the blocks on the bus.
I have started to document it and made an Arduino sketch to sniff the bus. It needs some further elaboration and clean-up but I have shared it on Github here: https://github.com/ffleurey/Code-A-Pillar
Cheers,
Franck
I have started to look into how the code a pillar works. It is using a sort of simple 1-wire bus for the communications between the head and the tail blocks. A second wire is used to figure out the order of the blocks on the bus.
I have started to document it and made an Arduino sketch to sniff the bus. It needs some further elaboration and clean-up but I have shared it on Github here: https://github.com/ffleurey/Code-A-Pillar
Cheers,
Franck
-
- Posts: 4
- Joined: Fri Nov 18, 2016 3:12 pm
Re: Hacking the Code-a-pillar?
Great work - you've already got way further than me. I've also had a look at one of the rail innards and came to much the same conclusion. Would love to know what's under the black resin.
Re: Hacking the Code-a-pillar?
I stumbled upon this while looking for support on my sons' Code a Pillar. Think any of you could tell me why it will acknowledge each segment, but wont move after? Makes all the right noises, worked (moved) prior, but now it just shoots red eyes as if it bumped into something before it even attempts to move.
-
- Posts: 4
- Joined: Fri Nov 18, 2016 3:12 pm
Re: Hacking the Code-a-pillar?
If none of the segments functions correctly I would suspect the fault lies with the head unit.
Has it been dropped?
Have you tried new fresh batteries?
Have you tried taking the batteries out and reinserting them?
If none of these things is causing the fault it is probably a faulty pilla.
Has it been dropped?
Have you tried new fresh batteries?
Have you tried taking the batteries out and reinserting them?
If none of these things is causing the fault it is probably a faulty pilla.
Re: Hacking the Code-a-pillar?
I think that is the reaction when it does when it can't move. So I would check to make sure it doesn't work on like a wood floor or berber carpet.
---
---
Re: Hacking the Code-a-pillar?
Franck,
What part of the sequencing is that? I would expect it query looking for the last module. ie if something isn't connected to the last position, then the modules responds with a direction signal, then turns itself off (until it receives a clear bus signal) so the 2nd to last one doesn't know something is connected. Then the main repeats it's query. Now there are 45 degree and 180 turn modules in the more advanced pack so it might be the 90s send 2 45 degree turn signals before turning itself off or they could be entirely different signals.
I am -really- surprised no one has posted a teardown video on youtube for it yet.
What part of the sequencing is that? I would expect it query looking for the last module. ie if something isn't connected to the last position, then the modules responds with a direction signal, then turns itself off (until it receives a clear bus signal) so the 2nd to last one doesn't know something is connected. Then the main repeats it's query. Now there are 45 degree and 180 turn modules in the more advanced pack so it might be the 90s send 2 45 degree turn signals before turning itself off or they could be entirely different signals.
I am -really- surprised no one has posted a teardown video on youtube for it yet.

Re: Hacking the Code-a-pillar?
I've replaced batteries, taken the batteries out and held down the power button while the toggle was in the on position as well.
It only operates on a hard wood surface, has not been dropped, kicked, drop-kicked, punted or thrown (yet).
It acknowledges each pilla when they are connected and verifies they are there. For kicks I put the music one on and just that one. It played for 3 or 4 seconds then the eyes went red/flashing red.. sometimes it makes noise like it's going, but it doesn't move.
My mother grabbed it for my son and now she is sending me the receipt so I can return it. That will stop if I figure out how to fix it in time.
It only operates on a hard wood surface, has not been dropped, kicked, drop-kicked, punted or thrown (yet).
It acknowledges each pilla when they are connected and verifies they are there. For kicks I put the music one on and just that one. It played for 3 or 4 seconds then the eyes went red/flashing red.. sometimes it makes noise like it's going, but it doesn't move.
My mother grabbed it for my son and now she is sending me the receipt so I can return it. That will stop if I figure out how to fix it in time.
Re: Hacking the Code-a-pillar?
Finally have ours unwrapped (btw it works on carpet but can have problems with hollows in the pile - but yes tile or wood would be better)
As expected it is a little advanced for our son, but still interested in hacking it.
Franck: Sounds like you've had the most experience hacking it. I don't have any experience of Arduino, so perhaps I shoud jump in when it comes to software...
Merry Christmas / Happy Holidays!
Richard
As expected it is a little advanced for our son, but still interested in hacking it.
Franck: Sounds like you've had the most experience hacking it. I don't have any experience of Arduino, so perhaps I shoud jump in when it comes to software...
Merry Christmas / Happy Holidays!
Richard
Re: Hacking the Code-a-pillar?
n!ck - This might sound silly, but are you sure it's not switched to demo mode (the behaviour you're describing is what it does when it's demoing).
The power switch should be switched to the solid (filled in) circle, not the hollow circle.
The power switch should be switched to the solid (filled in) circle, not the hollow circle.
Re: Hacking the Code-a-pillar?
ERgates - Ground zero - took it out of demo mode when it came out of the box. Good thinking, but the red lights weren't something I experienced in demo mode. I did however move it back into demo mode where it acknowledged a couple pilla parts, made cool noises as if it were moving, but still no movement. From there I made the following video to show the current symptoms while in the on position.
https://youtu.be/G2A0yim0Xm8
https://youtu.be/G2A0yim0Xm8
Re: Hacking the Code-a-pillar?
Thank you for the video comment. I tried all of what you mentioned today and unfortunately no luck. Printed a return label and shipped it back this afternoon. Thank you all for the help, sorry for the post jacking.
Re: Hacking the Code-a-pillar?
Hello!solanum wrote:Franck,
What part of the sequencing is that? I would expect it query looking for the last module. ie if something isn't connected to the last position, then the modules responds with a direction signal, then turns itself off (until it receives a clear bus signal) so the 2nd to last one doesn't know something is connected. Then the main repeats it's query. Now there are 45 degree and 180 turn modules in the more advanced pack so it might be the 90s send 2 45 degree turn signals before turning itself off or they could be entirely different signals.
I am -really- surprised no one has posted a teardown video on youtube for it yet.
I have posted more info on how it works with some explanations and an Arduino sketch to control the tail. The example is here:
https://github.com/ffleurey/Code-A-Pill ... h-A-Pillar
And more details on the protocol are here:
https://github.com/ffleurey/Code-A-Pill ... ROTOCOL.md
Cheers,
Franck
Re: Hacking the Code-a-pillar?
Hi there.n!ck wrote:Thank you for the video comment. I tried all of what you mentioned today and unfortunately no luck. Printed a return label and shipped it back this afternoon. Thank you all for the help, sorry for the post jacking.
Just an other information, 'cause unassembling the head result in distroying it (Head is glued).
In the "nose" of the pillar head, there is a sensor that detect if the pillar is upside down. The defect illustrated in your video is the same behavior as the one obtain when the pillar is upside down.
If someone wants to disactivate the sensor, just shunt the two green wires
Re: Hacking the Code-a-pillar?
I experienced a Problem with my code a pillar, recognizing the elements but not starting to move.
In my case the Problem was a Brocken wire that connects the USB connector to the Main PCB.
I opend the pillar removing 4 screws first. After removing another two screws (one on each side in the back oft the pillar) i was able to lift the blue plastic element that holds the Main PCB just enough to push out the white plastic thingy that holds the USB connector (did it with a little force). This way I was able to reach the soldering points and diagnosting which wire was Brocken. Then I soldered in another new wire right next to the broken one. Put everything back in place.
Pillar moves again
In my case the Problem was a Brocken wire that connects the USB connector to the Main PCB.
I opend the pillar removing 4 screws first. After removing another two screws (one on each side in the back oft the pillar) i was able to lift the blue plastic element that holds the Main PCB just enough to push out the white plastic thingy that holds the USB connector (did it with a little force). This way I was able to reach the soldering points and diagnosting which wire was Brocken. Then I soldered in another new wire right next to the broken one. Put everything back in place.
Pillar moves again

Re: Hacking the Code-a-pillar?
I know this is late but we just got a pillar. It is doing the same flashing red eyes. Which 2 green wires do I need to shunt? There are 6 in a ribbon that connect at the head end of the board and 2 that connect on the side, below the blue speaker wires. Please help my 4 year old is going nuts.daffyb wrote: ↑Fri Jan 13, 2017 3:09 pmHi there.n!ck wrote:Thank you for the video comment. I tried all of what you mentioned today and unfortunately no luck. Printed a return label and shipped it back this afternoon. Thank you all for the help, sorry for the post jacking.
Just an other information, 'cause unassembling the head result in distroying it (Head is glued).
In the "nose" of the pillar head, there is a sensor that detect if the pillar is upside down. The defect illustrated in your video is the same behavior as the one obtain when the pillar is upside down.
If someone wants to disactivate the sensor, just shunt the two green wires
Re: Hacking the Code-a-pillar?
I know that this post is old, but in case it helps anyone else... It is the ribbon of 2 green wires that you need to shunt, not any of the 6.leete1 wrote: ↑Tue Dec 04, 2018 3:09 amI know this is late but we just got a pillar. It is doing the same flashing red eyes. Which 2 green wires do I need to shunt? There are 6 in a ribbon that connect at the head end of the board and 2 that connect on the side, below the blue speaker wires. Please help my 4 year old is going nuts.daffyb wrote: ↑Fri Jan 13, 2017 3:09 pmHi there.n!ck wrote:Thank you for the video comment. I tried all of what you mentioned today and unfortunately no luck. Printed a return label and shipped it back this afternoon. Thank you all for the help, sorry for the post jacking.
Just an other information, 'cause unassembling the head result in distroying it (Head is glued).
In the "nose" of the pillar head, there is a sensor that detect if the pillar is upside down. The defect illustrated in your video is the same behavior as the one obtain when the pillar is upside down.
If someone wants to disactivate the sensor, just shunt the two green wires