STAR Otto is embedding STM32 F469, delivering high performance graphic features, coming with TFT touch display, wireless link, MicroSD, USB OTG, camera and with audio connectivity.
The very first product of the STAR program (ST & Arduino) will be demonstrated at Maker Faire San Mateo, May 20-22.
In addition to the STAR Otto Mcu baseboard, the cooperation aims to deliver a range of Arduino shields expanding the functional possibilities. DSI-display, NFC reader, Sensor shields are in the plans. Several STM32 Nucleo boards and SW libraries have already been ported to the Arduino IDE.
At some point in time in our lives we have all created projects outside the scope of work and never got any credit for it. Here is your chance to show off your side projects and/or work projects where you programmed hardware boards like Arduino and Raspberry Pi using MATLAB and/or Simulink.
You could win up to $1000
This challenge is open to everyone over the age of 18 and community gets to vote for their favorite project.
Steps to enter the challenge –
For more details and the challenge rules please visit the homepage for this challenge.
If you've been on the internets lately, you might have noticed that our Raspberry Pi 3-powered retro gaming table has become... quite popular.
And that got me to thinking about all the other PIK3A table builds that you guys have put together, many of which are actually improvements on the first model (which, I admit, I built in something of a rush).
So I thought it'd be fun to bring them all together in one blog post, so we can marvel at the delights of advanced technology being put to such frivolous use, and the entertaining brutalisation of IKEA furniture.
If I've missed your table or you've only just put your project together, let me know and I'll add it to the virtual arcade below.
Kenneth Ulrich put together a great two player table, in much the same style as our PIK3A build, only with a full six buttons per player and a widescreen monito in place of the 4:3 display we used.
Also of note is how Kenny included an HDMI splitter so his table can provide a video output to a TV as well as using its built-in monitor, much like the PIK3A Retro Gaming Table Mk II.
Tim Yonker went super classy with his PIK3A table, going for a striking black and white minimalist design while bumping the number of buttons up to a Street-Fighter-II-friendly six.
The black electrical tape around the cut-out's edges to frame the monitor finish it off beautifully, which is something we didn't do with the original build, and I now regret. Tim's inspired quite a few other members to add this to their own tables, at least, so good work Tim.
Erik Bartmann kept it classic with a red table, but he went with a mega eight buttons (good for Neo Geo games)!
He also moved the coin and player start buttons to the side (a wise move for kids, who have leaned on the buttons of our table while playing) and he also added a bezel to the monitor and some bigger speakers underneath the table.
Top Member Mike Conners went green with his build, which looks awesome; I didn't even see a green Lack table in IKEA, so kudos on that alone!
He also swapped out the Arduino Leonardo interface board for the significantly smaller OSOYOO Micro ATmega, which still identifies itself as a keyboard to the Raspberry Pi 3, but comes in a little cheaper and is great when you're trying to save as much space as possible.
Edward Izard went with a classic black table (good for a less conspicuous living room installation) and with colour-matched joystick and buttons in blue, which looks very stylish.
He beefed up the number of control buttons on the edge of the table too, adding individual player one start, player two start, coin and exit.
Why have a player two start? Well, it's worth remembering that a lot of old arcade games, not least of them being Pac-Man and Space Invaders, support two player games by alternating between the two players. This was especially prevalent on cocktail cabs.
So one set of controls still serves two gamers, so long as you can start in two player mode, of course. Which Eddie's table can.
Bombo here was following the PIK3A thread from the start, and it was great to see him jump in and go for it.
The result is a beautiful white Lack PIK3A, with uniform blue buttons for an understated, highly stylish finish.
The monitor insert is nicely finished off with a black bezel, and he kept things simple by dispensing with the acrylic overlay. In my opinion, the acrylic sheet is more for protection than looks, so if the table is for personal use and you can be sure it's safe from coffee cups, it's certainly not essential.
Here's an interesting twist from James West. Instead of going with the IKEA Lack table, he's upcycled an old wooden unit he found in a charity shop.
The smaller screen has been mounted in portrait mode (perfect for games like Pac-Man and Karate Champ) and he's dropped a pre-built arcade control panel into the table top rather than using discreet buttons and joysticks. A great labour saving option.
The Pac-Man decals are a delicious topping on this tasty arcade cake too!
An excellent two player addition to the roster here, where Scott has gone with a larger LACK table and a widescreen monitor (which are actually a little easier to get hold of these days than the 4:3 display used in the original build).
The designs around the buttons add some real flair to the table top, and breaks up the expanse of clinical IKEA white beautifully.
Note that he's got the Amiga emulator up on the screen, and a bigger table like this leaves plenty of room for a keyboard and mouse should you feel inclined to play some old home computer games, as well as the arcade and console stuff.
In classic red, James has put together a supercharged version of the original PIK3A, with a good number of extra buttons included, and some very cool decal stickers on the acrylic sheet. Stylish!
Of note is his joystick mounting. Using the mounting holes in the joystick's plate is great in terms of strength, but they can irritate when they're under your hand. So he's astutely countersunk the screw holes so they're underneath the acrylic and don't get in the way when using the joystick, as such mountings often do. I think this is the first time we've seen a bat top joystick on a PIK3A, too.
Also, in case you're wondering, Moonwalker might come from rather dubious origins, but it's actually a really good -- and often overlooked -- game. So tip o' the hat to James for his great taste in pixels, too
Update: James has since added some red screw caps underneath the acrylic sheet, hiding the screw heads nicely!
Another excellent two player table here from Paul Cullender, who's opted for the larger LACK table, but stuck with the "SNES" four button layout.
Even though a larger monitor could be added here, what I like about this table is how it retains lots of space by still going with a 17" screen. This is still very much a useful living room table, while remaining an awesome retro gaming project!
Oh, and he's also provided some alternative code for interfacing the controls, as a few other members have, so thanks for the Paul!
Brand new element14 member Darren Gurney has shown off both his electronics and woodworking chops, with some excellent images of the whole process while building his black PIK3A table.
Of note is his hybrid-acrylic table top! It introduces some difficulty, drilling the joystick and button holes through both the table and the acrylic, so what Darren's done is only cover the monitor area with the clear sheeting, but stopping short of the buttons.
Works well, and takes quite a bit of effort out of the hardware side of the build. He's also gone external with the RPi, mounting it under the table in a case (which is what we also did with the PIK3A MkII, at the bottom of the page).
Here's what happens when someone with a few woodworking chops has a go!
Cliff has put together a beautiful table, and managed to squeeze two players with six buttons each onto a standard red LACK table!
Take note of the very neat finish around the monitor cut-out, and underneath he's broken out two USB ports, mounted on a single gang plate -- superb idea! And he's inverted the monitor to improve the viewing angle.
He's also added separate pause and exit buttons on the side of the table, making this a seriously high quality example of PIK3A excellence.
CD's red and black table has a great industrial motif to it, not least because of the "DANGER: High Voltage" sticker in the top corner!
A nice bezel around the monitor hides the table cutout nicely, and as you can see from the image she's experimenting with turning it into a two player cab with the addition of a USB SNES-style controller. Great work!
Speaking of the controller, those make an excellent encoder if you don't mind butchering them...
Alan's stark white table with beautifully contrasting all-black controls is a classic PIK3A example, with some very unique features.
First and foremost is the removable acrylic sheet on the table top. As with stainy's above, Alan's protective sheet stops short of the controls, so as just to protect the vulnerable screen. But he's holding it in place with strong magnets, making it secure, but easily removable!
Also check out the one and two player start buttons on the front edge, the external portable speaker underneath, and the additional controls on the side.
A very fine table, which will look even more amazing alongside the black table with white controls that he's working on next!
Pantelis has built a very fine example of the classic red, single player PIK3A table, with a couple of noticeable improvements.
Firstly, you can see there's no acrylic sheet on the table, which simplifies the construction and really boosts the table's minimalist design. But this is (I'm assuming) an important part of the construction process.
Having previously raised concerns about the integrity of the joystick mountings (quite understandably) he's glued a piece of 10mm plywood underneath the joystick location. The joystick is then screwed to this plywood from underneath, giving it a much stronger mount.
There's also a shutdown function built into the Raspberry Pi, and he's rotated the monitor for an improved viewing angle. Excellent work!
Now here's a table that captures the chaotic styling of the retro games world!
Gary's just finished a PIK3A table that makes use of a 21" widescreen monitor, rather than the usual 4:3 screens that most tables have included. He says that it took a bit of work to get it stable within the hollowed out tabletop, and in the end he made use of expanding builders foam to hold it in place. Top tip!
And, of course, he gave it a dazzling lick of retro paint by covering the tabletop in a loud, awesome, retro-styled self-adhesive vinyl! Oh, and the buttons are illuminated, too, so this beauty will look just as good in the dark!
|And just for the sake of completion -- not just to blow my own trumpet (not with my back) -- let's include the PIK3A Retro Gaming Table Mk II in the list, in the hope that it inspires you guys to keep on strapping joysticks and buttons to the Raspberry Pi 3!|
In one of my last posts I have shown how to drive a servo motor. Servo motors comes in two flavours: the standard servo motors can be set such that they reach a given position and maintain it; the continuous rotation servo can rotate continuously at a given speed.
DC motors are very similar to continuous rotation servo motors, in fact. With respect to the latter, DC motor technology is much simpler and, as a consequence, these motors are cheaper than servos. As suggested by their name, DC motors need just a DC voltage source to run, so there is no need to use any PWM pin. They just have two wires to be connected to a voltage source. The direction of rotation depend on how you connect the wires to the voltage source. Reversing the polarity of the power makes the motor run in the opposite direction. The speed of a DC motor depends on the applied voltage: the higher the voltage, the higher the speed. Motor specifications tell you in which voltage range it operates: below the minimum voltage the motor will probably do not move at all or they move with lot of difficulty; above the maximum voltage you seriously risk to damage it.
Some DC motor, as the one we used for our tests, comes with a gear embedded in their body: gears make the motors more powerful, but slower.
If, for any reason, you need to control the rotation of a DC motor using Arduino, in principle it would be enough to connect one of the motor leads to the GND pin and the other to any digital pin. Setting the pin to LOW the motor doesn't move. Setting the pin to HIGH the motor runs if 5V is in its range. Given the fact that the direction of rotation depends on the polarity of the voltage, inverting the wires makes the motor rotate in the opposite direction.
In some cases, however, this very simple schema cannot work: manifestly it does not work if 5V are not enough to run the motor; moreover, the maximum current that an Arduino pin can provide is 40 mA (but it is recommended to not exceed 20 mA) and it may not be sufficient to run the motor. In those cases you need an external power source. You cannot use Arduino as the power source, but you can use it as the driver of the motor, controlling an external power source used to feed the motor. Suppose, for example, that you need at least 9V to run your motor. You can use Arduino to realise a sort of switch that stays open until a given digital pin is set to HIGH. As soon as that pin flips from LOW to HIGH, the switch closes and the motor is connected to the power source.
Of course you can use a relays to this purpose, but we are going to illustrate the use of a transistor to obtain the same result. Understanding how to use transistors is always a good idea, even if you are not going to use them: knowledge is power!
Transistors can be thought as a sort of switches. In fact transistors may act both as amplifiers as well as switches, depending on how they are polarised. If you want to understand how transistors work in a non technical manner you can read my article published on 'The Physics Teacher' (Giovanni Organtini, "A flush toilet model for the transistor", Phys. Teach. 50, 221 (2012); http://dx.doi.org/10.1119/1.3694073). In order to understand this post you don't need to understand how transistor work: it is enough to know that they behave like a switch. The switch connects the transistor emitter with its collector and its operation is driven by its base. Consider the following circuit.
The Arduino board is used just to provide a digital signal on a given pin (pin 9 in the example). This pin is connected to a resistor (whose value is not very important: its purpose is just to limit the current flowing out of the pin) that, in turn, is connected to the base of a transistor. If no current flows to the transistor base, the transistor is said to be in interdiction and acts as an open switch between the emitter and the collector. In our schema the motor is connected to a 9V battery trough the transistor, but you can imagine the transistor being substituted by an open switch. The Arduino ground is in common with the 9V minus lead.
As soon as you make enough current flowing into the transistor base, the transistor goes in saturation and acts as a closed switch. In that case the transistor emitter (the lower lead with the arrow in the schema) appears to be short circuited with its collector (the top lead, connected to the motor). In this case the current can flow from the battery and feed the motor that starts running.
Below you can see a Fritzing model of the device where you can see that the base of the transistor is its central lead; the emitter is on the left, while the collector is on the right
Below you can see our actual setup.
In order to identify the collector, the base and the emitter of a transistor you must refer to its data sheet. There are common rules among producers, allowing you to identify the leads looking at the transistor shape (the one shown in the picture above is called TO-92). However, it is always a good idea to check the pinout on the specific transistor data sheet, because not all the manufacturers may use the same pinout for the same enclosure. The actual pinout, in fact, depends also on the transistor type.
There are two types of transistors: NPN and PNP. Transistors are made out of three semiconductor slices and semiconductors comes in two flavours: N-type and P-type semiconductors. In N-type semiconductors the current carriers are electrons, while in P-type semiconductors the current is due to holes (lack of electrons). In NPN transistors the base is made of a P-type semiconductor, while in PNP ones the base is an N-type semiconductor.
In the above example we showed how to use an NPN transistor. If you are going to use a PNP one, you should connect the collector to the positive lead of the battery and the emitter to the motor, while the second lead of the motor goes directly to ground.