Posted November 3, 20213 yr Anyone knows if it is possible to use old EV3 motors and sensors with the Spike Prime hub? Are there adaptors I can buy to do this? I suspect many people have old EV3 sets lying around collecting dust. It would be useful if one can make good use of these old components.
November 3, 20213 yr The position feedback of NXT/EV3 motors is not compatible with SPIKE, so it limits the usefulness of doing this.
November 5, 20213 yr Author Yes, I totally understand the challenge with absolute angular positioning. If the motor is without the absolute angular position functionality, would such an adaptor still be of value? I meant not all use cases require this functionality. A motor is still a very useful building block in any robotic project. Instead of letting them sit them collecting dust, do you think you would use your old EV3 motors in a Spike Prime project if such adaptor exists?
November 5, 20213 yr 34 minutes ago, joeh said: Yes, I totally understand the challenge with absolute angular positioning. It's not a matter of absolut positioning, but of rotation feedback in general. 36 minutes ago, joeh said: do you think you would use your old EV3 motors in a Spike Prime project if such adaptor exists? That could be useful, but nor for me.
November 7, 20213 yr Author @Lok24 I meant that because the EV3 motors (running on EV3 hub) can be controlled to turn by specified angle relative to the original position, it should theoretically be possible to make the same functionality work with Spike Prime, using some extra hardware (a microcontroller) for signal translations. And of course, such adaptor would only make sense if it can be made cheap. You said "not for me", do you mind to give some insight to why you would not use EV3 motors with your Spike Prime projects?
November 8, 20213 yr 18 hours ago, joeh said: You said "not for me", do you mind to give some insight to why you would not use EV3 motors with your Spike Prime projects? Sure, I have no Spike prime, that's all. 16 hours ago, Tcm0 said: How does the EV3 measure rotations? Don't know, but it does.
November 8, 20213 yr I think the EV3 motors use a double encoder to count rotations. It is not impossible to make an adapter so the EV3/NXT servo motor looks like one of the supported motors to SPIKE. It won't be as simple as an adapter to use your collection of Power Function train motors with the Powered UP city hub. EV3 sensors use I2C serial communication. You can probably use an Arduino as an in-between device interface. Happy hacking.
November 8, 20213 yr 7 hours ago, dr_spock said: I think the EV3 motors use a double encoder to count rotations. It is not impossible to make an adapter so the EV3/NXT servo motor looks like one of the supported motors to SPIKE. It won't be as simple as an adapter to use your collection of Power Function train motors with the Powered UP city hub. EV3 sensors use I2C serial communication. You can probably use an Arduino as an in-between device interface. Happy hacking. Actually EV3 sensors use a pre version of the powered up UART protocol. That's the reason why mindsensors can sell a PUP to EV3 sensor adapter for around 10USD (http://www.mindsensors.com/ev3-and-nxt/222-spike-prime-sensor-adapter-for-ev3). The NXT sensors use I2C and EV3 can use it for backwards compatibility (but SPIKE can bit bang it, too). But that's only for the sensor ports. How do the motor rotation encoders work? Which protocol do they use?
November 9, 20213 yr Author Here's some information on how EV3/NXT's encoders work: https://www.instructables.com/How-to-use-LEGO-NXT-sensors-and-motors-with-a-non-/?fbclid=IwAR18b73sMFUUppPeNAk4ZgSjChHNpp_9BNi_QKKRPDZono7LyHlPlmFk6GY Look at the paragraphs under "Step 3: The Motor". The EV3 hub has to listen to the inputs from the encoders to interpret the rotation angle changes. For the SPIKE motors, they communicate through UART instead. For EV3: Their official sensors all use UART protocol The motors directly outputs the encoder signals (two of them) for EV3 Hub to interpret. Some 3rd party components use i2c. As far as I know, the lego official ones don't.
November 9, 20213 yr thanks @joeh There is no problem to connect EV3 motors with their full functionally to any hub if you use some kind of adapter. But as a L-PU-motor is available for app 16 € it would be really useful, I fear. The only difference might be the precision of measurement.
May 19, 20222 yr Author On 11/9/2021 at 6:16 AM, Tcm0 said: Actually EV3 sensors use a pre version of the powered up UART protocol. That's the reason why mindsensors can sell a PUP to EV3 sensor adapter for around 10USD (http://www.mindsensors.com/ev3-and-nxt/222-spike-prime-sensor-adapter-for-ev3). The NXT sensors use I2C and EV3 can use it for backwards compatibility (but SPIKE can bit bang it, too). But that's only for the sensor ports. How do the motor rotation encoders work? Which protocol do they use? One major issue with the Mindsensor board is that the old sensors only work with Python and not the scratch based word blocks. Also, because of voltage difference (EV3 runs on 5V, and Spike Prime runs on 3.3V), there is a good chance that you will run into power related issues. Below is a new board that my friend and I worked on that actually do protocol level translation so that the EV3 sensors will be recognized as Spike Prime sensors. This allows you to program your EV3 sensor in Word Block. The board is powered by an ESP8266 MCU. As such, even EV3 motors work with this board. https://www.qikeasy.com/
May 19, 20222 yr 8 hours ago, joeh said: ... do protocol level translation so that the EV3 sensors will be recognized as Spike Prime sensors. ... The board is powered by an ESP8266 MCU. As such, even EV3 motors work with this board. https://www.qikeasy.com/ Hello, Inreresting module. But I can not see the 6pin Cable to the HUB with its connector. What does you use here and why is it not visible ? What was the reason to use an ESP8266 ? For what does you need WLAN/WIFI ? What happens if you plug in NXT Sensors/Motor ? How did you translate the EV3 UART IDs to PoweredUp-ID numbers ? You also listed the analog EV3 Touch Sensors. How ist it reported to the Hub ? How is translated the IR-Sensor to the Hub ? Jo
May 20, 20222 yr Author 10 hours ago, BrickTronic said: Hello, Inreresting module. But I can not see the 6pin Cable to the HUB with its connector. What does you use here and why is it not visible ? >>> For the Spike Prime side, we use a cable like this one (with the flat male 6 pin plug on both sides) : https://www.aliexpress.com/item/1005003198409991.html?spm=a2g0o.detail.1000060.1.1fa34a2axpw9bs&gps-id=pcDetailBottomMoreThisSeller&scm=1007.13339.274681.0&scm_id=1007.13339.274681.0&scm-url=1007.13339.274681.0&pvid=da3cca25-ddd9-400e-9637-6ca4997c451c&_t=gps-id:pcDetailBottomMoreThisSeller,scm-url:1007.13339.274681.0,pvid:da3cca25-ddd9-400e-9637-6ca4997c451c,tpp_buckets:668%232846%238112%231997&pdp_ext_f=%7B%22sku_id%22%3A%2212000024620730009%22%2C%22sceneId%22%3A%223339%22%7D&pdp_pi=-1%3B104.27%3B-1%3B-1%40salePrice%3BHKD%3Brecommend-recommend What was the reason to use an ESP8266 ? >>> Reasons: cost, processing power, familiarity. For what does you need WLAN/WIFI ? >>> For now, Wifi is only used for "Over The Air" firmware updates What happens if you plug in NXT Sensors/Motor ? >>> For now, it is only designed to support EV3 sensors and motors. NXT ones will definitely not work, as the firmware in fact recognizes each known EV3 device, and does protocol level translation to emulate new Spike Prime device. For unknown devices, the adapter will perform any emulation. Having said that, if there is enough demand for it, it is possible to add support for NXT devices in the future. However, at this point, we are not keen in supporting these, as the NXT platform is 15 years. How did you translate the EV3 UART IDs to PoweredUp-ID numbers ? >>> In the MCU processing, there are in fact two different threads running. One side emulates the EV3 hub to work with EV3 device. The other side will emulate a Spike Prime device (with the equivalent ID) to work with the spike prime hub. You also listed the analog EV3 Touch Sensors. How ist it reported to the Hub ? >>> It emulates a Spike Prime Pressure force sensor. How is translated the IR-Sensor to the Hub ? >>> It emulates a Spike Prime Color Sensor. See here for details: https://www.qikeasy.com/infrared-sensor/
May 20, 20222 yr What are the costs? Cable included? Is it cheaper than a new RI-Motor (which has more options)? What Device IDs are used? The shop on the website is empty?
May 20, 20222 yr 6 hours ago, joeh said: >>> In the MCU processing, there are in fact two different threads running. One side emulates the EV3 hub to work with EV3 device. The other side will emulate a Spike Prime device (with the equivalent ID) to work with the spike prime hub. >>> It emulates a Spike Prime Pressure force sensor. >>> It emulates a Spike Prime Color Sensor. See here for details: https://www.qikeasy.com/infrared-sensor/ Hello, Is it possible to publish more Datails on this emulation ? I've tried to bring this into the following unconfirmed Table : EV3 : emulated Spike/Inventor Devive UART ID Mode Device UART ID Mode Remark Touch analog - Touch 0x3F tbd Mode 0x00 to 0x06, maybe 0x01 used ? Color 0x1D 0x00 Reflect Color 0x3D tbd Mode 0x00 to 0x09, maybe Mode 0x01 ? 0x01 Ambient tbd Mode 0x00 to 0x09, maybe Mode 0x02 ? 0x02 Color tbd Mode 0x00 to 0x09, maybe Mode 0x00 ? 0x03 Ref-Raw tbd 0x04 RGB-Raw tbd 0x05 Col-Cal tbd IR-Seeker 0x21 0x00 Prox Color 0x3D tbd 0x01 Seek tbd 0x02 Remote tbd Mode 0x00 to 0x09, maybe Mode 0x02 ? 0x03 Remote-A tbd 0x04 Seek-Alternate tbd 0x05 IR-Cal tbd Ultrasonic 0x1E 0x00 Cont Dist cm Ultrasonic 0x3D tbd Mode 0x00 to 0x08, maybe Mode 0x00 or 0x01 ? 0x01 Cont Dist Inch tbd 0x02 Listen tbd Mode 0x00 to 0x08, maybe Mode 0x03 ? 0x03 Single Dist cm tbd Mode 0x00 to 0x08, maybe Mode 0x02 ? 0x04 Single Dist Inch tbd 0x05 Cont Dist cm Alt tbd 0x06 Cont Dist Inch Alt tbd Gyro 0x20 0x00 Gyro-Angle Ultrasonic 0x3D tbd 0x01 Gyro-Rate tbd 0x02 Fast-Raw tbd 0x03 Gyro-Rate&Angle tbd Mode 0x00 to 0x08, maybe Mode 0x00, 0x01 or 0x02 ? 0x04 Cal tbd 0x05 Tilt-Rate tbd Mode 0x00 to 0x08, maybe Mode 0x01 ? 0x06 Tilt-Angle tbd Mode 0x00 to 0x08, maybe Mode 0x04 ? Large Motor analog - tbd tbd tbd what Spike-Prime Motor ID used ? 0x30, 0x31, 0x41, 0x4B or 0x4C Medium Motor analog - tbd tbd tbd what Spike-Prime Motor ID used ? 0x30, 0x31, 0x41, 0x4B or 0x4C How Access EV3-Sensor Modes not "translated" ? What is delivered when accessing PoweredUp-Sensor Modes not used for translation ? Jo Edited May 20, 20222 yr by BrickTronic
May 20, 20222 yr Author 4 hours ago, Lok24 said: What are the costs? Cable included? Is it cheaper than a new RI-Motor (which has more options)? What Device IDs are used? The shop on the website is empty? We are in the last phase of finalizing the design of the board. Once we are ready for production, we will put it up on Indiegogo. It sounds like you are very interested in the product, you should subscribe so that you will get notified before our crowdfunding campaign goes live. To get our product at discounted price, you can join the VIP program (the link to join the program will appear after you subscribe). By joining the program, you will be able to get the product at these prices: Buying 1 unit @ US$20 each Buying 2 units @ US$19 each Buying 4 units @ US$17 each Buying 10 units @ US$16 each Cable will be extra. Unfortunately, we couldn't include it in the price, as the cost of the cable is expensive. We will sell the cable at price similar to or lower than what you saw on the AliExpress page. Comparing the cost of the the motor with the cost of the adapter isn't an apple-to-apple comparison. With the motor, you only get one motor. With adapter, you enable multiple types of EV3 devices that you already have (even though each adapter can only power one EV3 device at a time). The emulated device IDs will be exactly the same IDs as the equivalent Spike Prime devices. Regarding details of translation/emulation, that's going to take me a bit of time to prepare the table. I will try to give you something later. How Access EV3-Sensor Modes not "translated" ? For the EV3 modes that are not translated, you won't be able to access them. However, we believe we have translated pretty much all the practically useful modes. So, I don't see that being a problem. If you see that being a problem, I would like to know. What is delivered when accessing PoweredUp-Sensor Modes not used for translation ? ... you would get 0's or some other meaningless values.
May 21, 20222 yr Author @BrickTronic See attached table for device mode mappings performed by our Adapter board. Edited May 21, 20222 yr by joeh
May 22, 20222 yr 22 hours ago, joeh said: @BrickTronic See attached table for device mode mappings performed by our Adapter board. Thanks, Your Table helped a lot to understand. I assume, that EV3 Device communicates with UART "A" of ESP8266 and PoweredUp is connected to an UART "B", right ? But at attached Motor there are the Encoder-Signals on UART "A" and TxD must then also be an Input. A Schematic diagram would be very helpfull to can understand how this is solved (does ESP8266 have a Time- Capture & Compare Funconality also on this UART "A" ? Does this Cap-Com Trigger react also on rising and folling edges ? Or must you do Bit-Bang for this function ? Jo
May 23, 20222 yr Author 22 hours ago, BrickTronic said: Thanks, Your Table helped a lot to understand. I assume, that EV3 Device communicates with UART "A" of ESP8266 and PoweredUp is connected to an UART "B", right ? But at attached Motor there are the Encoder-Signals on UART "A" and TxD must then also be an Input. A Schematic diagram would be very helpfull to can understand how this is solved (does ESP8266 have a Time- Capture & Compare Funconality also on this UART "A" ? Does this Cap-Com Trigger react also on rising and folling edges ? Or must you do Bit-Bang for this function ? Jo Sorry, the details on implementation are proprietary, as disclosing such details to our users would not help them in any way, therefore I can't provide further information.
May 27, 20222 yr Are you also going to support the HiTechnic NXT/EV3 sensors? I have a lot of them and would love to use them with the Spike Hub. I guess there are quite a few people out there who still have some HiTechnic stuff on the shelves. Or provide some kind of SDK where support of additional sensors can be added to the firmware.
June 3, 20222 yr Author At this moment, we are only planning to support EV3 sensors. If it turns out that there is enough demand for supporting NXT sensors, we will consider adding support for them. And when we decide to do so, assuming there is no hardware compatibility issue, it should most likely be just a firmware update in order to support them.
November 15, 20222 yr Author We will be launching our adapter product soon (December 5). It allows you to use your EV3 devices on Spike Prime or Robot Inventor. See https://www.qikeasy.com/ for more details.
December 6, 20222 yr Author The Indiegogo crowdfunding campaign for QikEasy Adapter has launched. Support us at: https://igg.me/at/qikeasy
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.