Bliss
Eurobricks Citizen-
Posts
368 -
Joined
-
Last visited
About Bliss

Spam Prevention
-
What is favorite LEGO theme? (we need this info to prevent spam)
Technic
-
Which LEGO set did you recently purchase or build?
None for now
Profile Information
-
Gender
Male
-
Location
Canada
Extra
-
Country
Canada
Recent Profile Visitors
1,796 profile views
-
Thank you very much for your feedback! And I like how FAST the NXT BT communicates with Lego Blockly. I believe we can really use it as a brainless remote I/O device with other I/O devices like Interface A or B in blockly projects all together, and have a very good response time between the motors and sensors... @djm, do not hesitate to report any problems or submit suggestions for improvements.
-
A newcomer device in the newest version of Lego Blockly : SBrick (Which includes SBrick, SBrick +, SBrick Light). See the new category SBrick at the bottom of Lego Blockly Toolbox on the left. It is still under development, and still testing and debugging with the Help of @Ashi Valkoinen. This is also the first non lego device supported . Actually, I usually do not support devices that I don't own. in the exception of Lego Interface A because it is very simple and use a bridge (Cheap Arduino / ESP32 ). So this is a big challenge since I need to rely on someone to make the tests and reports errors etc... Ashi is doing all the tests for me. We're making good progress... I hope this will be usefull to others too...
-
Yes. I used NXT-G to make very basic NXT programs that I uploaded into the NXT brick to test the messaging. And from what I read, BricxCC uses the same FW as the official Lego NXT FW so the Direct Command protocol remains the same. Even the Enhanced NBC/NXC Firmware kept the original Direct Command protocol intact if I understand well.
-
I added in Lego Blockly toolbox, in NXT new category named Messages, the Message WRITE and READ blocks. You can write/read messages of type TEXT or a NUMBER (Floating point) to mailbox of a running program in the NXT. Mailbox are numbered 1 to 10 in the dropdown to fit with NXT-G mailbox numbering but behind the scene, blockly uses 0-9... I tested both Read and Write for both Text and Number. Sometime the NXT does not detect to the MSG blockly sends, sometime it detects just fine... I don't know why. To read or write a number you must check the Number? checkbox otherwise the default is text. To write a number you can write you number in the default text field or use a Math Number block from the Math toolbox category. Here are some examples:
-
Hello Ashi, I found a SBrick protocol document here: https://social.sbrick.com/custom/The_SBrick_BLE_Protocol.pdf I don't know if it is still good and up to date (dated 2020), but I could try to implement some Blockly blocks... I will need someone to test though and if it does not work then at least we would have tried... I'll let you know when I have time to look at this which should be soon... Regards
-
Wow, that is a very cool kit from HiTechnic I've never seen around... And it seems impossible to find on ebay too, at least in north america... That would have made the perfect I2C gizmo to test on Lego Blockly I2C transaction block. Let me know if you happen to test it and need some help or find bugs as it may require some data conversion if rx length > 1 byte... (Analog 10 bit value for ex.). The I2C blockly block returns an array so for more than one return byte, you will probably need to use LIST blocks and Bitwise shift operation. Should you need to use the I2C block to send a command with rx length =0 (no return value to activate outputs for example), you will need to use a set value block to a dummy variable...
-
I didn't notice ;-) Your attic seems to be full of Lego's treasure and old computers... About your NXT brick, do you have the NXT 2.0 set which has a Color sensor? I don't have this color sensor. or maybe @djm has it? I need someone to test this color sensor using first the sensor input mode block and then read values with the Input get value block... Color Full should return a color number: 1: Black 2: Blue 3: Green 4: Yellow 5: Red 6: White Color Red, Green, Blue input types should turn on the LED to that color and the get input value block should return how much of that specific light color is bouncing off a surface. Color None input type will turn OFF the LED. The get input value block should still return the ambiant light intensity... I added a separate block for the Ultrasonic sensor. NO NEED to use the set the sensor mode first (which would be Low Speed 9V, but don't need to set it). The ultrasonic uses what they call the LOW Speed I2C protocol... It appears to work fine but I might try to optimize it a bit... I then read that there are a bunch of Non Lego I2C LS (Low Speed) sensor (Hitech, mindsensor etc) that I do not have in hands... So I added a generic I2C LS Block that you can just input the required Rx lenght field and Tx bytes (you can use the blue flower to add bytes to the tx bytes list). By default, it is configured for the Lego NXT Ultrasonic sensor (I2C address 0x02 and Register 0x42 (dec 66)). You can write you parameter in hex 0x42 and blockly converts them to Decimal automatically. Thank you!
-
And if you look at Annex32 Help documentation, It can do so much more... It can bring a lot more features to an Interface A project... https://www.cicciocb.com/annex32help/V2.9925 https://cicciocb.com/ It supports Serial Comm (2 ports), BLE (Bluetooth Low Energy), PWM, OLED displays, TFT Displays, TouchScreen, IR Tx Rx, MQTT (to interface with your home automation, sky's the limit), ESPNOW to communicate inter-ESP (so many int.A's autonomous program can talk to each others through wifi). Etc... I think some people can play for a while with this ESP32 BASIC on steroids and their INT.A .
-
My opinion, some can still have fun bringing the OLD lego Robotic interfaces to life with modern ways :-) And still be able to use their 4.5V devices in their robotic projects... I'm certainly not into OLD computers, but I really like the old Lego Interfaces... Interface B being one of my prefered one (8 inp, 8 out, it's unique)... (I do not collect though, I have just one int.B) I think there are 3 types of OLD lego Interface A (or B) owners: People that want to play with interface using original lego Softwares and old vintage Computers from the same era. (FUN) People that want to play with their lego interface and do not have those vintage computers but still want to use legacy software. Solution, Emulators and HW Bridge like TC Connect, Arduino, ESP32. (FUN too) People that want to play with their interface with 100% modern computer and extended capabilities of newer programming language. (I find it FUN) I'm definitely more #3 :-) But if I would go to the Brick museum, I would like to see the whole setup from back that time... If I go see exhibits of big lego projects, Train, GBC, I want to see creativity, no matter how the creators manage to reach their goal... I just took a spare ESP32, downloaded the Annex32 Basic FW, Put the IP address of my ESP32 in my browser and boom, I can program GPIO's of the ESP (Int.A outputs/inputs) using BASIC... I hit run, and close my brower window and the BASIC program keeps running on the ESP32 making an Int.A autonomous like an RCX...
-
Yes it is possible, but with AA batteries? I doubt it will survive very long. Especially if you add a screen... When you want to built battery operated devices, you must design the electronic in consequence. Interface A is using old electonic chips that are relatively power hungry for batteries. But still I think it would be interesting to try with some Lipo battery pack and ESP32. Programming directly a real Int.A project on a uController like ESP32 to make the Int.A autonomous like an RCX would be fairly easy as it does not have to deal with any Serial protocol at all. It just reads/writes its GPIO directly which are wired to Int.A connector pins. You could use micropython firmware or just use Arduino IDE to program your ESP32. You could even put the the Annex32 Basic interpreter firmware on the ESP32. ESP32, being wifi, you could program your Int.A project directly from a WEB Page in BASIC language!
-
Apparently Vice can redirect C64 user port to the host PC Serial virtual COM port... So it might be possible to connect Vice C64 emulator running Lego Legacy software to an interface A with an ESP32/Arduino Bit bang bridge. I doubt TC Connect can do Bit Bang protocol as it has its own protocol I think. But @Toastie/ @maehw Arduino bridge, or my Arduino/ESP32 bridge, do the bit bang protocol. I'm saying this but have not tried.