- 1 Compatibility Pinguino vs. Arduino
Compatibility Pinguino vs. Arduino
Pinguino boards can be programmed using of a Python IDE, available as a FREE download.
Compatibilty has been tested and is almost 100%. However, some libraries are still under development by the Pinguino Dev. Team (Ethernet & Android ADK) and some others will not be supported due to a lack of time or a lack of interest (SoftwareSerial, Matrix & Sprite). You're welcome to provide these "unsupported" libraries to the community ;o)
Most of the libraries are enriched with specifics Pinguino instructions (for example, you can use Serial.printf with Serial library).
32-bit Pinguino programs are compiled with a C/C++ Compiler which is a GNU-Mips toolchain based on GCC 4.5.2, binutils 2.21 and Newlib 1.19.
8-bit Pinguino uses SDCC 2.9.0 compiler.
Supported Arduino Libraries Status
- ✔ EEPROM - reading and writing to "permanent" storage
- ✖ Ethernet - for connecting to the internet using the Arduino Ethernet Shield
- ✔ LiquidCrystal - for controlling liquid crystal displays (LCDs)
- ✔ SD - for reading and writing SD cards
- ✔ Servo - for controlling servo motors
- ✔ SPI - for communicating with devices using the Serial Peripheral Interface (SPI) Bus
- ✔ Stepper - for controlling stepper motors
- ✔ Wire - Two Wire Interface (TWI/I2C) for sending and receiving data over a net of devices or sensors.
Communication (networking and protocols)
- ✓ OneWire - control devices (from Dallas Semiconductor) that use the One Wire protocol.
- ✓ XBee - for communicating with XBees in API mode
- ✓ Debounce - for reading noisy digital inputs (e.g. from buttons)
- ✓ Improved LCD library fixes LCD initialization bugs in official Arduino LCD library
- ✓ GLCD - graphics routines for LCD based on the KS0108 or equivalent chipset.
Frequency Generation and Audio
- ✓ Tone - generate audio frequency square waves in the background on any microcontroller pin
Motors and PWM
- ✗ TLC5940 - 16 channel 12 bit PWM controller.
- ✓ DateTime - a library for keeping track of the current date and time in software.
- ✗ TextString aka String - handle strings
- ✗ PString - a lightweight class for printing to buffers
- ✗ Streaming - a method to simplify print statements
Pinguino Specific Libraries
- ✓ Interrupt - Simple interrupt manipulation library (OnEvent, OnTimer0, OnChange, ...)
- ✓ DS18B20 - specific one-wire temperature sensor library
- ✓ Zigbee - MRF24J40 wireless module
- ✗ Android ADK - Android Open Accessory library provides an implementation of an Android USB accessory that is based on the Pinguino open source electronics
- ✓ RTCC - Real Time Clock and Calendar library
- ✓ USB - Native USB hardware support with CDC (USB-Serial), host and OTG (On-The-Go) support
- ✓ PCF8574 - I2C I/O expander library
- ✓ LCDI2C - for controlling liquid crystal displays (LCDs) with I2C protocol
- ✓ List - High-level library to manipulate lists
Unsupported Arduino Standard and Contributed Libraries
- ✗ Firmata - for communicating with applications on the computer using a standard serial protocol.
- ✗ SoftwareSerial - for serial communication on any digital pins (Pinguino32 gives you up to 9 serial channels)
- ✗ NewSoftSerial - an improved version of the SoftwareSerial library (Pinguino32 gives you up to 9 serial channels)
- ✗ Matrix - Basic LED Matrix display manipulation library
- ✗ Sprite - Basic image sprite manipulation library for use in animations with an LED matrix
- ✗ Messenger - for processing text-based messages from the computer
- ✗ PS2Keyboard - read characters from a PS2 keyboard.
- ✗ Simple Message System - send messages between Arduino and the computer
- ✗ SSerial2Mobile - send text messages or emails using a cell phone (via AT commands over software serial)
- ✗ Webduino - extensible web server library (for use with the Arduino Ethernet Shield)
- ✗ X10 - Sending X10 signals over AC power lines
- ✗ SerialControl - Remote control other Arduinos over a serial connection
- ✗ Capacitive Sensing - turn two or more pins into capacitive sensors
- ✗ LedControl - for controlling LED matrices or seven-segment displays with a MAX7221 or MAX7219.
- ✗ LedControl - an alternative to the Matrix library for driving multiple LEDs with Maxim chips.
- ✗ LedDisplay - control of a HCMS-29xx scrolling LED display.
- ✗ Metro - help you time actions at regular intervals (supported in Interrupt library)
- ✗ MsTimer2 - uses the timer 2 interrupt to trigger an action every N milliseconds (supported in Interrupt library)