Jump to content

Recommended Posts

Posted (edited)
9 hours ago, Bliss said:

And you forgot the ";" at the end of PORTB = newPINB << 2 in your revised code. ;-)

Damn ... but this was just the cp'd version from the Arduino IDE, just checked. But thank you very much for noticing, will have to edit that post! 

Best wishes
Thorsten

4 hours ago, maehw said:

Have a nice weekend, folks.

You too!!!

And thank you so much for the link - I somehow lost - or its is buried in this thread. Bookmarked now!

Best wishes
Thorsten

Edited by Toastie
Posted (edited)

N/A

 

Edited by Gunners TekZone
  • 4 weeks later...
Posted
On 4/3/2026 at 7:09 AM, maehw said:

As this seems to be referring to the serial/parallel converter: I had slightly modified Toastie's code and pushed it to this git repo on GitHub: https://github.com/maehw/BrickLines/blob/main/hardware/serial2parallel_converter/arduino_sketch/arduino_sketch.ino

Have a nice weekend, folks.

How difficult would be to developp a scratch extension for rcx, interface B and cybermaster support. Ev3 are already supported as scratch extension.

Posted
3 hours ago, amine said:

How difficult would be to developp a scratch extension for rcx, interface B and cybermaster support.

Well, @Bliss has developed a Blockly application, which runs either standalone or in the Chrome web browser. His application, which I highly recommend, supports Interface A, Interface B, RCX, Cybermaster, WeDo 1.0, and sending VLL codes (CodePilot and MicroScout):

This is rather close to scratch, isn't it?

Best
Thorsten 

 

Posted
39 minutes ago, Toastie said:

Well, @Bliss has developed a Blockly application, which runs either standalone or in the Chrome web browser. His application, which I highly recommend, supports Interface A, Interface B, RCX, Cybermaster, WeDo 1.0, and sending VLL codes (CodePilot and MicroScout):

This is rather close to scratch, isn't it?

Best
Thorsten 

 

But can we push that build  inside an official scratch extention ? That could become very popular.

  • 2 weeks later...
Posted (edited)

N/A

Edited by Gunners TekZone
Posted

So it's long bugged me that out of all the LEGO electronics they've ever released, the only one that truly cannot be used on modern computers is the Interface A. All the others (ie. Control Lab, RCX, etc) have hardware compatibility through USB<>serial adapters, just requiring bespoke software to use, but the Interface A has no such option. I've had to mess with Arduinos or hack a cable. So, I thought I'd design a modern "interface board".

I designed a compact board that uses an extremely cheap CH552T micro controller that exposes a USB-C port, a 20-pin IDC connector for the Interface A (so original ribbon cables can be used, or even a replacement ribbon cable), and for the fun of it, two high-powered Infra Red LED's for Power Functions (since that also has no interface, despite a published protocol!)

It exposes a serial interface over USB-C and has a simple protocol to drive the outputs and read inputs, as well as hardware input counting.

It also has two holes spaced and sized for attaching to Technic beams and bricks with pins, so it can be affixed to a MOC.

I plan to release the schematics and firmware when it's finished, though annoyingly this first batch of assembled PCB's I ordered have a hardware bug with I need to resolve first. I had to desolver one of the resistors as it was stuck in bootloader mode. >.<

Here's a video of it running with a Python script on my mac that drives the motors on the Interface A and Power Functions IR receiver.

IMG-3633.avif

IMG-3634.avif

IMG-3635.avif

IMG-3636.avif

Posted

That is absolutely totally cool! 

21 minutes ago, Mr Hobbles said:

I designed a compact board that uses an extremely cheap CH552T micro controller that exposes a USB-C port, a 20-pin IDC connector for the Interface A (so original ribbon cables can be used, or even a replacement ribbon cable),

I am sure you have seen @Bliss Arduino version over at his thread. I made this "controller"

What I like about the LEGO Blockly approach is that I can make Int.A programs without knowing much about all sorts of ports and stuff on a modern computer via USB or BL; would that be possible with your interface as well? Or could it be made compatible with LBlockly?

The other thing is: I find it rather comfortable to having 6 visible LEDs for the outputs and 2 for the inputs on the board, as then I can carry it with me while traveling - no need for any Int.A - for program testing. The inputs are of course TTL only (and thus not good for the 4.5V light change sensor, but certainly for the 4.5V touch sensor).

28 minutes ago, Mr Hobbles said:

two high-powered Infra Red LED's for Power Functions (since that also has no interface, despite a published protocol!)

Well, Cornelius Munz LEGOINO running on an ESP32 has that feature as well - I made this multiple LEGO protocol interface for it:

But it is always nice to having a miniaturized out of the box interface!!!

Wow, new developments for Int.A and other vintage LEGO devices really gain some traction here! Perfect!!!

All the best
Thorsten
 

Posted
1 hour ago, Mr Hobbles said:

So it's long bugged me that out of all the LEGO electronics they've ever released, the only one that truly cannot be used on modern computers is the Interface A. All the others (ie. Control Lab, RCX, etc) have hardware compatibility through USB<>serial adapters, just requiring bespoke software to use, but the Interface A has no such option. I've had to mess with Arduinos or hack a cable. So, I thought I'd design a modern "interface board".

I designed a compact board that uses an extremely cheap CH552T micro controller that exposes a USB-C port, a 20-pin IDC connector for the Interface A (so original ribbon cables can be used, or even a replacement ribbon cable), and for the fun of it, two high-powered Infra Red LED's for Power Functions (since that also has no interface, despite a published protocol!)

It exposes a serial interface over USB-C and has a simple protocol to drive the outputs and read inputs, as well as hardware input counting.

It also has two holes spaced and sized for attaching to Technic beams and bricks with pins, so it can be affixed to a MOC.

I plan to release the schematics and firmware when it's finished, though annoyingly this first batch of assembled PCB's I ordered have a hardware bug with I need to resolve first. I had to desolver one of the resistors as it was stuck in bootloader mode. >.<

Here's a video of it running with a Python script on my mac that drives the motors on the Interface A and Power Functions IR receiver.

IMG-3633.avif

IMG-3634.avif

IMG-3635.avif

IMG-3636.avif

@Mr Hobbles that is nice work.

When it's finished and bug-free, would you be willing to send me one for a review on my Youtube channel "TechnicallyEvan" ... it's entirely devoted to Interface A and the surrounding ecosystem. For example I reviewed the Blocko card there.

 

Posted
29 minutes ago, Toastie said:

I am sure you have seen @Bliss Arduino version over at his thread.

Yeah, in fact I've seen many Arduino takes on it (ie. Jorge Periera did a similar approach a few years ago), but I wanted a single self contained "product" (for lack of a better term) that didn't involve fiddling with wires, soldering, etc. It should just be similar to the original adapter boards - plug and play out of the box.
 

31 minutes ago, Toastie said:

What I like about the LEGO Blockly approach is that I can make Int.A programs without knowing much about all sorts of ports and stuff on a modern computer via USB or BL; would that be possible with your interface as well? Or could it be made compatible with LBlockly?

Sure - if Blockly spoke the protocol that BrickInterface does, it would work seamlessly. I integrated it into BrickLogo a similar way, here's a video:

 

34 minutes ago, Toastie said:

The other thing is: I find it rather comfortable to having 6 visible LEDs for the outputs and 2 for the inputs on the board, as then I can carry it with me while traveling - no need for any Int.A - for program testing. The inputs are of course TTL only (and thus not good for the 4.5V light change sensor, but certainly for the 4.5V touch sensor).
 

That's actually a really good idea, indicator LED's on the board. I like it! I'll add that to the next revision. Unfortunately it takes a while, as I need to design the PCB, then get it manufactured + assembled, so there's a few weeks lead time. And of course there's a minimum order quantity lol (and like I said, annoyingly, this batch had that bootloader defect)

IMG-3651.avif

 

39 minutes ago, Toastie said:

Well, Cornelius Munz LEGOINO running on an ESP32 has that feature as well - I made this multiple LEGO protocol interface for it:

But it is always nice to having a miniaturized out of the box interface!!!

Absolutely, I just wanted a self-contained out-of-the-box ready-to-run "product" with no fiddling. I'm doing nothing new here other than building it all into a productionised designed + manufactured PCB with a nice firmware. (Though, I think combining IR + Interface A is perhaps new!)

 

Posted
2 hours ago, evank said:

@Mr Hobbles that is nice work.

When it's finished and bug-free, would you be willing to send me one for a review on my Youtube channel "TechnicallyEvan" ... it's entirely devoted to Interface A and the surrounding ecosystem. For example I reviewed the Blocko card there.

 

Of course I’ve seen your channel, I loved your video on the universal buggy especially, it fascinated me that Lego targeted that enthusiast market back then without their own interface in the mix! I’ll DM you.

Posted (edited)

N/A

 

Edited by Gunners TekZone
Posted (edited)
3 hours ago, Mr Hobbles said:

Absolutely, I just wanted a self-contained out-of-the-box ready-to-run "product" with no fiddling. I'm doing nothing new here other than building it all into a productionised designed + manufactured PCB with a nice firmware. (Though, I think combining IR + Interface A is perhaps new!)

This is indeed new! And COOL.

Another thought: When you do the next batch, how about designing it with the LEDs arranged such that they "stick out" a bit? So that the board can go into a small ABS box or the like, rather having them surface mounted (or the like) on the board? Plain vanilla 3 or even 5 mm LEDs? 

640x587.jpg

It is very nice and clever to have the bare board attached to a Technic beam, which can be fastened to a build. However, in that case you are in LEGO world and Int.A is probably around as well. When traveling or simply doing program development, a bare board is a bit "exposed" and the Technic beam is not of help. I am enclosing my Arduino boards into a small dead cheap Arduino Uno ABS enclosures. Currently, I just need to do some 8 LED hole drilling and a making a slot for the HC-05 "antenna" (not true, it did not fit into the box :innocent2:). The holes for the 9V and USB_A socket (my UNO is old ;) are already factory done.

These are just ideas!!!

I like this project a lot.

I also downloaded your latest BrickLogo zip file for Win. So glad that this is not some of your node.js miracles, but comes as executable with some other bits around! That is my biggest problem with all your simply >beautiful, elegant, and absolutely cool< node.js projects: It is way over my head. I simply cannot get it going. Yes, of course: If I can't do it, I should be left behind, I know :pir-laugh:

I am so excited that so many new brilliant programs and projects arise around Int.A and other legacy LEGO devices. Int.A wise, for me, it is all @evank's fault!

All the best and thank you so much for sharing!!!
Thorsten  

    

Edited by Toastie
Posted
56 minutes ago, Toastie said:

It is very nice and clever to have the bare board attached to a Technic beam

That's my favorite part of his invention.

57 minutes ago, Toastie said:

for me, it is all @evank's fault!

:devil_laugh:

Posted
1 hour ago, evank said:

That's my favorite part of his invention.

Same here. HiTechnic and other 3rd party companies did it this way back then, even with a (remaining) circle of pre-soldered Cu ring around the hole, maybe for strength or looks (RXC, NXT, etc.). As far as I am aware, they are mostly gone ... at least the custom RCX/NXT sensors are.

Best
Thorsten

Posted (edited)

N/A

Edited by Gunners TekZone
Posted (edited)

N/A

Edited by Gunners TekZone
Posted
9 hours ago, Mr Hobbles said:

if Blockly spoke the protocol that BrickInterface does, it would work seamlessly. I integrated it into BrickLogo a similar way

Very cool little board indeed.

I cannot find any references to Interface A into your BlockLogo: https://github.com/openbrickproject/BrickLogo/tree/main

In your video I see v0.11.2 which correspond to the release...

Did you release or make the Interface A driver public yet?

Posted
15 hours ago, Gunners TekZone said:

Does the IR run separately?   As in just IR, just the cable or both?  In case one doesn't want to blast IR out to unrelated PF devices in the vicinity.

Yes - the serial protocol has separate commands for driving Power Functions and Interface A. Here's a via with me using BrickLogo with a Powered UP bluetooth remote to control a Power Functions motor and an Interface A motor:

 

15 hours ago, Gunners TekZone said:

If you want to sell off a couple of those 1st batch, let me know in DM (I is in Canaderpia).   You don't even need to "fix" them 1st as I can handle a soldering iron (well depending on which end I grab first).

Well I'm still testing, but it seems just removing the resistor (a 30 second job for me) fully fixes the board with one caveat, you can't use the button to put it into bootloader mode, you have to use a pair of tweezers (or a wire) to jump where the resistor was. Of course this isn't something a normal user would do unless they want to replace the firmware, so it probably doesn't matter for most people.

When I'm happy with the firmware I'd be happy to send some of these on at cost (with full assembly + shipping to me these cost around $8 each when ordered 20 at a time) + shipping. Then I can work on revision 2 :D
 

15 hours ago, Toastie said:

When traveling or simply doing program development, a bare board is a bit "exposed" and the Technic beam is not of help. I am enclosing my Arduino boards into a small dead cheap Arduino Uno ABS enclosures.

You could build a case out of Lego, and hold the BrickInterface secure inside it via the two connection points! In fact I might try that next week when I'm back with my Lego!
 

15 hours ago, Toastie said:

I also downloaded your latest BrickLogo zip file for Win. So glad that this is not some of your node.js miracles, but comes as executable with some other bits around! That is my biggest problem with all your simply >beautiful, elegant, and absolutely cool< node.js projects: It is way over my head. I simply cannot get it going. Yes, of course: If I can't do it, I should be left behind, I know :pir-laugh:.     

Hah, well, with BrickLogo I'm trying to emulate the feel of the old Logo interpreters. Also, unlike my other projects which are libraries for use in programming languages, BrickLogo is an application, and I can imagine it being used within education settings. So single binary/no dependencies was essential.

Let me know if you have issues - I must admit that Windows is its least tested platform. I've tested it a bit, but my daily machine is a MacBook, and I mostly test on Raspberry Pi's other than that.
 

9 hours ago, Bliss said:

Very cool little board indeed.

I cannot find any references to Interface A into your BlockLogo: https://github.com/openbrickproject/BrickLogo/tree/main

In your video I see v0.11.2 which correspond to the release...

Did you release or make the Interface A driver public yet?

You're a little quick, I'm still finessing the integration! I'll let you know when I've pushed v0.12.0. I'm still tweaking the protocol on the board. But it'd be awesome if there was a unified protocol that could talk to the Interface A - whether that's BrickInterface or people's custom Arduino builds. Then Blockly, BrickLogo etc could work with them all with no changes.

Posted
7 hours ago, Mr Hobbles said:

You could build a case out of Lego, and hold the BrickInterface secure inside it via the two connection points!

That is true! I did that in the past with my Arduino Nano based interfaces (serial or USB to 8-bit parallel via bit banging). However, as the Nano is so nicely small even with an HC-05 attached, LEGO built cases make is generally a bit bulkier than necessary. Again, I am only talking about my special case carrying these lil' critters around, when away from home.

This is all sooo unbelievably cool :pir-huzzah2:

Best
Thorsten

Posted

I got two legolines BBC 5.25 disks I would like to image them. Can I use a old  PC and 5.25 drive without extra equipment  ?

Posted
On 5/21/2026 at 9:18 PM, Toastie said:

Another thought: When you do the next batch, how about designing it with the LEDs arranged such that they "stick out" a bit? So that the board can go into a small ABS box or the like, rather having them surface mounted (or the like) on the board? Plain vanilla 3 or even 5 mm LEDs? 

Another alternative is to use light pipes in the ABS box that guides the light from the SMD LEDs to the outside of the box.

Conrad (conrad.com) has a good selection of them (lichtleiter).

Posted
6 minutes ago, HaGLa said:

Another alternative is to use light pipes in the ABS box that guides the light from the SMD LEDs to the outside of the box.

Absolutely true! I even used the flexible LEGO "light pipes" to get light around the corner.

Good tip!

Best wishes
Thorsten

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   1 member

×
×
  • Create New...