Fritzing 0.9.10 released

Fritzing 0.9.10 was released on Sunday, 22nd of May 2022. We tested it for Windows 10, Windows 11, macOS Monterey, macOS BigSur, macOS High Sierra, Ubuntu 18.04, Ubuntu 20.04, and Ubuntu 22.04.

Fritzing 0.9.10

Improvements

  • Add Japanese translation
  • Support image export in higher resolution
  • Update Bulgarian, Czech, French, German, Italian, Portuguese, Romanian, Russian, Slovenian, Slovak, Spanish, Turkish, Ukrainian, Vietnamese
  • Add a (hidden) beta version of a simulator

Simulation is one of the most requested features of Fritzing. For more than a decade, people have asked for Fritzing to simulate circuits.

There can be very different expectations about the scope of the simulation. The simulator is limited to the parts available in the simulation bin. If a part can not be simulated, it will be greyed out during the simulation.

The simulation was tested by several groups of students, and is now available as a beta feature. If you want to give it a try, you can enable it in Fritzings preferences.

Fixes

Fixed issues:

  • #3943
  • #3931
  • #3895
  • #3880
  • #3868 , #3820
  • #3863
  • #3850
  • #3830
  • #3825
  • #3738, #3602, #1869
  • #3715, #684
  • #3632, #3627, #3109
  • #3559
  • #2669, #1326
  • #2583, #2675

Parts

Modules Modules Voltage regulators

  • Several voltage regulators added
  • SeeedStudio Grove Beginner Kit
  • TDK Ultrasonic sensor module
  • Amica NodeMCU
  • About 90 parts received minor fixes

The release is available in our downloads section. We’d love to hear what you think! Write us via our contact form or check out our forum.

Thank you for using Fritzing!

We found some creator kits

The Fritzing Creator Kit is out of stock for a long time. But when we reorganized Fritzing last year, we found several of the original Fritzing Creator Kits deep in the basement underneath the old Kreuzberg office. The kits are complete, with a nice colored book, and either an Arduino Mega or the Arduino Ethernet. Kaya is selling them via eBay: Fritzing Creator Kit Mega and Fritzing Creator Kit Ethernet. If you recently paid for our download and build service, please ask her for a discount for the Creator Kit. Unfortunately, shipping is limited to the EU.


New parts: Sony's Spresense Boards

We added Sony’s Spresense modules for Fritzing. Altogether, there are four new parts: the mainboard, the Arduino extension, the LTE extension, and the camera. In this post, we will have a closer look at the Spresense board. We will deploy a Hello World and a Camera example application.

The Spresense parts

spresense_ili9341

The parts are included with recent versions of Fritzing. We highly recommend using Fritzing with a version >= 0.9.7 .
What are the Spresense modules? First, there is the main module: Sony’s CXD5602 microcontroller runs a Cortex-M4F CPU with 6 cores, GPS. The low power consumption makes it suitable for battery-dependent use cases. There is a great choice of libraries supported, including Python, TensorFlow, Edge Impulse, Java, JavaScript, and Circuit Python for low power consumption. Together with GPS, LTE, Wifi, BLE extensions, this makes them suitable for IoT and AI applications.

Then, there is the extension board. It adds Audio input for up to 8 channels, 3.5mm headphone output, an SD-Card slot, an extra USB connector, and the well-known Arduino shield headers.

The third module is the 5MP camera board. With 24mm x 25mm, it is very compact. It connects to the Spresense main module with a flat cable.

And then there is the CXD5602PWBLM1 board, the LTE extension. It adds LTE capabilities to the main module. Also, it has a 3.5mm headphone output, up to four digital microphone inputs, an extra USB connector, and general IO headers.

See the Spresense developer site for more details.

Getting started

For testing, we have set up Ubuntu 21.04 VM and prepared the Software Development Kit with the setup guide from Spresense.

If you are also using a VM, make sure that both, host and guest machine have the “dialout” group for your user account, so you can access the Spresense board when connected to USB. The board should be visible as “Silicon Labs CP210x” with lsusb when the board is connected. If all looks good, we should be able to connect with minicom.

fritzin[email protected]: ~

[email protected]: ~ $ lsusb
Bus 001 Device 027: ID 10c4:ea60 Silicon Labs CP210x UART Bridge
Bus 001 Device 002: ID 80ee:0021 VirtualBox USB Tablet
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
[email protected]: ~ $ minicom -D /dev/ttyUSB0 -b 115200

The connection with minicom will open a NuttShell on our Spresense board. No, this is not yet the ‘Hello World’ we are looking for.

[email protected]: ~

Welcome to minicom 2.8

OPTIONS: I18n
Port /dev/ttyUSB0, 23:39:12

Press CTRL-A Z for help on special keys


NuttShell (NSH) NuttX-10.1.0
nsh> echo "Hello World"
Hello World
nsh>

Hello World

Running Hello World on a console is a bit lame. How about using an actual LCD for that? For this, we use an ILI9341 from Adafruit (about $10). We connect it as shown in the Fritzing project below:

spresense_ili9341

To address the ILI9341 display, the Spresense board needs to know how it is connected. Add the following configuration to the Nuttx kernel, by storing it at ‘spresense/sdk/configs/devices/ili9341_on_spi5/defconfig’

# spresense/sdk/configs/devices/ili9341_on_spi5/defconfig
-NXFONTS_PACKEDMSFIRST=n
+LCD_ILI9340=y
+LCD_ILI9340_IFACE0=y
+LCD_ILI9340_IFACE0_RLANDSCAPE=y
+MMCSD_HAVE_WRITEPROTECT=n
+MQ_MAXMSGSIZE=64
+NX=y
+NXFONTS_DISABLE_16BPP=n
+NXFONT_SERIF22X29=y
+NX_BLOCKING=y
+NX_DISABLE_16BPP=n
+CXD56_DMAC_SPI5_TX=y
+CXD56_DMAC_SPI5_TX_CH=4
+CXD56_DMAC_SPI5_TX_MAXSIZE=1516
+CXD56_DMAC_SPI5_RX=y
+CXD56_DMAC_SPI5_RX_CH=5
+CXD56_DMAC_SPI5_RX_MAXSIZE=1516
+LCD_ON_MAIN_BOARD=y
+LCD_ILI9341=y
+LCD_ILI9341_NINTERFACES=1
+LCD_LCDDRV_SPIIF=y
# The display can run at much higher speeds. But signal quality on the breadboard and the wires can
# vary a lot, so we limit it to 2MHz. Still fast enough for our purpose at 320x200x16 
+LCD_LCDDRV_SPEED=2000000

With the config file in place, we can now build the kernel and flash the Spresense board. We configure it to build the nxhello example and our custom ili9341 setup. Then we run make. If all was successful, we flash the board. Using the default speed of 115600 did not work reliable, but with a higher speed of 460800 (or other high values), flashing works quite reliable. Don’t forget to source ~/spresenseenv/setup, as described in the Spresense getting started documentation.

[email protected]: ~

[email protected]: ~ $ source ~/spresenseenv/setup
[email protected]: ~ $ tools/config.py examples/nxhello device/lcd_ili9341_on_sp5 && make -j && tools/flash.sh -c /dev/ttyUSB0 -b 460800 nuttx.spk
make[1]: Entering directory '/home/kjell/spresense/nuttx'
make[2]: Entering directory '/home/kjell/spresense/nuttx'
Create .version
make[3]: Entering directory '/home/kjell/spresense/nuttx/boards'
make[3]: Leaving directory '/home/kjell/spresense/nuttx/boards'
make[3]: Entering directory '/home/kjell/spresense/sdk/apps'
make[4]: Entering directory '/home/kjell/spresense/sdk/apps/platform'
make[4]: Leaving directory '/home/kjell/spresense/sdk/apps/platform'
make[4]: Entering directory '/home/kjell/spresense/sdk/apps/builtin'
make[4]: Leaving directory '/home/kjell/spresense/sdk/apps/builtin'
make[3]: Leaving directory '/home/kjell/spresense/sdk/apps'
make[3]: Entering directory '/home/kjell/spresense/nuttx/graphics'
.
.
.
>>> Install files ...
install -b 460800
Install nuttx.spk
|0%-----------------------------50%------------------------------100%|
######################################################################

196432 bytes loaded.
Package validation is OK.
Saving package to "nuttx"
updater# sync
updater# Restarting the board ...
reboot


After the nuttx.spk file has been flashed to the Spresense board, connect to it via minicom again, and run ‘nxhello’.

Camera demo

In the previous section, we have wired up a display and verified it works. Now the fun part, just connect the camera. Instead of ‘nxdemo’, we now build the camera example.

tools/config.py examples/camera device/lcd_ili9341_on_sp5
make -j 
tools/flash.sh -c /dev/ttyUSB0 -b 460800 nuttx.spk

Connect to the board with minicom, and call ‘camera 0’. This will show images from the camera on our display. Even though we have reduced the video signal to 2MHz, we get quite a fluent update rate.

Since we are filming a 320x240 display, the video can not represent the capabilities of the camera. Here is a picture directly recorded with the board: Link to full size image

Other examples

There are many more example applications.

Zmodem

With the zmodem driver and minicom, it is easy to transfer files from the board to your PC.

GPS

Show your coordinates. The GPS demo needs a few minutes for the first fix. This is normal. To shorten the time, you need assisted GPS or you have to load ephemeral data. Maybe the GPS chip can already cache that data? We didn’t try.

TensorFlow

TensorFlow lite should allow some cool projects in connection with the camera. We didn’t get to try this one yet.

Do you have any ideas for the board? Have you already build any projects? We are looking forward to your comments in the forum.

References

Fritzing 0.9.9 released

Fritzing 0.9.9 was released on Sunday, 24th of September 2021. We tested it for Windows 10, Windows 11 (preview), macOS BigSur, macOS High Sierra, Ubuntu 18.04, Ubuntu 20.04, Ubuntu 21.04, Fedora 34.

Fritzing 0.9.9

Improvements

Fritzing can now remember uploads to our Fab. There will be a clickable symbol next to the file name in the “Recent files” list. Some keyboard shortcuts where added: Ctrl+F for search, and [, and ] for rotation.

Fixes

A regression for Power labels in the schematic view was fixed. Some old bugs when resizing strip- and perfboards have been fixed. Several of the core parts have have been fixed, including lots of SVG exports.

For details, see the Changelog for Fritzing 0.9.9

The release is available in our downloads section. We’d love to hear what you think! Write us via our contact form, check out our forum.

Thank you for using Fritzing!

Fritzing 0.9.8 released

We have released Fritzing 0.9.8 on Monday, 9th of August 2021. We tested it for Windows 10, Windows 11 (preview), macOS BigSur, macOS High Sierra, Ubuntu 18.04, Ubuntu 20.04, Ubuntu 21.04, Fedora 34.

Fritzing 0.9.8

Improvements

Since the 0.9.6 release, we were able to close ~250 issues in our fritzing-app repo.

  • Fixes a regression with generic ICs in Fritzing 0.9.7 #3859
  • Bump up Qt version for Linux builds, we now use 5.15.2 for all platforms
  • Build an AppImage We created an AppImage based on Ubuntu 18.04. Fritzing is now able to run on any system with glibc 2.27 or later.
  • Read single FZP files For parts developers, we added the ability to open an FZP file directly. Fritzing can then bundle the file into an FZPZ. This can ease the workflow for developers who use external editors to create parts.
  • Selection dropdowns are transparent #3848
  • stroke-width not inherited when exporting to Gerber #3843
  • Incorrectly configured fzp file crashes parts editor #3839
  • Invalid .FZP file causes a segfault #3838
  • Error when updating parts #3836
  • Platform, Board and Port menus are a barely readable white on grey on macOS #3833
  • Silkscreen path not appearing in Gerber output #3809
  • Arduino Nano Export SVG Missing #3782
  • GUI is blocked for up to 2 minutes until the check is complete #3677
  • Duplicating a net label in schematic view causes phantom ratsnest connections to appear. It cannot be deleted either. #3340
  • Net label copy bug? #2308
  • Interesting stuff happens when you paste formatted stuff into notes #711

New parts

  • Sony’s Spresense Boards and Camera

Updated translations

The following translations have received some care - German - French - Italian - Japanese - Portuguese - Russian - Spanish - Ukrainian

Thanks

Big thanks to everyone who helped to make this release possible. Namely Bruno Santos Ramalhete, Daniel Gun, Josh Morgenstern, Peter Van Epp, A. Faina !

The release is available in our downloads section.

PCBs at half the price

I am happy to announce a new tariff from our PCB manufacturer, AISLER. From now on, you get 3 Arduino-sized PCBs for 11.92€ instead of 23.84€. This also applies to higher volumes, for example, 12 boards for 30 Euros. How is this possible? With the new tariff, you give them 8 days to work on your order. If you are developing your prototype and prefer the fast iterations, of course, rapid two-day manufacturing is still available. You can choose while placing the order at aisler.net. See all the exact details at AISLER.


New Fritzing release 0.9.6

Hello everyone! Today you get your hands on version 0.9.6. We have tested it on macOS Catalina and Big Sur, Windows 10 64 bit, and Ubuntu 20.04!

Fritzing 0.9.6

Installers

Both Microsoft and Apple have raised the bar on how to execute some code on your computer. They check the developer’s ID and warn or simply reject any program with mysterious origins. This was no issue in the past, but as regulations became stricter, more and more users had to jump quite high to get Fritzing running. We got all the certificates required and packaged and signed Fritzing 0.9.6 for a smooth setup.

Fixes

This is a maintenance release. We have fixed at least ten crashes, several critical bugs, and about 30-100 regular bugs, depending on how you count. Approximately 300 issues have been closed since the last release 0.9.4.

Some of the fixes are:

  • Ground fill is connected only to the lower side #2186
  • The routing status algorithm needs to handle the part to part connections (LED in an Arduino for example). Fixes #2685
  • Export to PNG does not update until restart#3073
  • Fill image with the background before exporting, fixes #3261
  • crash when both, bus and subpart in the same part #3329
  • Override system color for notes. Fixes #3530
  • Gerber rendering moves and skips nodes in board outline #3537
  • Crash when editing connector highlight colors #3566
  • No ‘routing complete’ message when no wires used to connect parts #3579
  • Override system color for parts bin list #3600
  • Two parts connected via breadboard don’t route #3616
  • font-size px is the same as user coordinates and can be ignored #3619
  • design rules check not seeing all of the copper for specific part #3647
  • If the property is empty, take the default one. Fixes #3648
  • White note text #3657
  • Dashed line is gone in breadboard view after moving element #3683
  • Gerber export missing and moving some custom PCB cutouts #3686
  • A typo in german translation #3694
  • Finish pending move operation before deleting an item. Fixes issue #3697
  • Ignore breadboard and schema wires when setting PCB layer count #3699
  • Deselect all items before exporting an image to PNG or JPG. Fixes #3712
  • Export PNG without selection rectangles #3712
  • 2.2mF capacitor #3713
  • Fritzing 0.9.4 crashes on macOS Catalina 10.15.7 #3747
  • Export as image, toggled layers not honored #3771
  • Fix the number of allowed digits within the resistor regex
  • Fix bug that prevented trace width for autorouter to be remembered
  • Fix SVG path element parse and matching of extra graphics to PCB connector pad
  • Fix broken duplicated network calls
  • Fix nullptr dereference
  • Workaround: show a white icon instead of nullptr crash
  • Fix crash when SVG file was not found

Features

It is now possible to store multiple parts in one fzpz (Fritzing part package). This will make it more convenient to handle and share a group of parts. Older versions of Fritzing should show an error message and only load the first part in the file. So it will take a while until this feature becomes fully usable.

New parts

The majority of new parts have been created in the forum and can be found there. However, besides fixing issues with some parts, we also integrated a few to the core library.

  • Raspberry PI 4B
  • Kameleon STM32F board
  • Voltage regulators
  • Heltec Wifi Lora 32 V2
  • HiFive1
  • More predefined capacitors

Updated software stacks

We updated to a newer version of C++ and Qt5 libraries. On Mac, we use the 5.15.2 release of Qt; on Windows 5.12.10; on Ubuntu, we use the one that comes with Ubuntu 20.04. Increasing the C++ version to C++14 enabled some cleanups in the codebase, which will benefit Fritzing in the long term. This sounds like an internal thing, not important to users. But by bumping up to the latest libraries, we have fixed countless quirks and were able to discover and fix some severe bugs.

Updated translations

The following translations have received some care

  • German
  • Italian
  • Portuguese
  • Russian
  • Spanish
  • Ukrainian

What happened to 0.9.5?

We had a development build named 0.9.5d around for a while, although we never published an official release. To avoid mixups, we skip 0.9.5 and proceed with 0.9.6.

Big thanks to developers

Joshua Scoggins, H. Phil Duby, and A. Faina!

Head to the downloads section, and we hope you will enjoy using it!

Fritzing maintenance release 0.9.4

End of 2019, we crafted a maintenance release of Fritzing, version 0.9.4. There was no announcement on this blog, as things were quite in movement. So, as we add it, the following is old news. fritzing 0.9.4 release class=

Version 0.9.4 is a maintenance release. There are few new features, but we fixed some of the bugs.

Critical bug fix for autorouter

Fixed a memory corruption that would cause random crashes. Thanks to Filipp Mikoian for your help.

Color-coded wires
A new option was added to colorize wires according to their length automatically.
Transport Layer Security

Long overdue, Fritzing now uses transport layer security for all links. This will mostly affect the part updates, since parts are hosted at github, and they will not allow unsecured access for much longer. For some time, the Fritzing website continues to allow HTTP for older versions of the Fritzing application. This way, update checks, and the projects gallery will continue to work.

Fix a bug where Fritzing would potentially search the whole disk for parts

Depending on installation location, Fritzing might try to search many subfolders for its parts. Depending on the machine's speed and directory structure, this would take a long time, during which Fritzing would show "Application does not respond" or similar. The workaround was to wait about ten minutes until it finishes, as it only happens on the first start. This annoyed many users, our apologies, this behavior should be fixed now.

No 32 bit builds
We don't provide 32 bit builds of Fritzing anymore. It might still be possible to build for 32 bit.
Under the hood

We dropped Qt4 support

Continuous builds for Linux, MacOS, and Windows. This means faster release cycles in the future.

Use libgit 0.28.1

New/updated Translations
  • Russian thanks to Alexey Loginov
  • Indonesian, thanks to Rizqy H
  • Slovak, thanks to jose1711
  • Slovenian, thanks to Filip Stamcar
  • German
  • French
  • Bulgarian, thanks to Lyubomir Vasilev

Thanks to Chris Mayo, Peter Van Epp, Ben Williams, Michael Anderson, and Roman Vekshin. Thanks to the guys at Aisler.net, without whom this release would not have been possible.