Perry_S
USA
Asked
Resolved by DJ Sures!
I have been rethinking this company as they evolve. I see a trend to supporting other hardware platforms which is awesome. I always just associated the software with the EZB project. So as the software morphs and has been doing, what is the best optimum hardware to run it on now? Is it still EZB or Raspberry Pi, or Arduino, or whatever? What if I wanted a really high performance system that ran ARC. What would I use? How far can this be pushed?
Related Hardware EZ-B v4
Guess it depends on how the computer and i/o controller (ezb) are connected. We're working on a Docs section that includes a Getting Started guide that presents a few scenarios based on this question. Meaning, is the computer remotely connecting to the io (ezb) controller via wifi? Or is the computer installed inside the robot and connected to the controller via USB?
The new Docs section should be up by the end of this week. We have two staff working on populating it now - and they'll continue to add content to it over time. The idea is to present more technical details, such as questions like this.
Personally, I've been quite fond of the Up Board because it is so affordable that it's priced similar to the raspberry pi - with 10 times the performance. We're most likely discontinuing the raspberry pi version of the software in the next few weeks.
The EZ-Robot EZ-B v4 is a great controller, but if you're installing a computer in the robot, there isn't much point to the ez-b v4. The only advantage to the ez-b v4 is having connectors directly for servos. The alternative is using any USB servo controller (such as the ssc-32, etc). Having the PC embedded in the robot also means using a real sound card for high quality sound with proper speakers. That's something the ez-b v4 doesn't offer.
There's a number of other things we're working on - such as a new servo animator that Will has been asking for. It allows moving the servos in various algorithms to obtain realistic movements by varying the speed. A few other things is a universal lidar and slam component, so any lidar's can be added. And the aiml2 control. And a few other things... So having a PC inside the robot is going to be very useful.
Oh, and another alternative to the intel up board is the latte panda. It's good to but a little harder to get hold of. Always seems to be out of stock
Hi @DJ,
Just adding my two cents to the discussion.
I am a little disappointed to hear that. When my Latte Panda card died (it is a really fragile little beast), I bought a RPi because it was supported by ARC and I thought it was a great idea to associate ARC, one of the most powerful robotic software, to the most widespread mini computer, with a very active community. I agree that the UpBoard is an interesting and powerful solution, but it is not really the same budget than a RPi (for the same quantity of memory and storage, the UpBoard is twice the price of the Rpi 4) and not really the same positioning (the RPi offers other opportunities outside ARC for robot builders). So I don't think it would be the same "market"But I fully understand what can be the difficulty to maintain two different versions of ARC on the long run and that you have to make strategic choices for Synthiam.
It is just that I liked the idea to have a fully functional ARC software on the Pi (and more globally on Linux platforms)...:)
Personally, I like the ease of the EZB. You can hook up to 24 servos and a cam and off you go for a quick test if need be.
I'd say the EZ-B 4 and the EZ-B IOTiny are the best ones for ARC
Fedebec - the pi version isn’t fully functional either. Many of the skill plugins aren’t compatible with Linux. The difficult part of the pi version is the setup and maintenance effort. Lastly, the CPU on the pi is so slow that it greatly affects the user experience. The up board costs similar to a pi with comparable memory, maybe not the same but it’s similar priced - I also take in count that the up board is 10+ times faster than the pi for a similar price range. Albeit, costing a little more but what you get is superior by a huge factor in performance and experience.
@DJ What are your thoughts on android/ios tablets ? The specs are getting better. Do you have plans to improve the mobile apps to support more features ?
@DJ,
I haven’t posted in a quite a while, Dj I’m a little confused. Are you saying that Ezb v4 or iotiny is no longer needed with the new ARC software?
Thx
@ptp - no plan to progress the mobile version. I'm pushing to break into more advanced robot features. So many people are remote controlling robots with tablets and doing the same thing that we did 5-8 years ago. It's time to progress into more advanced robots with autonomous capabilities incorporating human assistance etc... I'm here to advance the industry. The mobile version of the software is merely to support ez-robot products used by children in school.
@merne - last year in 2018 the software became compatible with arduino and many other controllers. Check the Products -> ARC page for a list of supported controllers. You will find information on this website (synthiam.com) homepage or other product pages for compatible products. Lots of info for you to read Keep you busy for days
Hey DJ sounds like great things are lined up ahead so totally with you on that and I have so many computers and mobile phones/tablets that still running the old Mobile EZ builder,not really worried about any updates there.
Hi @DJ. As someone who is probably slightly more skilled at building robots and using ARC with basic scripting than a 10 year old, I like the ease and simplicity of using the IoTiny and EZ-b. It has plenty of servo connections, can be used with a variety of other modules and works seamlessly with ARC.
In the past 2 weeks, my boys and I built two robots, one is powered by 360servos that can track objects and faces (though, I'm still working on refining the movements of the head servos.) and the other runs with an Hbridge and we'll soon be installing a robot arm on it. Nothing fancy, and all based on the examples you posted on the site. My youngest loves building the robots and my oldest likes using ARC. He's also likes coding games in JAVA and scratch. The software and hardware together has made robot building less frustrating and more rewarding than other types of hardware/software combinations out on the market.
With that being said, I understand the limitations of Iotiny and the allure of these new powerful computers. Robotic autonomy, computer vision, and all the other things that onboard powerful computers can do. I know you are an innovator looking to mover the industry forward. With your push for moving forward, I hope that you don't leave some of us who are eager to learn but require some extra help behind.
I'm very interested in moving to the next level and getting an Up board, but connecting servos, motors, and other peripherals to the board may be more complex for some of us. So, in this next move forward, will you continue to help people through more tutorials, live hacks and other ways of teaching those of us who want to learn for ourselves and others? I hope so, but if your target is the more experienced hobbyist that's fine, but if you could share some thoughts, that would be great. Thank you for all that you do for this community.
Ggr Scott, thank you for sharing that. It means a lot to hear! My team will see it as well as they deserve all the credit. I’ll never stop making ARC easy - be certain of that. I had a conversation with someone today about why robotics needs to be easy in order for the industry to grow. I’ll copy and paste it in a message below in a few minutes. Because I’m on my phone at the moment.
it’ll give you an idea of what I’m working toward.
Why does ARC focus on Windows and not Linux? The OS matters less to me - my outcome is based on providing users with the lowest effort to democratize program robots - meaning, I want to provide the easiest and frictionless process to program a robot. With the cost of up-boards & latte panda priced similar to the pi with the powerhouse of x86 instructions - ARC utilizes the familiarity and h/w of compatibility windows 10
Why does ARC use a byte style protocol vs JSON for EZB communication? Anyone controlling I/O with an expensive xml/json based application protocol definition is not expecting real-time I/O results. Byte defined protocols should always be used for I/O controllers to ensure fast and efficient I/O instructions.
Why is Synthiam trying to make programming robots so easy? i should add that the robot industry is so small right now - and will someday be huge... it’s important we all work together at this point in the industry’s evolution. Otherwise, any company that islands themselves with incompatibility will fall hard and fast when the compatibility of easy things ignites the industry.
The only way we’re going to see robotics prevail is if there’s useful robots that are easy to use. And engineers won’t be creating those robots... creatives will.
Remember when you and I walked through the computer history museum (referencing my friend) - and I said this is the pivotal point for computers? The day the PC moved from the university’s basement to the top floor. That’s the day when engineers lost the direction computer software was going. That’s the day journalists(write) and accountants(VisiCalc) and artists (photoshop) took over. They steered computers into a new market with democratized approaches that everyone could use without a PhD degree.
The longer engineers keep making complicated robot programming tools on complicated OS’ for robots (ie ROS), the longer this industry will remain small and stagnant.
I’ll add another example while my mind is on this track.... Let's talk about the evolution of THE INTERNET
Before Tim Berners Lee defined html, I was introduced to the internet at our local university. You had to go down into the SECOND lower basement into the internet room. All the upstairs computers were macs and windows 3.1 for the creatives. Down in the deep basement under flickering harsh UV lighting were dos and vt100 terminals that connected to a SunOS mainframe with a connection to the internet.
There, you would discover ftp and telnet ip addresses and hostnames from friends. You’d share how to ftp into NASA from a command line and navigate an unknown directory structure to download a pcx image from the voyager spacecraft. Then, you’d transfer that file to a floppy disk and find a windows or dos computer on the second floor to view the image.
You would bring that file home and show your parents or non-computer friends. They’d rejoice in your amazing ability to use this internet thing. Your family members tell stories about how smart you are and how amazing your future is going to be because you can use computers good.
You were cyber punk. You were ultra geek. You were proud to be the biggest nerd.
Hi, it’s 2020 and my mom is now a cyber punk. She can make a webpage to post recipes with wix. She carries access to the internet in her pocket. She has a news feed sending her up the minute real-time news. She can video conference with relatives across oceans using satellite and buried fiber optic cable. She writes electronic mail to friends rather than using old school telephone. In fact, she doesn’t have a telephone line because she’s a cyber punk. In all definition of the world engineers were so proud of in the early 90’s... my mom is more advanced than them today.
The dramatic story has everything to do with robotics. Because this sort of thing happens in every industry - automobile, television, computers, music, home ownership, kitchen appliances, stereos, etc.. Industries need to democratize their technological and engage creatives in order to explode. Robotics will never become an industry worth investing in unless someone makes them easier to program.... That's Synthiam.
What about other companies trying to make robots easy, such as Ubiquity Robotics? The only thing that can make Ubiquity Robotics successful is if they can make the software easier. Hardware is a tough space because China will democratize the price and availability of anything popular - overnight. The price of hardware will continually be driven down. Having grown a hardware company from my basement to 85 countries, I can say that it’s easier and cheaper to design the hardware yourself for mass production. Use a hardware base like Ubuity for early prototype / and hire a low cost overseas designer to build your product with a custom base structure - that aligns with the look and feel and brand of the product. Then, ditch the prototype.
At my last company (ez-robot), we manufactured absolutely everything - from screws to batteries to servos to wires. The whole product was built from raw materials and assembled in a 1,000,000 sqft factory in Shenzhen.
How did we increase our profit margin on hardware? Easy. We designed our own components and stopped buying it from someone else.
Here’s an example - our camera module was using a third party pcb for the first few months of production. Out of time constraint for product launch we needed to make a few exceptions. So, we spent $12 or so on this camera module per robot. We shipped 10,000 units we’ll say. Which meant we spent $120k on cameras out of the $6m revenue.
Before the next batch we made our own camera module. It cost us $4. On another 10,000 batch, we spent $40k vs $120k with a savings of $80k profit! An end-user product company won’t rely on a third party hardware product. No industry has ever proven that model as sustainable.
But, it’s not all darkness my old friend. There’s a lot of revenue to be made in prototype and diy space. The messaging needs to be clear on the customer target / and the usability needs to be accessible. For example - Ubiquity staying the product is easy and uses ROS or some Arduino C++ programming is conflicting. Half of it is easy, the hardware part. The product does nothing to help programming. That is where Synthiam comes in - we make it easy for people to program a robot. Weird right? Because no one else is doing it except us
So, the assumption here with all other robot companies is that the user doesn’t need to make the hardware but does need to learn how to program their own software. Well, anyone who can program their own software in ros can surely screw a few pieces of metal together and attach wheels to make their own base. That sales model doesn’t really make sense. It’s like selling snow to eskimos, as the saying goes. Or lately with our weather, selling snow to Canadians
Anyway - the missing piece for a prototype product such as ubiquity is the software. I’m not in sales, but if I was... I’d tell them to promote the product with ARC and attract a new larger user base.
How large is the ARC user base? Well that’s a good question! Let’s see, how many people know how to program on the planet? 0.001% population. That’s your maximum customer base for ROS or C++ or ubiquity robotics. Maximum meaning, you somehow convince every single programmer to use your thing. That leaves 99.99% of the worlds population left to use other alternatives. This is why ARC has had 2.6 million robot connections in the last year.
So you have an option - make a product for 0.001% population or make something for 99.99% population. shrug Makes sense to me!
I'd just say use the board you like the most.
I love where DJ has taken robotics. The biggest things that held me back in robotics besides time and money were always the programming side. I can do simple programs with Arduino IDE to make things move and read sensors. Basic stuff. Then I dabbled with the RPI and a GERT board to make a machine that custom measured and cut steel strapping for a company I had worked for. I used Python for that project. I tried ROS and it was way over my head. I couldn't even get it installed and running let alone using it with a robot and getting the results I wanted. It wasn't until I found EZ-Robot and the EZ-Bv3 that I began to make exciting things. Robots with advanced capabilities. Then the revolution happened with the EZ-b4 and the possibilities grew. And now with the move to ARC and all the exciting stuff that's planned by Synthiam, I am truly excited. I don't have to waste my time trying to figure out complicated programming systems trying to figure why my robot didn't move forward, was it something I didn't do right with hardware or software. At almost 50 years old my time is more valuable with every passing day lol. WIth ARC you get tangible results with cutting edge robotics. Keep up the good work and never let them hold back you vision for the future. Sorry I kinda went on a tangent.
@Shamon - thanks so much for the kind words. I'll make sure the team sees this as well! Feedback like that is important because it helps validate the direction I am taking the software.
Thanks all for the input and DJ for the deep commentary. My original question was misstated slightly as I meant a controller like EZV4 not the platform that ARC was running on. I didn't interject earlier as I like the direction this thread took instead.
Perry
Anytime - conversations that take organic direction can be fun. I still prefer the EZ-B v4 due to simplicity of use... and I like that it can be configured for USB <-> PC connection if the PC is embedded in the robot. Arduino and others don't have the simplicity of "plug in a servo and it just works". With other Micro PCB's, you have to have add-on boards and it is clunky etc etc
I use the EZ-B v4 for my revelotion robots but for my ez boxbot Im going to use the IOTiny