I recently had the chance to visit Belgrade and take part in the Hackaday | Belgrade conference. Whenever I travel, I like to make some extra field trips to explore the area. This Serbian trip included a tour of electronics manufacturing, some excellent museums, and a startup that is weaving FPGAs into servers and PCIe cards.
MikroElektronika
After the second world war Serbia was part of Yugoslavia and the region was a manufacturing hub for the entire Soviet bloc. In particular, a lot of electronic components (resistors, capacitors, etc.) were manufactured here. Those types of components may no longer be made here, but there is still a strong electronics manufacturing hub and a good example is MikroElektronika, a company built in the footprints of some of the old factories. The building and business are anything but old, and they have been so successful they are planning a second large building to increase their manufacturing capacity. Sophi Kravitz and I were greeted by the CEO, Nebojsa Matić in the picture at the top of this post.
MikroElektronika is well known for their mikroBUS click boards. These are standardized modules that host every sensor, display, input method, and communication scheme under the sun. Want a joystick? Yes. Bluetooth LE, ZigBee, WiFi, LoRa RF? All big yes. The image above shows the click boards that the customer support department had laid out for recent testing and this is far from all that are available.
MikroBUS is a standard for attaching peripherals which we’ve seen in many boards like the Microchip Curiosity. But of course MikroElektronika makes their own dev boards that use the form factor. Above is one of many development boards — this is for STM32 development but you name it an they probably have it — which includes a pair of mikroBUS slots in the upper right. The boards remind me of the 300-in-one electronics projects I did as a kid. Just add “embedded” to that title and we’re living in a brand new age.
Once we had a look at the finished product it was off to see how everything is made. They have two sets of lines to populate all of their boards. Currently they do not make their own printed circuit boards but are hoping to change that with the new building. Once they get the PCBs from their fabricator, everything else is done on site.
Above you can see one of the technicians preparing the solder paste machine to apply paste to boards. From there it’s into a huge and impressive pick-and-place machine. Just seeing the reels feeding the machine is beautiful. They have reflow ovens for the surface mount components, and in another room (not pictured) there is wave soldering. For me, the coolest machine in the place was the selective soldering machine. It has an upturned pipe underneath the board that has overflowing molten solder coming out of it. The board moves over this wand to solder through-hole components. Here is a random video of a selective soldering machine to give you an idea of what’s going on here.
Museums
I was excited to get to the Museum of Science and Technology along with Mike Harrison and Chris Gammel. They have a huge exhibit of computer technologies and we dove right into the analog computers.
This huge PACE computer is impressive to behold. You get a real sense of where we come from when taking a picture of it with the $200 smart phone that you carry around in your pocket. A big part of the programming is the patch board which harkens back to telephone operators patching calls between lines. There were a number of other analog computing devices on display as well, I enjoyed this handheld analog calculator which uses a stylus to set up the calculation.
I should have realized that this computer would be on display, but it was a happy shock to see the Galaksija computer. This was a build-it-yourself personal computer developed by Voja Antonić. In 1983 when personal computers were getting going in Silicon Valley, the chips being used were unavailable in Yugoslavia because of embargo. Voja figured out a way around all of those problems and about 8,000 kits were purchased to so that people for the first time could have their own computer. Of course we know Voja Antonić well, he has been writing amazing articles for Hackaday and designed the Hackaday | Belgrade badge. His conference talk on the hardware will be published soon.
Maxeler
Finally we visited the Belgrade office of Maxeler. They are a high-speed computing company who have created an FPGA-based platform that can be used as a power-house for certain types of algorithms. Offloading software loops to the highly-parallel hardware can bring huge speed increases.
The hardware comes in two form-factors. Shown on the left is a $5,000 PCIe card that you can load into a desktop computer. The company has been making these available to University programs to aid in research and get their platform out to programmers as they learn their craft. On the right is a 1U server blade which can be loaded with up to eight of the FPGA modules.
The hardware alone is one small part of the puzzle. The rest depends on customizing the software so it knows when to call in the big iron. Maxeler has a Java-like programming environment to help with this, and a large part of their business is customizing client code to work with the hardware. One of the main use cases for Maxeler is financial analysis.
This is far from all we did in Belgrade, and there is much we didn’t get to. The city, the people, and the history is amazing. You will feel welcomed and wanting to return.
I didn’t make it to the Tesla museum this time around, but hopefully there will be another opportunity. Nikola Tesla, the famous inventor and forward thinker is from Serbia. I’ll leave you with this image of 100 Serbian Dinar note that bears his image (and now adorns my office bulletin board). But what about that equation?
From wikipedia ( https://en.wikipedia.org/wiki/Weber_%28unit%29 ):
In physics, the weber /ˈveɪbər/[1] (symbol: Wb) is the SI unit of magnetic flux. A flux density of one Wb/m2 (one weber per square metre) is one tesla.
Nice. I think it’s awesome that there are equations on this currency.
I remember seeing that bill when I worked on Self Checkout Lanes. We had to test the ability to accept/dispense money of lanes we sent overseas with currency of the destination country.
Today’s exchange rate puts that bill at $0.92 USD
i’m from Belgrade! where is this place :-D THANKS!!!
https://goo.gl/maps/m83vRW4K6yn
Was the Museum of Science and Technology in the city? Dang it, we missed it! Guess I’ll have to come back! :D
BTW, we got to visit the Nikola Tesla museum the day after the conference, very small, but I loved the giant working tesla coil… And the working models of induction motors were very instructive.
(I’m still keeping an 100-dinar bill in my wallet, they’re great ^^ )
Pretty dang cool. Those rows of 10 turn pots with locks across the top of the PACE panel are for setting analog constants. Lots if constants. I think the patch panels, aside from connecting op-amp inputs to outputs also connects the pots in where you want them. Some for feedback values (just resistors) and some for voltage or current constants (sources).
That stuff is really hard to find in the US because so much was surplussed and who doesn’t want Beckman precision 10 turn pots with vernier and levers that lock them in place? Some even had 3 digit digital turn indicators. Everybody tore them down for cool parts. Tube op-amps I assume? If so, then +-50 to +-150 volt op-amps. Quite a dynamic range! Yummm. All those knobs!
I currently develop using MikroE products…
I freaking love them since they cater to PIC fanboys like me….finally some one did.
I particularly like their Clicker boards.
Awesome quality products, immense variety of sensors and modules to develop code, and best of all, great customer service.
I bought 2 boards that had bad ICs on them (as in “publicly” (read: hidden) known bad batch of ICs) and had them replaced ASAP…. it was awesome.
G.
MicroE PIC development boards are nice; IF you use Windows. If you want to use their boards with LINUX you need to use Wine for the compilers. It works fine; BUT PICFLASH (to actually write and read the program and display PIC contents) ONLY WORKS UNDER WINDOWS. There are customer messages since 2005 asking for LINUX support for at least PICFLASH under LINUX and vague responses from MicroE that “we are working on it”. Still no LINUX support. Caveat Emptor.
Ohhh..
I LOVE mikroelektronika!
They bridged the gap for me, from BASIC stamps, to PIC development.
Their development boards are FABULOUS, and designed by people who obviously use their own products.
Three cheers for MikroE. Their boards, compilers, code libraries, and documentation are second to none. I can bang out a complicated program for a PIC32 or STM32 chip way faster in their IDEs then anywhere else.
“After the second world war Serbia was part of Yugoslavia and the region was a manufacturing hub for the entire Soviet bloc.”
No, each and every country specialized in something: buses were made in Hungary, airplanes in Poland, record player and vinyl in Yugoslavia, etc. Try not to insult the Eastern Europeans here.
Nope, Yugo was never part of Eastern Block, no whatsoever “specialisation” after orders from Moscow here
And I think it wasn’t embargo on simple chips from US after all, I think Yugoslavia on stupid way tried to develop own microchip industry by restricting import, that didn’t worked anyway..
Unfortunately it was even worse. Yugoslavia had no microchip industry to begin with. Microchip industry in Yugoslavia never really took off full stack. The pinnacle of planar silicon technology were planar transistors. The chips you’ve seen in shops at that time were imported as dies, semi-automatically bonded and packaged in enclosures here and branded as domestic produce. The dies were also used in small series special (military) hybrid modules. Being the darling of the West, Yugoslav industry had access to any western high technology it needed, so there was no point in developing their own. On the other hand, at the same time Soviet bloc, which non-aligned Yugoslavs deemed technological “backwater”, had complete microelectronics industry in Russia, East Germany and Bulgaria.
The import restriction was a general one, put in place to discourage us little guys from buying too much imported, or import based goods of any kind if they were bought for hard (western) currency, in order to artificially float the national currency high and prevent inflation (spoiler: it didn’t work). If you are old enough, you may remember shortages of coffee or chocolate … But, we could often find reasonably good quality GDR knock-offs of western ICs in our shops, because our country had barter trade arrangement with eastern bloc, and also a surplus in the trade, so anything coming from East was cheap for us.
The only way to get components was to travel to Munich, I had to do it about 5-6 times a year. It’s simple – you take a BOM and drive 920 km, take a room at hotel Brunnenhof in Schillerstrasse, then in next two days you visit Buerklin, Radio Rim, Holzinger, Henninger, Lobtron, Conrad, and the fourth day you drive 920 km back. If you miss a single 74LS00, you’re busted.
Only once, for a few days, you could buy here in Belgrade a few Russian 74 series SSI ICs. They were not in black but brown plastic, and the IC type was the only marking – no date, manufacturer, prefix or suffix. The funny thing was the warning at the back of the cardboard package, printed in Russian language: It is STRICTLY FORBIDDEN (sic!) to use those ICs outside the specified temperature range, which was +18…20°C!
Of course they worked fine outside the range (I made the criminal act and broke the rule :)
You were lucky because you were able to travel outside. I lived in a fairly small city (50 000) and was too young to go outside. We had one small electronics store with limited selection. I have never seen the Soviet chips, but during the war I got one Soviet radio – it had really cute looking “flying saucer” transistors.
” If you are old enough, you may remember shortages of coffee or chocolate … ” – I remember clearly like it was yesterday, I think that situation was direct result from the pointless deal with IMF, artifical shortages, lines before shops, electricity reductions, petrol shortages, and these things went for 4-5 months before federal authorities figured out that deal was not smartest thing to do..
The intent of the shortage (rationing) was, as I remember, to decrease Yugoslav debt (stabilizacija) by tightening the belt. Coffee, cooking oil, etc. were rationed and we had coupons to limit hoarding. I remember standing in line to buy several hundred grams of coffee or cooking oil. They probably got their idea from Nicolae Caucescu, who managed to pay off the Romanian debt but in the process ruined the country.
True, having lived in that era I can attest to that fact. I read 1984 as an adult just months ago and was shocked at the similarities: either Ceausescu was inspired by Orwell or vice-versa. All the cool tech at that time (1980-1989) was a gray market import from Yugoslavia or (if lucky) Eastern Germany. The tide changed during the 1990s with the gas embargo on [former] Yugoslavia. Such needlessly cruel politics…
I’m sure that many people will not know these facts but there was a 5yr waiting line for a freezer (stockpiling meat) 3yr for color TV, 10-20yrs for a car. You only had once choice of a car and it would cost (adjusted) around 70k$. The variable time accounted for ‘disposable income’ that you had to give away to merchants, policemen, store clerks to be moved ahead in the line. Good times… not.
MikroE’s PIC compiler sucks … their customer support boils down to: “buy something else”. There are much better compilers out there … like CCS.
Care to provide a link so people can compare?
I’ll agree their IDE sucks; any IDE that can’t handle tabs deserves to die horribly (literally – hitting “TAB” never does the same thing twice and code just won’t stay indented).
However, I found the setup as a whole (dev board + IDE + libs) to be a very quick & painless way to get something up & running, if you can resist the urge to put your fist through the screen when the IDE fucks up the formatting of your nice neat code for the Nth time…